Glassfishを余裕で起動できるSaaSesのVPSにきめた

試用していたが、コストパフォーマンスに優れるSaaSesに決めた。金ケチって1GBにしたけど、2GBあれば文句なしだろうな。


どんなプランがあるかはここを参考。
http://www.saases.jp/


HDD容量はまったく問題なし。あほみたいに多いのでファイルのやり取りする画面作ってストレージ代わりに契約するのはありかもね。容量を気にせずアプリケーションサーバーとか入れまくれる。

とりあえずGlassfish V3いれてる。ほかにはApacheとかJDKとかPostgreSQLとかインストールしたが、どれも瞬時に終わったのでパフォーマンスもかなり良好と思われる。


通信速度はこんな感じ。共有鯖のわりにはわるくないかな?

Ping statistics for 163.*.*.*:
    Packets: Sent = 20, Received = 20, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 9ms, Maximum = 11ms, Average = 9ms

いや、今までにくらべたらめちゃくちゃいいんだけどさ。あほみたいにレスポンス悪いことが多いし。


利用は申し込んだらその日のうちにできるようになった。2,3日待つと思ってたけど、このへんは差があるんだろうね。


パフォーマンスをGoogle App Engineと比較してみる。まったく同じwarをそのまま利用している。Ajaxを利用した足し算サンプル。VPSのほうはApache + Glassfish V3で。GlassfishV3はJKコネクタ標準装備で、チェックボックスを入れるだけで有効(参考)なのでお勧め。

(そのうち消すと思います)


AppEngineは行って戻ってくるだけでものすごく遅いので、こんなに差が出る。静的ファイルは特別な場所におかれてるようで早いけど(だからすべて静的ファイルで処理しているColorBlockはさくさく動く。GAEでは静的なHTMLを配備、Ajaxで遅延でロードさせる仕組みにしないと体感速度は大きく劣る…と以前からこのblogにもかいたり主張してるけど、世の中あんまり思われてないみたい。もっともこの絶対的な通信の遅さはどうしようもないけど)。

国内に鯖があるってだけでかなり有利だし、やはりクラウドはレスポンスがかなり悪いというのもある。EC2は多少ましっぽいけど、やはり西海岸あたりでもかなり体感できるくらい遅い。国内にAWSの鯖がくれば一気に改善されて一人がちになるかもしれないけどね。


ホームへ戻ると画像の動的生成がうまくいっていないのは動的にBMPファイルを作成して(BITMAPINFOとか全部バイナリでJavaで作成してる)、それをPngにGAEの画像変換サービスを利用して変換しているため。自前の鯖ならJava2DとImageIO使えばよいため面倒なことはする必要はない。GAEの欠点は画像処理がフォーマット変換以外まともにできないことなのでこういう面倒なことをしているのだ。GAEでは画像で文字を表示するだけでもかなり大変。

つまり、ゲーム系とか一般のページ向けは絶望的とも。かといって企業向けでもないんだよなぁ。

GAEは開発そのものよりどういった層(アプリの種類とかユーザーとか)をターゲットとするかが一番難しいと思う。Ajax使いまくるとComet(リバースAjax)使うのが当たり前のようになってくるけどそれができないのもきついかな。ゲーム用途では必須の技術だし。


なんかVPSじゃなくてGAEの話になってる気がするーがやはり気のせいだろう。