LoginSignup
16
12

More than 3 years have passed since last update.

ASP.NET Core Blazor - Blazor WebAssembly と Blazor Server の違いは? 5つのポイント

Last updated at Posted at 2020-10-30

ASP.NET Core Blazor についての記事となります。

Blazor は "WebAsssembly" と "Server" いずれかを選択する事になりますが、

それぞれの選択ポイントについて紹介します。

Blazor WebAssembly と Blazor Server それぞれの特徴

Blazor WebAssembly

image.png
出典元:
https://docs.microsoft.com/ja-jp/aspnet/core/blazor/hosting-models?view=aspnetcore-3.1:title]

Blazor Server

image.png
出典元:
https://docs.microsoft.com/ja-jp/aspnet/core/blazor/hosting-models?view=aspnetcore-3.1

選ぶポイント

1. アクセス高負荷時のスケーラビリティを考慮するか?

Blazor WebAssembly はスケーラビリティの相性が良いです

Blazor Server は スケーラビリティの相性が悪いです

Blazor WebAssembly は 配布するためのサーバがあれば、運用ができサーバレスアプリとしても構築できます。

Blazor Server は SignalR 通信が必要となりますので、常に接続するためにサーバが必要となります。

また、スケーラビリティを行いサーバのインスタンスが増減した場合、初期接続したサーバと SignalR 通信を行う必要があるため、

スケーラビリティに対応する際には、 Signal R の通信制御も同時に行う必要があるため、導入コスト、運用コストのいずれもコストが発生します。

2. 初回アクセス時の読み込み速度をどの程度優先するか?

Blazor WebAssembly は ページの初期読み込みが遅いです

Blazor Server は ページの初期読み込みが早いです

Blazor Server は都度サーバサイドと通信するので、初期読み込み時に必要なリソースは最小限で済み、初期読み込みが早く、Blazor WebAssembly は、初期読み込み時に必要なリソースを全て読み込むため、初期表示が遅くなります。

但し、一度読み込んだ後は、Blazor WebAssembly の方が、サーバからリソースの取得の取得を行わないため、高速に動作します。

3. Internet Explorer 11 をサポートする必要があるか?

Blazor WebAssembly はサポートしていません

Blazor Server は IE 11 をサポートしています

"Microsoft Internet Explorer" (11バージョン) をサポートしているか?もお客様の状況によっては重要なポイントかもしれません。

但し、IE 11 は非常にレガシーなブラウザなので、"Blazor の採用タイミングで IE11 から脱却する" 提案をおすすめします。

4. シンクライアント対応にしたいか?

Blazor WebAssembly はシンクライアントに非対応です

Blazor Server に シンクライアントに対応しています

Blazor Server はシンクライアントをサポートしてます。Blazor WebAssembly がサポートされていないブラウザーや、リソースが制限されたデバイスでも動作します。

5. オフラインで動作させたいタイミングがあるか?

Blazor WebAssembly はオフラインでも動作できます

Blazor Server は オフラインでは動作できません

Blazor WebAssembly は PWA(Progressive Web Apps)に対応しており、オフラインで動作することが出来ます。

例えば、インターネット環境がない (閉じたネットワークで作業) 環境で一時的に作業し、インターネット環境に繋いだ時に、作業内容を一括で登録するような場面でご活用頂けます。

開発全般に関するご相談はお任せください!

インフラジスティックス・ジャパンでは、各プラットフォームの特別技術トレーニングの提供や、開発全般のご支援を行っています。

「古い技術やサポート終了のプラットフォームから脱却する必要があるが、その移行先のプラットフォームやフレームワークの検討が進まない、知見がない」

「新しい開発テクノロジーを採用したいが、自社内にエキスパートがいない。日本語リソースも少ないし、開発を進められるか不安」

「自社のメンバーで開発を進めたいが、これまで開発フェーズを外部ベンダーに頼ってきたため、ツールや技術に対する理解が乏しい」

「UIを刷新したい。UIデザインやUI/UXに関する検討の進め方が分からない。外部のデザイン会社に頼むと、開発が難しくなるのではないか、危惧している」

といったご相談を承っています。

お問い合わせはこちらから

お問い合わせフォームをご用意しております。ぜひお気軽にご連絡ください。

16
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
12