王志勇 发表于 2018年11月02日 08:48
美国、欧洲的主机,价格最便宜,带宽大(100Mbps、1000Mbps共享),但是中美间线路不够理想。国内、香港的主机,价格较高,网络速度一流,但是带宽小(2Mbps~5Mbps独享),贝岸手续繁琐。因此,亚洲最理想的主机只有韩国、日本,网络速度快、带宽大,但是价格高。
几年前中文博客开始掀起了美国主机的热潮,当时超过半数的独立博客都迁到了美国机房。如今的情况相反,超过半数的独立博客搬回了国内、亚洲机房,因为国内、亚洲机房的网页不是秒开,而是极速、瞬间打开,国内、亚洲机房的延迟在20ms~50多ms。
本博客和新博客都使用相同的构架,程序语言+NoSQL,全动态实时生成,非静态缓存。因为生成静态缓存页失去了很多功能,静态缓存的程序设计需要考虑很多因素,动态页一直运转良好,速度接近于静态页,所以一直没有做静态缓存的程序设计。全动态页面速度测试:
http://www.auiou.com (美国VPS,单核CPU,SSD硬盘,网页启用GZIP)
http://blog.emxel.com (美国VPS,单核CPU,可能是HDD硬盘,网页启用GZIP)
美国、欧洲还是有不少好主机,可以这样做优化:
清空的方法,是先用rm -rf命令删除,再用touch命令再建立一个0字节文件,例如:
rm -rf /var/log/btmp; touch /var/log/btmp;
上述3个文件用这样的命令一次清空:
rm -rf /var/log/btmp; touch /var/log/btmp; rm -rf /var/log/httpd/access_log; touch /var/log/httpd/access_log; rm -rf /var/log/httpd/error_log; touch /var/log/httpd/error_log;
网站、博客内部的优化,可以大幅度提高速度:
静态缓存程序的编写,或者称为“静态缓存插件”。静态缓存页确实能让网站跑到最极限的快速,但我一直尚未用这个方法。静态缓存页也有几个缺点:
最后,如何产生静态缓存、编写静态缓存的插件?从0编写这样的程序,至少需要1-3天的工作量。前几年,我完成过2次这样的程序,第1次用了大概三四天,第2次用了1天左右。原理很简单,调试时就是把整站在本机电脑建立虚拟主机,通过http://访问,写程序时需要实现的功能是用file_get_contents()自动采集、用strpos()和substr()函数分析和遍历该站点下的所有站内链接,并生成HTML文本文件。
对于博客而言,除了上述的这个步骤,还需要再编写额外的php动态插件。这些文件扩展名为.php,被相关页面用include()函数包含。比如用户留言的<post action=>指向的这个文件包含该插件,让用户留言后,该插件实时生成一个新的博文HTML静态页。
发布博客、修改博客同理,让插件实时生成一个新的博文HTML静态页。
这些HTML静态页的扩展名,现在大家的博客在用的静态缓存插件,可能都是.html。其实我更建议生成的扩展名可以是.php,或者用.htaccess文件指向一个php文件(Nginx不支持.htaccess,只能修改default或default.conf文件来实现),来包含这些静态缓存,这种方式是半静态、半动态(其实90%以上的都是静态),可以实现部分动态功能。这样对速度不会有影响,因为我使用全动态都没有影响,更何况90%以上的静态页。
自由勇 2018-11-03 09:14
谢谢!等下次我的VPS重装系统时测试一下。
因为之前用touch无法直接重写该文件,可能因为默认的权限不是777,后来用rm -rf解决了。
自由勇 2018-11-08 13:59
昨天新装系统,测试了一下,>/var/log/btmp 管用。谢谢!
默认的文件权限是640,/var/log是775,/var/log/apache2是750,在不修改权限的情况下,这个语句能起作用。
5. .js文件的位置,.js文件也可以是.php的动态页,都一起称为.js文件。.js有很多的网站,也包括我很多年以前也是这样做的,在需要显示数据的位置用<script src=****.js></script>引用.js文件,如果这个位置是HTML页里较靠前的位置,则浏览器打开该页面时,必须等此.js文件加载完毕,才能显示后面的内容,这样网页打开时,会有较长时间的空白期,如果这个.js文件是站外的域名,这个空白期可能会在0.5秒~3秒以上。
解决的办法是:原来的这个位置,设置一个ID,用div或span标签来建立ID,例如<div id=abc></div>。之后,在该HTML页的最后,引用此.js文件,此.js文件写入这样的语句:abc.innerHTML='data 1234'; 这个“data 1234”就是要在该位置显示的内容,这样网页仍然能秒开,而不会出现空白期。
虽然这些文章正在增多,但实际上,VPS的安装、配置比我们想象中容易得多,新机通常在半小时内能完成整个安装、配置。
置顶的文章:
论朋友圈可以发什么?
短信验证开发的方案分享
巡回更新: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年 +