静态博客,没有服务端,如何做性能和缓存优化?

2017-01-05 11:23:15 +08:00
 alphabeta

如果没有服务端,应该就没法做常见的 HTTP 缓存的处理逻辑了吧?那么还有那些可以进行性能优化的方式了?

3062 次点击
所在节点    程序员
16 条回复
xiaoyang7545
2017-01-05 11:25:54 +08:00
既然是静态的那存储在磁盘里已经很高效了。如果能提升就是缓存到内存中。
shibingsw
2017-01-05 11:28:17 +08:00
静态博客没有服务端这个说法就不对。。
akira
2017-01-05 11:30:26 +08:00
图片压缩
CDN
ryd994
2017-01-05 11:33:28 +08:00
静态博客能有性能问题?静态站有 nginx 就够了,如果你需求简单也可以试试 lighthttpd ,差不了多少。瓶颈是网络,其次是磁盘。
加 CDN 也只是加速访问而已

@xiaoyang7545 操作系统会缓存的啊,除非请求有相关性可以 preload 。不过那样又要跑程序了。大并发的情况下还不如直接上。
gimp
2017-01-05 11:33:42 +08:00
全站 CDN
metaquant
2017-01-05 11:34:40 +08:00
推荐 service worker 的本地缓存方案,可以将静态与动态资源按配置缓存在本地的 cache storage 中,针对不同资源设置不同的缓存时间、缓存空间大小等,这样,就不需要去服务端配置缓存逻辑了。具体配置参见: https://metaquant.org/service%20worker-web%20performance-cache.html
alphabeta
2017-01-05 11:36:33 +08:00
@shibingsw 可能题目有歧义,我没有说静态博客没有服务端,只是我的博客因为托管在 github pages 上,所有无法操作服务端
bazingaterry
2017-01-05 11:37:17 +08:00
减少 /合并请求,上 HTTP2 ,资源尽量放到一个域名下,因为冷门域名解析时间也很可观的,会造成白屏时间过长。
alphabeta
2017-01-05 11:37:31 +08:00
@ryd994 我托管在 github 上, nginx 等需要服务端操作的都做不了
jarlyyn
2017-01-05 11:37:47 +08:00
静态已经是最大的优化了。
ryd994
2017-01-05 11:54:09 +08:00
@alphabeta 上 CDN ,没别的了
springmarker
2017-01-05 18:08:10 +08:00
放对象存储里(或者 cdn),上 http2 ,很多带 gzip 压缩
Technetiumer
2017-01-05 18:55:28 +08:00
噗,那还优化什么。。
优化一下你的前端 ==
减少前端代码,压缩 JS CSS ,静态文件比如图片放到国内云储存,试试 Staticfile CDN

静态已经是最大的优化,再优化就是缓存到内存中,然而你操作不了服务器, Github Pages 也没有性能问题,有你也管不了。。。
还有,就是用 CDN 缓存所有文件,包括 HTML ,把 CDN 当作服务器,然而 Github Pages 已经使用了 Fastly CDN 。
shibingsw
2017-01-05 22:51:02 +08:00
对于服务端而言,往往是当你的某个请求有大量的数据库查询,耗时的计算时才需要缓存什么的,而你这个都已经静态化了,就是纯文件的返回,没什么必要再做多少优化了,再优化就是前端的优化了,资源合并什么的
shallyy
2017-01-07 23:33:40 +08:00
@Technetiumer 请问 OSS 算不算一种 CDN 呢?一直不是很明白这两个的关系
Technetiumer
2017-01-10 17:11:58 +08:00
@shallyy

OSS 是云储存

七牛 又拍 属于 云储存 + CDN
百度云加速 属于 CDN

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/332348

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX