米Microsoftは米国時間6月3日,開催中の「TechEd 2008 Developers」で分散メモリー・キャッシュ技術「Velocity(開発コード名)」を公開した。複数のサーバー(ノード)にまたがるアプリケーション用のキャッシュ・メモリーを構成する技術で,分散アプリケーションのパフォーマンス向上などが期待できる。

 Microsoftでは,Velocityが構成するキャッシュ・メモリーを「Unified Cache View」と呼ぶ。ノードやユーザーからは,複数のノードにまたがって構成された巨大なキャッシュ・メモリーとして扱えるためだ。MicrosoftのDeveloper Tools Marketing担当DirectorであるDave Mendlen氏は「Velocityは,様々なシナリオに対応したキャッシュ・メモリーだ。例えば,商品カタログ情報のような,同時に大量の読み出しが発生するデータのキャッシュに向いているだけでなく,ショッピング・カートのデータのような読み出し・書き込みが発生するトランザクション・データのキャッシュ,在庫情報のような読み出しも書き込みも同時に大量に発生するデータのキャッシュにも向いている」と強調する。

 Velocityのキャッシュは,各ノードに対して自動的に転送されたり,各ノード間で複製されたりする。Velocity自身がロード・バランシング機能を備えているので,サーバー・クラスタの拡張なども容易であるとしている。また,複数のノードにアプリケーション・データがコピーされることから,一部のノードがクラッシュした場合でも処理が継続して行われるため,高可用性が実現する。

 Velocityは,ASP.NETアプリケーションや,Windows標準のWebサーバーIISで利用できる。キャッシュAPI(アプリケーション・プログラミング・インターフェース)は,C#などの.NET Framework用の言語だけでなく,C++やPHPなどでも利用できる。

 Webアプリケーションで使われている分散メモリー・キャッシュ技術としては,オープンソースの「memcached」が広く知られている。digg(関連記事:創立メンバーが語る人気ソーシャル・ニュース・サイト「Digg」の裏側,)やmixi(関連記事:ミクシィのCTOが語る「mixiはいかにして増え続けるトラフィックに対処してきたか」)もmemcachedのユーザーだ。MicrosoftのMendlen氏は記者の「Velocityはmemcachedのようなものか?」という質問に対して「イエス」と明言。「われわれのソリューションは,エンタープライズ・アプリケーションにも適用できるパフォーマンスを有している」(Mendlen氏)とアピールした。

 Velocity(関連情報:MSDNにあるVelocityの情報サイト)では,Velocityの評価版(Community Technology Preview 1)が公開されている。利用するには.NET Framework 3.5が必要で,Windows Server 2003/2008,Windows XP/Vistaで動作する。正式版のリリースに関しては,明らかにしていない。