【レポート】

もう知ってるよね? "Grizzly" - NIOベースのサーバフレームワーク

 

Grizzlyはスケーラブルなアプリケーションを構築するためにJava New I/O APIを活用して開発されたサーバフレームワーク。COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0のもとオープンソースソフトウェアとして公開されており、GlassFish 2におけるHTTPコネクタとして活用されている。

New I/O APIが導入される以前のJava APIを使う場合、スケーラブルなサーバアプリケーションを開発するにはコネクションをスレッドに渡し、どのようにスレッドを管理するかに焦点が当てられた。Javaが従来から提供している入出力APIは基本的に同期APIであるため、入出力を実施するとその時点でブロックが発生する。スケーラブルに動作させるには処理をスレッドに割り振り、ブロックされている間、別のスレッドに処理を回すことで効率を上げる必要がある。

Javaに新しく導入されたNew I/O APIは入出力の非同期処理を実現できるもので、1つのスレッドで複数のコネクションをさばくことができるという特徴がある。従来からC言語で使われてきたselect(2)/poll(2)や、近年登場したkqueue(2)/kevent(2)のようなプログラミングをJavaでも実施できるようになったようなものだ。

Grizzlyは、この新しく導入されたNew I/O APIのアドバンテージを活用するべく設計されたフレームワークで、もともとはProject GlassFishの傘下で開発が実施されてきたもの。現在では独立したプロジェクトとして活動が進められており、New I/O APIを活用したスケーラブルでロバストなサーバを開発するためのフレームワークという位置づけにある。最近ではJettyが最新版のJelly 6.1.0でGrizzlyを使ったコネクション実装を追加している。

Gizzlyのまとまった資料はGrizzlyプロジェクトのサイトから取得できるほか、主要開発者のJean-Francois Arcand氏のブログにおいて散文的ながらも有用な情報がまとまっている。New I/O APIを直接使ったプログラミングにはそれなりに経験が必要になるが、Grizzlyのようなフレームワークを活用することで開発効率を高めることができるだろう。まだGrizzlyの存在を知らなかったデベロッパは、これを機に一度調査してみるといいだろう。



転職ノウハウ

あなたが本領発揮できる仕事を診断
あなたの仕事適性診断

シゴト性格・弱点が20の質問でサクッと分かる!

「仕事辞めたい……」その理由は?
「仕事辞めたい……」その理由は?

71%の人が仕事を辞めたいと思った経験あり。その理由と対処法は?

3年後の年収どうなる? 年収予報
3年後の年収どうなる? 年収予報

今の年収は適正? 3年後は? あなたの年収をデータに基づき予報します。

激務な職場を辞めたいが、美女が邪魔して辞められない
激務な職場を辞めたいが、美女が邪魔して辞められない

美人上司と可愛い過ぎる後輩に挟まれるエンジニアの悩み

人気記事

一覧

イチオシ記事

新着記事

デリヘル題材にした「フルーツ宅配便」1巻、女性たちが抱える問題描く
[22:45 7/29] ホビー
かっぴーの初単行本「SNSポリス」「おしゃ家ソムリエ」が2作同時発売
[22:37 7/29] ホビー
[篠原信一]実は冷え性 椿鬼奴と話題の「酢ショウガ」生活に挑戦
[22:36 7/29] エンタメ
マガポケ1周年で、マンガ16冊無料公開や「いいカラダ」投票など企画満載
[22:33 7/29] ホビー
TVアニメ『食戟のソーマ 弐ノ皿』、第5話のあらすじ&先行場面カットを公開
[22:30 7/29] ホビー

求人情報