しばやん雑記

ASP.NET とメイドさんが大好きなフリーランスのプログラマーのブログ

HttpPlatformHandler が IIS 8 以降の拡張機能として正式にリリースされていました

IIS Express についてフラフラと IIS 公式サイトを調べていたら、HttpPlatformHandler がダウンロード可能になっていることに気が付きました。

f:id:shiba-yan:20150128160315p:plain

HttpPlatformHandler v1.0 : The Official Microsoft IIS Site

HttpPlatformHandler については httpPlatformHandler をもっと面白く使っていきたい - しばやん雑記 を参照してもらえると理解しやすいかと。

Azure Websites での Java 対応の要として使われている HttpPlatformHandler なので、これからは Websites 以外からでも Java のアプリケーションを簡単に動かせるようになりそうです。

既に設定リファレンスも公開されているので、Websites 用のリファレンスとしても便利に使えます。

HttpPlatformHandler Configuration Reference : The Official Microsoft IIS Site

リファレンスを見た感じだと、単純に Websites にインストールされているバージョンを公開したわけではなさそうです。新機能もしっかりと追加されていました。

processesPerApplication
Optional integer attribute. Specifies the number of instances of the process specified in the processPath setting that can be spun up per application. Maximum is 100. The default value is 1.

ついにアプリケーションプロセスを指定した数だけ、予め立ち上げておくことが出来るようになりました。

これまでは常にシングルプロセスでの動作だったので、スケーラビリティやプロセス再起動時のパフォーマンスが心配でしたが、これで良い感じにリクエストを振り分けてくれるようになりました。

1.Process management of http listeners - this could be any process that can listen on a port for http requests. For example - Tomcat, Jetty, Node.exe, Ruby etc;

HttpPlatformHandler Configuration Reference : The Official Microsoft IIS Site

これからは全ての IIS 8+ で Tomcat / Jetty / Node.js (iisnode 不要) / Ruby を動かし放題というわけです。

おまけ的に Websites にインストールされている dll と IIS 公式サイトで公開された dll について違いを調べておきました。両方とも x64 版を拾ってきました。

Azure Websites インストール済みバージョン

f:id:shiba-yan:20150128155037p:plain

IIS 公式サイトで公開されたバージョン

f:id:shiba-yan:20150128155049p:plain

Websites にインストールされているバージョンは 7.1.1917.0 になってますが、今回リリースされたバージョンは 7.1.1946.0 と新しいものになっています。そしてデジタル署名が付けられているので、プロダクションリリースっぽい感じになってます。

恐らく近日中には Websites にも新しいバージョンがインストールされるのではないかと思っています。