しばやん雑記

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

あなたの知らない Windows Azure Web サイトの世界

Windows Azure Web サイトについて書きたいんですが、タイトルが浮かばなかったのでまたまたホッテントリメーカーに頼みました。そろそろ飽きてきましたか、そうでしょうね。

とりあえず、俺的 Web サイト最新情報をお届けしておこうと思います。自分用メモともいう。

パワーアップした Kudu

Windows Azure Web サイトの診断あれこれ - しばやん雑記 でも紹介した Web サイトのビルドエンジンである Kudu ですが、ちょっと前にバージョンが上がって、REST API 周りの機能が少し増えていました。

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

前までは GitHub にある Kudu のドキュメント読みながら叩く必要がありましたけど、リンククリックするだけで JSON をダウンロードできます。

あと、コンソールも以下のように使いやすく、わかりやすくなりました。

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

使えるコマンドはよくわからないですが cp や cat などが使えるようになっていました。これを使って applicationHost.config を見ることも出来ました。

Web サイトと WebSocket

Kudu を使って applicationHost.config を調べていたところ、Web サイトではそもそも WebSocketModule が有効化されていませんでした。

ちなみにローカルの IIS Express ではちゃんと登録されています。

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

Web サイトはまだ ARR が 2.5 なので、3.0 にアップデートして WebSocket がリバースプロキシで使えるようになったタイミングで、モジュールも有効にされるのかもしれません。

オートスケールの履歴表示

以前にオートスケールを検証したときにはクラウドサービスでしか使えなかったのですが、Web サイトでもオートスケールの履歴が確認できるようになっていました。

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

これまでは管理サービスから操作ログを見るしかなかったので、このアップデートは非常に助かります。

セッションは Cache Service を使う

Web サイトはクラウドサービスと異なり、割と予期せぬタイミングで動作しているインスタンスが切り替わったりします。大抵の場合は Web サイト自体のアップデート時に切り替わるようですが、トラブルが発生したときには 6 時間で 3 回ほど切り替わったことがありました。

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

当然ながら、インスタンスが切り替わった場合は InProc なセッション情報やキャッシュなどが失われてしまうので、セッションを使う場合には外部のストレージを使いましょう。

今、一押しなのは新しく追加された Cache Service です。NuGet でセッションプロバイダ込みのパッケージが配布されているので、驚くほど簡単に使えます。インスタンスの切り替わり対策だけではなく、オートスケールにも対応できるのでおすすめです。