ToB企服应用市场:ToB评测及商务社交产业平台

标题: Blazor WebAssembly的初次访问慢的优化 [打印本页]

作者: 北冰洋以北    时间: 2023-1-11 20:07
标题: Blazor WebAssembly的初次访问慢的优化
Blazor WebAssembly初次访问需要加载很多dll,体积较大,因此第一次加载比较慢。
针对此问题Microsoft提供了优化方案:压缩
https://learn.microsoft.com/zh-cn/aspnet/core/blazor/host-and-deploy/webassembly?view=aspnetcore-6.0#compression-1
gzip压缩
首先通过nginx开启gzip压缩,配置如下
  1. http
  2.     {
  3.      ...
  4.        #是否启动gzip压缩,on代表启动,off代表开启
  5.         gzip on;
  6.        #如果文件大于1k就启动压缩
  7.         gzip_min_length  1k;
  8.        #以16k为单位,按照原始数据的大小以4倍的方式申请内存空间,一般此项不要修改
  9.         gzip_buffers     4 16k;
  10.         gzip_http_version 1.1;
  11.        #压缩的等级,数字选择范围是1-9,数字越小压缩的速度越快,消耗cpu就越大
  12.         gzip_comp_level 2;
  13.        #需要压缩的常见静态资源
  14.         gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml application/octet-stream;
  15.         gzip_vary on;
  16.         gzip_proxied   expired no-cache no-store private auth;
  17.        #由于nginx的压缩发生在浏览器端而微软的ie6很坑爹,会导致压缩后图片看不见所以该选项是禁止ie6发生压缩
  18.         gzip_disable   "MSIE [1-6]\.";
  19.     ...
  20.     }
复制代码
 
重启nginx
  1. #用来测试配置文件
  2. nginx -t
  3.   
  4. nginx -s reload
复制代码
 
Brotli压缩
发布 Blazor WebAssembly 应用时,将在发布过程中对输出内容进行静态压缩,从而减小应用的大小,并免去运行时压缩的开销。 使用Brotli压缩算法。
Blazor 依赖于主机提供适当的压缩文件。 使用 ASP.NET Core 托管项目时,主机项目能够执行内容协商并提供静态压缩文件。 托管 Blazor WebAssembly 独立应用时,可能需要额外的工作来确保提供静态压缩文件。

首先在 wwwroot/index.html 文件中,在 Blazor 的 [/code]
在 Blazor 的 [/code] 
 重新访问,即可看到访问速度的提升十分显著。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4