Grizzly/GlassFish Comet はスケールする?
今、Grizzly のメーリングリストでおそらく皆様が
もつ疑問について問い合わせされている人がいます。
概要を説明すると、Grizzly は 本番環境で耐えうるだけの Comet の接続を受け付け
レスポンスを返すことができるか?ということについてです。
これについて、開発者の Jean Francois は作成するアプリケーション
(long poll/streaming)によって違うが、ユニットテストを行った際には、
ちゃんとスケールしているとのことでした。
実際に、社内の IM で大量のユーザが利用しています。
ベンチマークで使用したユニットテスト:
https://grizzly.dev.java.net/nonav/xref-test/com/sun/grizzly/comet/CometUnitTest.html
また、今年の JavaOne で彼は、Grizzly のベンチマークに関連した
セッションを発表するようです。
(今年は是非行きたかったのですが、このご時世なので行けません。(T_T))
また、Jetty と比べても Grizzly(GlassFish) の方がスケールするようです。
(彼は Jetty も好きなようですが)
実際、Jetty のサスペンドの部分に若干問題がるようで、Jetty はスケールできないようです。
(例外が出力され、サーブレットが2度呼び出しされる)
また、Grizzly の場合、Comet の実装コードは CometContext.notify() と
NotificationHandler に実装すれば良いだけなので、開発者の皆様は、
Jetty で実装するよりも格段にかんたんに実装できるようになるとのことでした。
大規模環境で、GlassFish/Grizzly の Comet を検討されている方は今年のJavaOneの
Jean-Francois のプレゼンを楽しみにしていてください。
Entry filed under: Application Server/GlassFish. Tags: Comet, GlassFish, Grizzly.