Rob*_*obo 1 c# asp.net blazor blazor-server-side blazor-webassembly
我在别处读到在创建 Blazor 服务器端应用程序时,每次您的应用程序用户与该应用程序交互时,服务器都会创建您的应用程序实例,这意味着,如果您有 1000 个用户同时使用您的应用程序,您的托管服务器将必须同时管理 1000 个应用实例。
因此,如果这是真的,Blazor WASM Asp.net Core 托管应用程序的 Asp.net 核心托管层是否也是这种情况?意思是,如果您有 1000 个用户同时向 WebAPI 发送请求,是否会创建 1000 个实例来处理请求?
Blazor Server App 在服务器上运行,并通过 SignalR 与其客户端(浏览器)进行通信。服务器不会为应用程序的每个连接创建应用程序的实例。由于代码在服务器上执行,并且只有 html diffs 传递给客户端以更新 DOM,服务器为每个连接的客户端创建一个电路对象,该对象存储应用程序状态、会话数据等。这可以是要求很高,但它仍然有效,并且服务器可以同时为数千个客户端提供服务。
托管的 WebAssembly Blazor 应用程序的工作方式不同。服务器的作用只是在首次访问应用程序时为其提供服务。应用程序本身在客户端的浏览器上运行,一切都在客户端上执行。这里不涉及服务器。当您的 Web 应用程序是 MVC 应用程序或 Razor Pages 应用程序时,从 Blazor 客户端到 Web Api 端点执行 HTTP 调用等效于从客户端浏览器到 Web Api 执行 AJAX 调用。实际上,在幕后,WebAssembly 应用程序使用 JavaScript Fetch Api 将 HTTP 调用发送到 Web Api 端点。
希望这可以帮助...
| 归档时间: |
|
| 查看次数: |
1164 次 |
| 最近记录: |