修羅の街で Windows Azure Web サイトについて語りつくしてみる
-
Upload
tatsuro-shibamura -
Category
Technology
-
view
2.508 -
download
1
description
Transcript of 修羅の街で Windows Azure Web サイトについて語りつくしてみる
修羅の街で Windows AzureWeb サイトについて語りつくしてみる
Japan Windows Azure User Group
しばやん
自己紹介
• しばやん (@shibayan)
• http://shiba-yan.hatenablog.jp/
• Microsoft MVP for ASP.NET/IIS
• いつの間にか JAZUG コアメンバーに
2
本日のアジェンダ
• 日本データセンターが稼働してめでたいので語ります
• 質問はその都度聞いて頂いても d( ^ω゚ )オッケー!!
– エバンジェリストの方も多いので無茶振りをしたい
• それではよろしくお願いいたします
3
Windows Azure Web サイトとは
Japan Windows Azure User Group
しばやん
多分わかりやすい説明
• 簡単に Web サイトを作成して公開出来るサービス
• でも、クラウドらしくスケーラブルかつ盤石
– スケールアップ、スケールアウトも簡単
• 独自ドメイン、SSL、FTP とか普通に使えます
5
Windows ユーザー向けの説明
• Visual Studio からサイトの作成、削除、デプロイなど一通りの操作が出来る
• WebMatrix を使っても同じことが出来る
– サイトの作成、デプロイ、エディタで PHP のサポート!
6
Mac / Linux ユーザー向けの説明
• FTP を使ったファイルのアップロード
– SFTP にも対応
• Git / Dropbox を使ったデプロイ
– GitHub や CodePlex からのデプロイも出来る
• Visual Studio Online “Monaco” を使ったブラウザベースでの操作
7
アプリケーションの動作環境
• ASP.NET / PHP / Python / Node.js アプリケーションの実行環境
• 各種 OSS アプリケーションに標準対応
– WordPress (日本語版) / EC-CUBE
– MediaWiki / Drupal などまだまだたくさん
8
まとめ
• Web サイトは Windows でも、Mac でも使える
• ブラウザベースの Visual Studio Online “Monaco” に大期待したい
• OSS のアプリケーションは数クリックで構築できる
9
Windows Azure Web サイトのウソ&ホント
Japan Windows Azure User Group
しばやん
セッションのゴール
• 正しい Web サイトの知識を身につける
• 「あ、これ Web サイトでも可能な要件だ!」
• みんな幸せ
11
1. Web サイトは遅い?
• 思われているほど遅くない。むしろ速い!!
– 東日本だとレイテンシは 10ms ちょい
• 遅いと思われている原因
– LB と Web サーバ間にあるリバースプロキシの存在
– 日本に DC が無かった
12
2. 仕事では使えない?
• 何となく趣味やサンプルで使う用という空気を感じる…
• 仕事で使ってます!しかも超便利
1. 月間 100 万 PV・ASP.NET MVC・SQL DB なサービス
• S インスタンス 1 つで余裕で裁いてます
2. Facebook キャンペーンアプリ・1 か月だけ利用
• 独自ドメイン、SSL の環境を数分で準備
13
3. Web サイトは高い?
• クラウドサービスに比べると確かにちょっと高い
– 参考:Web サイト ¥7,588 / クラウドサービス ¥5,891
• そのかわり、クラウドサービスにはない機能がたくさん
– 独自ドメインのサポート、IP / SNI SSL、git デプロイなど
• 使い分けは重要
– Web サイトは 10 インスタンスまでしか増やせない
14
4. C# / ASP.NET しか動かない?
• ASP.NET/IIS の MVP 的には ASP.NET を推したい
– 結構よくできているフレームワークなんですよ…
• Microsoft 的には PHP / Python / Node.js 何でもいい
– ASP.NET さえも別に優遇していない感が漂う…
– 急に使えなくなるということはまずない
15
5. Microsoft は悪の帝国?
• 昔はそんなイメージでしたね
• 最近はオープン、かなりオープン
• Microsoft Open Technologies がかなり頑張ってる
– https://msopentech.com/
16
まとめ
• 日本データセンター稼働で Web サイトのレイテンシも3 倍以上の改善
• 信頼性は高く、実際のアプリケーション開発に必要な機能が予め揃っている
• しかし、機能が豊富なのでクラウドサービスよりはちょっとお高い
17
Windows Azure Web サイトのバックエンドを少しだけ
Japan Windows Azure User Group
しばやん
セッションのゴール
• Web サイトをさらに活用するためにバックエンドで動作しているサービスを知る
• 開発時やエラーログ解析でも役立つ
19
Kudu - 自称 git デプロイエンジン
• Web サイトのバックエンドで動いている git デプロイエンジンだったもの
– もはや git デプロイ以外の機能を持ちすぎである
• 割と便利な機能
– Debug Console (コマンドプロンプト的な)
– Site Extensions
20
Debug Console を使う
• 一般的な UNIX コマンドが使える
– ls / cp / rm / mv / less など他にもたくさん
• 何故か入っている bash
– シェルスクリプトを動かすことも出来る(何故
• unzip コマンドで高速アップロード&展開
– アップロードはファイルリストにドラッグドロップで可能
21
PowerShell も使える
• 最新の Kudu では Direct PowerShell に対応
– 直接 PowerShell が起動している感じ
• コマンドレットで多少の操作は出来る
– ただしシステムの設定を書き換える動作は不可
22
デモ
• Kudu へのログイン
• 環境情報の確認
• cmd / PowerShell を使った操作
23
Windows Azure Web サイトでRuby on Rails に挑戦
Japan Windows Azure User Group
しばやん
セッションのゴール
• クラウドサービスにも負けていない Web サイト
• 「あ、これ仕事では無理だけど面白いかも」
• 私が幸せ(割と自己満足)
25
Windows 上の Ruby
• RubyInstaller for Windows を使う
– http://rubyinstaller.org/
• Rails は FastCGI + Rack で動かす
– dispatch.fcgi を経由して実行
26
IIS と fcgi.rb の互換性
• fcgi.rb は Unix domain socket にしか対応していない
– Windows では当然ながら使えないのでエラーになる
• 少し修正して標準入出力を使うようにする
– ソケットに切り替えても動くかもしれない(IIS はデフォルトが標準入出力なので変更がめんどくさい)
27
動作デモと問題点
• FastCGI プロセスが立ち上がるまでに時間がかかる
– 設定次第ではもう少し改善するのかもしれない
– IIS の ApplicationInitialization モジュールでプリロード?
• Windows 上の RubyInstaller は更新が遅い
– 最新バージョンは Ruby 2.0.0
– パフォーマンスと互換性的にちょっと心配
28
まとめ
• Windows Web サイト上でも Ruby は動く
– ただし Windows へのサポートは割と甘い部分が多い
• FastCGI は Ruby 以外の言語を動かす場合にも有用
– Strawberry Perl で Movable Type 6 を FastCGI
• Web サイトが標準対応する可能性もあるかも?
29
Windows Azure Web サイトの真実
Japan Windows Azure User Group
しばやん
みんなが楽しめるのが Web サイト
• 初めての方にはギャラリーから簡単にインストール♪
• ちょっと慣れてきた方には FTP で自由に
• プログラマーは git / TFS や Visual Studio から
• 上級者はコマンドでガリガリ
31
クラウドを身近にする Web サイト
• プラットフォームのことを考えなくても良い
– 最新のセキュリティパッチなどは自動的に適用される
• レンタルサーバよりも素早く、手軽に使える
– 無料でも使えるし、共有なら月 1000 円以下
• 大規模な Web サービスにも適用可能
– ハイパフォーマンス、エラスティック、オープン
32