クラウドの課金は高いのか?

結論から言うと「無償で提供するには、限りなく高いッ!!!」です。まぁ、大人の道楽として月の呑み代を2,3回分突っ込む気持ちでいればいいんでしょうけど。単純にショバ代を払っているだけだと、アレかなぁと。

敢えて「某ひと目 Azure」(伏字になってないw)では課金の話はハズしてあります。将来的にどうなるか分からないし、開発者としては課金よりも「どう使うのか」、「どこから手をつけたらいいのか」のところから入るほうがいいでしょうから、お金の話はオミットしたのですね。

で、原稿の執筆のために「MSDN サブスクリプション」で windows azure を利用していたのですが、いやぁ、これが結構高くつきます。

執筆の開始は、実は去年の4月頃なので「クラウドアプリケーションって cpu 時間による課金だから、あまり使われないサービスであれば、セッション料金などを含めても、ほぼ無料で使えるよね」と軽く思っていた次第です。それがですね、去年の9月の google app engine の料金改定、windows azure の課金開始にあたって、実際に請求がきてみると、cpu 時間ではなくて「コンピューティング時間」というものに変わっていました。
この「コンピューティング時間」というのは、何者かというと、いわゆる「アプリがデプロイ(配置)されている時間」を示します。前後、デプロイしている時間も含まれるのですが、細かい話は別として、「アプリケーションが置いてある時間」なのです。ということは、アプリをアップロードして、1ヶ月ほど放置すると、「1ヶ月」まるごとの課金が掛かってしまう訳ですね。時間単位だと、24時間x30日=680時間ほどかかります。なので、普通のレンタルホスティングサーバー(月額1,000円やら500円やらの格安サーバー)感覚で使うと、ひどく痛い目に遭います。

azure の場合、MSDN サブスクリプションを使うと「S プラン」というものが適用されるので、単位時間あたり約10円かかります。

デプロイ1つに対して x 24時間 x 30日 x 約10円 = 7,200円/月

程度かかるわけです(この他に転送などが多ければ、それも加算される)。

# ちょっと、補記 2012/01/30
# 実は、サブスクリプション版は、1500時間/月の無料分が付いている(月でリセットされる)ので
# 総計が、2プロセス x 24時間 x 30 日 = 1,440時間 の範囲であれば、無料になります。
# この 1500 時間を超えた分に 10円/時間 単位で課金されます。
運用時には XS プランという最低限のプランがあるのですが、これが単位時間あたり 3.5円です。

デプロイ1つに対して x 24時間 x 30日 x 約10円 = 2,520円/月

まぁ、払えない金額ではないのですが「デプロイ1つにつき」というのが曲者で、azure の場合、ステージング環境という試験環境と、運用環境の2つを使うことが通例ですから、開発時にはこの倍ば掛かるんですね。ちょっと、個人では出しにくい金額です。

デプロイしている時間を減らそうと思って、追加削除を繰り返せばよいのかというとそうでもなくて、azure の場合、1時間単位等で課金がされるので、ちょっとテストのつもりで5分間デプロイしただけでも、あっという間に課金されてしまいます…といいますか、開発中にいちいちデプロイを削除するのは面倒なので、1か月間放置ということが多いですよね。そうなると、まるごと1か月ほど課金されてしまうわけです。

windows azure が「意外と高い」ことが分かりましたが、じゃあ、google app engine が安いのかというとそうではなくて、google の場合は、0.08$/h という課金がかかります。これが1分単位で計算されるわけですが、上記の通り開発時にはデプロイしたままが普通なので、同じように1ヶ月まるごと課金がかかるわけです。(ただし、放置していてほとんどアクセスがない場合は、課金はされない模様なんだけど、その差がよくわからず)

デプロイ1つに対して x 24時間 x 30日 x 0.08ドル = 4,600円/月 (1$ = 80円換算)

これにアプリ料金(だっけ)が900円ほどかかるので、azure と比べても決して安いわけではありません。

▼参照先

6 か月プラン (Windows Azure) – Windows Azure
https://www.windowsazure.com/ja-jp/offers/ms-azr-0019p

App Engine の料金体系変更に関する FAQ – Google Japan Developer Relations Blog
http://googledevjp.blogspot.com/2011/07/app-engine-faq.html

■じゃあ、何に使えばよいのか?

なので個人で web サービスを開始するのであれば、レンタルサーバーで十分です。レンタルサーバーの場合、言語が限られている(php, python, ruby)のですが、mysql がそのまま使えたりします。
ただし、ある程度スケールアップをしたい場合には、クラウド環境に移行したいですよね。自作サーバーを家で運用するのもいいのでしょうが、終日動いているのは電気代もかかるし、家族持ちには辛いものです。独身だと、まぁ、暖房替わりになるけど。

あと、月額4,000円ぐらい出せば、仮想専用サーバーが借りられので、クラウドのセッション数の課金などを気にせずに使えます。まぁ、環境が linux が多いとは思いますが、確か windows server もあったはずです。

なので、最低のランニングコストが、1万円/月を超えるような場合は、クラウド環境を利用したほうがお得という感じですかね。実は、このランニングコストには、人件費である SE 費用も入るんですよね。「某ひと目」に書きましたが、クラウドを使う利点として、

  • サーバー機の故障などのメンテナンスがフリーである。
  • サーバー機の電気代が料金に含まれている。

ということになります。レンタルサーバーの場合にも電気代、メンテナンス代が入っているので、小さい場合にはいいのですが、社内サーバーと比較すると月額1万円というの人件費からすれば結構格安でしょう。社内サーバーのメンテをしていて、保守料金数万円を支払っているならば、クラウドに移行するのもアリだと思います。

ただし、安く上がるための条件がいくつかあって、

  • デプロイするアプリケーション数が、開発時に減らせること。
  • アプリケーションのセッション数、転送量が減らせること。
  • 大きすぎる静的なストレージを持たないこと。

などがあります。課金をまじめに考えて(請求書を見て、えッ???と思ったので)みると、結構クラウド開発をするときには、設計時のノウハウが必要な気がします。漠然と、インスタンスを沢山作ってしまうと、cpu 課金ではないので、ランニングコストが莫大になってしまうので、注意しないといけません。

ええ、クラウドアプリを提供する側としては、そういう姿勢で良いかと。下手な設計をすると、課金が莫大になるという点で、ちょっと経済性に踏み込む必要があります。

カテゴリー: Azure パーマリンク

クラウドの課金は高いのか? への1件のコメント

  1. masuda のコメント:

    asp.net を使いたい場合は、ExpressWeb http://www.epw.jp/ が手始めにいいと思います。実は、一応借りていたりして(放置していますが)。年間1万円ぐらいならば、予備として放置しておいてもいいかなぁと思っています。初期費用だけ払っておいて、1年間実験的に運用(自分として)するという形ですね。1年経って使わないようであれば、そのまま解約してしまいます。サーバー構築の労力を電気代を考えると「学習用」にはいいかも、と。ストレスも軽減されるしね。

コメントは停止中です。