しばやん雑記

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

Build 2016 で発表された ASP.NET Core セッションについて

RC 2 が出なかったことで、いまいち盛り上がらなかった Build 2016 の ASP.NET Core 周りですが、セッションは普通に面白いので簡単にまとめておきます。ちなみに RC 2 のリリース時期は未だに TBD のままです。

Introducing ASP.NET Core 1.0

https://channel9.msdn.com/Events/Build/2016/B810

いつもの Scott Hunter と Scott Hanselman による ASP.NET Core 1.0 の概要セッションです。タイトルの下に (The Empire Strikes Back) と入れるあたり、ASP.NET Core に自信があるのかなと思いました。

例によって基本的にはデモ中心で進んでいきます。発表されたばかりの Bash on Windows を使っていたり、Traffic Manager を使って AWS と Azure にデプロイした ASP.NET Core アプリケーションを世界中に展開してみたり、面白い感じのデモが多いです。

http://whereyouat.trafficmanager.net/

結果を見ると日本からアクセスした人もいるようです。今後ソースコードなどが公開されるようです。

ASP.NET Core Deep Dive into MVC

https://channel9.msdn.com/Events/Build/2016/B812

ASP.NET Core MVC で追加された機能を一通り紹介するセッションという感じです。最後の方にデモしていた p タグの中に Markdown を書ける Tag Helper が面白かったです。

このセッションを抑えておけば、ASP.NET Core MVC の機能は大体わかります。良くまとまっています。

Entity Framework Core 1.0

https://channel9.msdn.com/Events/Build/2016/B852

.NET Core の開発を待つ間に Entity Framework Core 1.0 はかなり開発が進み、パフォーマンスチューニングまで行われているようです。EF 6 と比較されていますが、30-80% ほど改善されているようです。

特に大きな効果を発揮するのが、これまで苦手とされていた INSERT がバッチ処理されるようになった点でしょう。MaxBatchSize の設定によって、INSERT を非常に効率よく行えるようになりました。

Deploying ASP.NET Core Applications

https://channel9.msdn.com/Events/Build/2016/B811

開発の話ではなく、実際にアプリケーションを本番環境へデプロイする際の注意点や、IIS のホスティングモデルが変更になった点が紹介されています。これまでは HttpPlatformHandler を使っていましたが、そこから fork した ASP.NET Core Module が提供されるようになりました。

Kestrel を直接 80 番で公開するのではなく、IIS や nginx などのプロキシを通すようにしておきましょう。

Azure Service Fabric for Developers

https://channel9.msdn.com/Events/Build/2016/B874

Service Fabric のセッションですが、メインはキーノートでも登壇した Illyriad Games の Ben Adams 氏の実例でしょう。Age of Ascent のアーキテクチャ紹介や実際のコードを見ることが出来ます。

ちなみに Ben Adams 氏は ASP.NET Core の Kestrel をチューニングした人物です。

今年は Service Fabric と ASP.NET Core の組み合わせを試していきたいと思います。とりあえず ASP.NET Core 1.0 RC 2 が出るのを待ちたいと思います…。