これまで Southeast Asia が日本から一番近いリージョンでしたが、ついに Japan East に App Service on Linux がデプロイされたので、レイテンシを気にせず使えるようになりました。
今までは Japan East / West は割と後回しでしたが、今回は早期にデプロイされました。
You can now deploy your Apps to the Japan East 🇯🇵 region in #AzureAppService Web App on #Linux. pic.twitter.com/jxgvDxXwwW
— Ahmed Elnably (@elnably) 2017年7月10日
それほど需要が多いと見込まれているらしいので、次の仕事では使っていきたいと思っていますが、まずは Southeast Asia と比較する形でパフォーマンス周りの確認をしたいですね。
ざっくりと確認する
今朝までは作成時にエラーになっていましたが、今は修正されています。帝国兵殿に感謝。
新しく作成された stamp ということで、新しめのインスタンスで stamp が作成されていました。
Windows の App Service は AMD Opteron な stamp を引くこともありますが、Linux だと Intel っぽいです。
とりあえず Japan East と Southeast Asia に S2 の App Service Plan を作成して、その上に同じ Docker Image をデプロイしたものを用意しました。ちなみに ASP.NET Core です。
それぞれに対して wrk でトラフィックを流し込んでレイテンシを確認してみました。
Japan East S2 の場合
Running 10s test @ http://docker-test-1.azurewebsites.net/ 2 threads and 10 connections Thread Stats Avg Stdev Max +/- Stdev Latency 28.28ms 12.03ms 130.25ms 74.04% Req/Sec 178.90 28.92 260.00 69.00% Latency Distribution 50% 26.82ms 75% 34.07ms 90% 43.17ms 99% 66.47ms 3570 requests in 10.01s, 31.06MB read Requests/sec: 356.49 Transfer/sec: 3.10MB
Southeast Asia S2 の場合
Running 10s test @ http://docker-test-2.azurewebsites.net/ 2 threads and 10 connections Thread Stats Avg Stdev Max +/- Stdev Latency 76.50ms 8.66ms 170.83ms 94.76% Req/Sec 65.50 12.07 90.00 59.18% Latency Distribution 50% 74.43ms 75% 76.88ms 90% 81.23ms 99% 100.75ms 1292 requests in 10.01s, 11.24MB read Requests/sec: 129.09 Transfer/sec: 1.12MB
ざっくりとした確認ですが、Southeast Asia に比べて Japan East の方が 3 倍近く処理出来ていました。当然ながらレイテンシは 1/3 ぐらいですが、Japan East は少しばらつきが大きいのが気になります。
個人的にですが App Service on Linux を使う場合には、最低でも S2 以上を使った方が良い気がしています。そろそろ App Service 全体的にインスタンスサイズの底上げをしてもらいたいですね。
無料で試したい人は
Azure サブスクリプション無しでも試す方法があるので、まずは 1 時間体験してみるのがおすすめです。
サブスクリプションは必要ないですが Microsoft アカウントは必要です。
MSDN を持っている人は無料枠があるのでそれで試せます。ちなみに時間課金で今は 50% 引きです。
もう少し詳しく知りたい人は
これまでに何回か App Service on Linux について書いてきたので参考にしてください。主にカスタムランタイムの作り方や CI / CD について書いてきた気がします。
5 月に開催された de:code 2017 で使用したスライドも Speaker Deck に公開しているので、基本的な機能からデプロイや内部のアーキテクチャまで軽く触れています。
今回の Japan East 追加以外に特に目立ったアップデートはないので、情報は古くなっていないはずです。
最後に
ASP.NET Core アプリケーションと組み合わせるのが、個人的に使い勝手が良いと思いました。Visual Studio から直接デプロイも可能なので、Windows 版と同じぐらいの使い勝手です。
沢山使ってくださいませ!「あれだけ日本にもってこいって言ってたのに使われないじゃん」とかなっちゃうと悲しいので
— 帝国兵 (@superriver) 2017年7月10日
仕事で使ってみたい気持ちでいっぱいです。なので App Service on Linux の案件を募集しています。