阿不

潜水

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  212 随笔 :: 0 文章 :: 3078 评论 :: 107万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

在现在的项目中,最早是采用大部分静态页面,再辅以动态页面的设计方案来提高整个站点的访问速度,这也在是很多门户站点的做法。但是从实施的效果来看,这样的方案并不适合我们,原因:

1)我们的数据更新频率较快,特别是产品的价格等实时性很强的信息,每一次修改都要涉及到详细信息页面的重新生成,这样造成的系统维护量加大,更新数据的工作量非常大。这是一个非常大的成本,而且在页面被访问时还无法生成覆盖原文件。

 

2)所谓的静态页面,在我们的这里已经变了味了。我们要求在静态页面加载很多的动态数据,甚至是执行动态的行为操作。这就导致了我们需要使用更加复杂的技术来实现这样的功能。而这样导致的后果是我们使用各种各样的拼凑手法来现实需求,有可能一个静态页面要包括好几个的动态页面,这样效率和速度上都是事倍功半的。可以说静态页面的意义单单仅是一个静态的后缀名展现了。而很多人认为静态页面可以更加容易的被搜索引擎搜索到,其实不然,搜索引擎根本就不关心你的页面是动态的还是静态的,关键是在友好的URL地址。

 

3)如上所述现在的静态页面的速度已经没有优势了,那动态页面是不是还有可优化的呢?答案是肯定的,以前大家都忽略了一项技术,页面缓存技术。页面缓存的一个重要特点就是大减少了同样信息页面的解析次数,从而大大减少了请求时间。它会把已经解析好了的动态页面的HTML存放在内存当中,以后每个用户访问相同的页就直接从内存中读取所需的HTML代码,可以说速度上完全可以与真正的静态页面相媲美的。最关键的优势在于,它非常易于更新,可以通过设计过期依赖等缓存策略,或者重启一下服务器就可以更新所有产品信息页面了。而避免我们再重新去生成静态文件的工作。这点也是目前的数据更新工作存在的最重要的缺陷。

 

4)页面加载比较慢还有一个重要的因素,就是页面的设计。这个非常重要,哪些信息需要先加载,哪些部分之后再加载。之前的页面在加载的时候总是先出现左边一点点的信息,而右边信息是重要内容,而且是静态页面的内容,却总是在最后被加载出来,这个就感觉页面非常非常的慢了。因为页面加载顺序是与代码在页面的位置是息息相关的,而与页面的物理结构无关(所谓“物理”,就是视觉效果的结构。),在前面的代码总是会先被执行的。注意到这一细节可以给我们很多的启示。

 

另外,到现在还不明白,像新浪,Sohu的门户站点,他们是如何更新新闻的,难道也要生成那么多的新闻页面吗?关于如何提高网站的速度,欢迎大家提出自己的看法。还有一个问题,在网页中,最中文站点的最佳字体该用什么比较好,用宋体在有的浏览器好像有问题。

posted on   阿不  阅读(1806)  评论(15编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示