インフラジスティックス・ジャパン株式会社Blog

インフラジスティックス・ジャパン株式会社のチームメンバーが技術トレンド、製品Tips、サポート情報からライセンス、日々の業務から感じることなど、さまざまなトピックについてお伝えするBlogです。

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

f:id:furugen098:20200918132253p:plain

こんにちは!

テクニカルコンサルティングチームの古堅です。

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

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

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

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

Blazor WebAssembly

f:id:furugen098:20201027140300p:plain 出典元: ASP.NET Core Blazor のホスティング モデル | Microsoft Docs

Blazor Server

f:id:furugen098:20201027140244p:plain 出典元: ASP.NET Core Blazor のホスティング モデル | Microsoft Docs

選ぶポイント

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 から脱却する" 提案をおすすめします。

docs.microsoft.com

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

jp.infragistics.com