ゆーたんのつぶやき

株式会社ノークリサーチにてIT関連のシニアアナリストとして活動しています。

Voltaに期待すること



新たに発表されたMicrosoftのVoltaですが、
開発段階での技術としてだけでなく、実行時
にも使える技術として発展していってくれる
ことを期待しています。
http://labs.live.com/volta/


現時点では開発段階でサーバー側へ配置する
部分を切り出し、そのためのコードベースを
生成してくれるというのが基本コンセプトに
なっています。


開発者がVisual Studio上でアプリを開発する際、
あたかもスタンドアロンのクライアントアプリを
開発する感覚でコーディングとテストが行えます。
その後、サーバー側に切り出す部分を宣言的記法
で指定することで、コードの切り出しをVoltaが
やってくれるというわけです。


ここで期待しているのは.NET Frameworkという共通
のランタイム環境がクライアント/サーバー両方に
ある状況を活用して、モジュールが動作する場所を
サーバーとクライアント間で動的に変えられないか
ということです。


例えば、メールの受信というのはMIMEの解析を伴う
それなりにリソースを消費する処理です。
現在はWebメールならサーバー側、メーラーアプリ
ならクライアント側というように処理を実行する
場所は固定されてしまっています。
ですが、もしモジュールを動的に配置することで
これをその場の状況に応じて変えられれば、全体
としてのリソース最適化が図れるはずです。
スペックの低いPCの場合は受信処理をサーバー側で
行い、そのままサーバー側メールボックスへ格納し、
スペックが高いPCはサーバーからSMTP転送を受けて
自分でメール受信処理をし、受信した結果を後で、
サーバー側へ同期(クライアント側にデータを残し
たくない場合はクライアント側データは削除する)
といった感じです。
さらに年末年始などの長期休み明けで処理がサーバーへ
集中するような時、一時的にクライアントに処理を委譲
できれば、ピーク時に合わせてサーバー投資をする必要
もなくなります。


仮想化技術などによってサーバー間で処理を平均化
する工夫(負荷の低いファイルサーバーに一時的に
メールサーバーの受信処理の一部をやらせるなど)
は既に行われていますが、Voltaはそれをc/s間にも
広げる可能性を持っているのではないかと感じます。