王志勇 发表于 2022年05月13日 15:45
比如CDN缓存,其实是在10年前国际线路很不稳定的情况下,使用CDN使网页有了明显的加速,现在如果去掉CDN,反而访问速度会稍稍快一点点。因为一两年前我尝试过套用CF,后来又去掉了。
网页转成HTML静态页,也不太现实,因为工程量巨大,二是共用部分时常需要修改。尤其是论坛、博客页,因为有评论,这些应该做成动态页。
优化是有方法的
逐一排查瓶颈,多年来我是这样做的,除了第4条,每个人都很容易做到:
1. 去掉https,原因请见这个栏目,大多数的网站不需要https。
https会造成很多网站访问不稳定,包括很多人使用国内空间,访问速度有时不影响,有时会慢0.5秒~2秒。
2. 如果是中文博客、中文网站,域名的DNS一定要使用国内的,首次访问可提高120ms左右。英文网页,就用国外的DNS,如he.net。
3. 关闭所有的Apache(或Nginx)、PHP的访问日志、错误日志,需要在配置文件里修改;关闭btmp文件。这样VPS会一直保持和新机一样快,否则VPS会一年比一年慢,步骤请见前文。
4. 程序设计。MySQL是网页慢的一个主要瓶颈。
5. DIV+CSS。现在绝大多数网页都是使用DIV+CSS,不像早期用FrontPage做网页,全是table。用DIV+CSS来实现表格,网页是边下载、边显示,所以网页显示非常快,浏览器刚显示标题,网页马上就出现内容。
不像用大的table实现的表格,是等网页加载完成后,才显示内容。在现在的国内外带宽环境下,大table的网页,显示会慢2~4秒以上。现在几乎没有人用大table了。
6. JS站外文件。有个别博客、网站使用了站外JS,比如一些百度统计。JS一定要放在整个网页的最后,否则,如果放在网页当中,需要到JS这个位置的JS文件加载完毕后,才能显示后面的内容。
这也是为什么有时看到有的网页,浏览器标题已经显示了,但是网页会卡10多秒才打开。这种情况不多见,但是仍然存在。
7. 网页一定要启用GZIP压缩,网页打开的速度大约提高2~3倍,方法是在PHP网页的最前面加<?ob_start('ob_gzhandler');?>这一句。
或者通过Apache、Nginx的配置文件来实现GZIP。我是一直使用ob_start('ob_gzhandler');的方法。
上述这些提速步骤,不如说是解除瓶颈的步骤,每一个因素都会影响网页的速度。
8. 前面测试过,PHP 7.4的速度大约是PHP 5.3的10倍。但是对于访问量不大的网站,是看不出区别的,影响远比MySQL的瓶颈小得多。
因为我现在就是同时用PHP 5.3和PHP 7.4。
同理,PHP 5.6,PHP 7.0,PHP 7.3,大多数流量不大的网站(每日IP 1万以下),网页速度方面是看不出来区别的,用哪个都没关系。流量达到一定程度的网站,可能会有影响。
PHP 7.0~PHP 7.3的速度几乎没变化,直到PHP 7.4突然有了提升,PHP 7.4速度约是PHP 7.3的2.1倍。
我使用的都是便宜的,年付不到$10的普通配置的VPS。
自由勇 2022-05-14 09:49
PHP版本,如果用亚洲主机,应该是能看出一点区别,PHP 7.4会更快,速度是PHP 7.2的2倍左右。
用欧美主机,PHP版本几乎就看不出区别了,因为网络的原因,访问速度都会慢一点。
置顶的文章:
论朋友圈可以发什么?
短信验证开发的方案分享
巡回更新:2018-09-21
速度是永恒的主题
UTF-8、HTTPS原来都是浮云
https安全吗?
独立博客有必要安装https吗?
近期的主题:
夜晚靓歌(10):你没看过的《星雨心愿》
Feedval、Blogval将下线/谈理财和生存
2024.9感言
人生讨论(20):有人借钱怎么办?(2)
人生讨论(19):迄今为止最强的情感频道
数码评测(67):让小米/红米手机的反应提高1~2倍
数码评测(66):无线网卡FW150UH VS FW150UH
数码评测(65):如何快速自制CPU天梯图?
数码评测(64):2024年,你还在用VGA线吗?
人生讨论(18):6年就可以实现财务自由
人生讨论(17):为什么总是受欺负?
人生讨论(16):要钱的最新妙招
创业杂谈(17):什么项目能赢利?
人生讨论(15):有人借钱怎么办?
数码评测(63):高清切换超级神器
数码评测(62):再谈视频的尺寸
数码评测(61):近期数码采购和折腾
人生讨论(14):看穿尊重
数码评测(60):图拉丁-最佳中配工作“免费”手机
创业杂谈(16):博客何时终结?
版权声明:本博客所有文章,均符合原创的定义,禁止转载,违者将必究;正确的方法是贴原文的标题和网址即可。
与此相关的链接
自由勇专栏
Blog存档 Archives
2022年07月
2022年06月(15)
2022年05月(20)
2022年04月(16)
2022年03月(9)
2022年02月(9)
2022年01月(10)
2021年 +