明日から役に立たない
Azure Web サイト使いこなしテクニック
しばやん
自己紹介
• しばやん (@shibayan)
• http://shiba-yan.hatenablog.jp/
• Microsoft MVP for ASP.NET/IIS
• Microsoft Azure Web サイト好き
このセッションの内容
• Azure Web サイトで良く分からないことをします。
• Kudu は一般的な教養として扱います。
– Site Extensions / XML Document Transform は有名ですよね。
• WAW...
Kudu
• Azure Web サイトの git デプロイエンジンのようなもの
• バックエンドを支える重要なサービス
• https://<sitename>.scm.azurewebsites.net/
• 環境確認、デバッグコンソール、...
Site Extensions
• Azure Web サイトの applicationHost.config を書き換
えるための機能
• 新しく仮想アプリケーションを追加したり、管理ポータ
ルから弄れない設定を変更
– IIS をほぼ自由に...
applicationHost.config
• Azure Web サイトで動いている IIS の設定を持ってい
るファイル
• 中身を見ると Azure Web サイトでどんな機能が使える
のか見れる
XML Document Transform
• Visual Studio での Web.config の変換に使われている
XML を書き換える仕様
• Web.Release.config / Web.Debug.config みたいな
...
Site Extensions Gallery
• NuGet ベースで Site Extensions をインストール出来る
仕組み
• 基本的にまだ David Ebbo 作のパッケージばかり
ARRAffinity, WAWebSiteSID
• Azure Web サイトのリリース当初は 2 種類のクッキー
が発行されていた
– ARRAffinity
– WAWebSiteSID
• ちょっと前に WAWebSiteSID が廃...
Perl on Azure Web Sites
• Strawberry Perl を Azure Web サイトに手動インストール
• CGI で動かす場合
– Web.config に CgiModule を利用する HTTP ハンドラーマ...
Java on Azure Web Sites
• Build 2014 で Tomcat / Jetty 対応が発表される
– JDK 1.7 が Azure Web サイトにインストールされている
• IIS に httpPlatformH...
httpPlatformHandler
• IIS の HTTP パイプラインを HTTP に変換するプロキシ
的な役割を果たす
• 居場所は
D:¥Windows¥System32¥inetsrv¥httpplatformhandle
r.d...
Ruby on Azure Web Sites
• CGI で動かす = 最高に遅い
• FastCGI で動かす = 最高に不安定な気がする
• httpPlatformHandler + thin で動かす = そこそこ安定、
そこそこ高速...
Upcoming SlideShare
Loading in …5
×

明日から役に立たない Azure Web サイト使いこなしテクニック

2,117 views

Published on

Published in: Technology

明日から役に立たない Azure Web サイト使いこなしテクニック

  1. 1. 明日から役に立たない Azure Web サイト使いこなしテクニック しばやん
  2. 2. 自己紹介 • しばやん (@shibayan) • http://shiba-yan.hatenablog.jp/ • Microsoft MVP for ASP.NET/IIS • Microsoft Azure Web サイト好き
  3. 3. このセッションの内容 • Azure Web サイトで良く分からないことをします。 • Kudu は一般的な教養として扱います。 – Site Extensions / XML Document Transform は有名ですよね。 • WAWebSiteSID は円環の理に導かれて、ARRAffinity だけ になった話。 • 今、Azure Web サイト界で激熱な httpPlatformHandler と か使います。 – Java は知らん
  4. 4. Kudu • Azure Web サイトの git デプロイエンジンのようなもの • バックエンドを支える重要なサービス • https://<sitename>.scm.azurewebsites.net/ • 環境確認、デバッグコンソール、プロセスエクスプロー ラ、ストリーミングログ
  5. 5. Site Extensions • Azure Web サイトの applicationHost.config を書き換 えるための機能 • 新しく仮想アプリケーションを追加したり、管理ポータ ルから弄れない設定を変更 – IIS をほぼ自由に弄れる。ただし machine.config はダメ
  6. 6. applicationHost.config • Azure Web サイトで動いている IIS の設定を持ってい るファイル • 中身を見ると Azure Web サイトでどんな機能が使える のか見れる
  7. 7. XML Document Transform • Visual Studio での Web.config の変換に使われている XML を書き換える仕様 • Web.Release.config / Web.Debug.config みたいな • applicationHost.config を書き換えるには applicationHost.xdt を用意する
  8. 8. Site Extensions Gallery • NuGet ベースで Site Extensions をインストール出来る 仕組み • 基本的にまだ David Ebbo 作のパッケージばかり
  9. 9. ARRAffinity, WAWebSiteSID • Azure Web サイトのリリース当初は 2 種類のクッキー が発行されていた – ARRAffinity – WAWebSiteSID • ちょっと前に WAWebSiteSID が廃止されて、 ARRAffinity だけに – 1 リクエストあたり 100 バイトぐらい削減 – ARRAffinity == WEBSITE_INSTANCE_ID
  10. 10. Perl on Azure Web Sites • Strawberry Perl を Azure Web サイトに手動インストール • CGI で動かす場合 – Web.config に CgiModule を利用する HTTP ハンドラーマッピン グを追加 • FastCGI で動かす場合 – Site Extensions を使って fastCgi 要素に perl.exe を追加 – 管理ポータルから HTTP ハンドラーマッピングを追加
  11. 11. Java on Azure Web Sites • Build 2014 で Tomcat / Jetty 対応が発表される – JDK 1.7 が Azure Web サイトにインストールされている • IIS に httpPlatformHandler モジュールを追加し、アプ リケーションサーバを動かす • httpPlatformHandler は FastCGI 的な挙動を示す気が する
  12. 12. httpPlatformHandler • IIS の HTTP パイプラインを HTTP に変換するプロキシ 的な役割を果たす • 居場所は D:¥Windows¥System32¥inetsrv¥httpplatformhandle r.dll • 32bit 版と 64bit 版の両方が用意されている
  13. 13. Ruby on Azure Web Sites • CGI で動かす = 最高に遅い • FastCGI で動かす = 最高に不安定な気がする • httpPlatformHandler + thin で動かす = そこそこ安定、 そこそこ高速 – Rack でサポートされている動かし方なので比較的安心 – Unicorn を使いたかったけど、Windows に対応していないの で thin

×