前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >wordpress速度优化-静态页写入内存

wordpress速度优化-静态页写入内存

作者头像
AlexTao
修改2023-05-16 15:13:51
1.8K0
修改2023-05-16 15:13:51
举报
文章被收录于专栏:钻芒博客

昨天博客加了WP Super Cache缓存插件,速度提升明显。使用这类插件可以将PHP动态页面在首次访问时生成html静态页面并存储在硬盘中,当其他访客再次访问时直接读取该静态页面,这样不需要再次通过PHP生成动态页面也不需要再从数据库中读取数据,大幅降低系统资源消耗,且大幅提升了页面打开速度。

如果不考虑服务器带宽,那最大的瓶颈就是硬盘了,因为这些生成的静态页面都存储在硬盘上,访问量大时,硬盘的读写速度低会导致网站访问缓慢,如何在较大的访问量下依然保持页面的迅速打开呢?如果你使用VPS、云服务器或独立服务器,继续阅读下去,你会有大收获:

(*文章结构和部分字段网络复制来的。数据教程内容原创)

先来测测我使用的服务器硬盘读写速度:

代码语言:javascript
复制
[root@VM_0_8_centos ~]# dd if=/dev/zero of=bigfile bs=1M count=500
500+0 records in
500+0 records out
524288000 bytes (524 MB) copied, 4.45831 s, 118 MB/s

再来对比一下服务器内存的读写速度:

代码语言:javascript
复制
[root@VM_0_8_centos ~]# cd /dev/shm
[root@VM_0_8_centos shm]# dd if=/dev/zero of=bigfile bs=1M count=500
500+0 records in
500+0 records out
524288000 bytes (524 MB) copied, 0.278453 s, 1.9 GB/s

118 MB/s与1.9 GB/s天壤之别啊!如果我们把这些生成的静态文件放到内存里缓存,效果不言而喻。

幸运的是Linux系统为我们提供了这样的解决办法,那就是tmpfs文件系统,tmpfs可以直接使用内存,同时在内存不够时使用swap分区来存储。另外需要注意的是tmpfs不具备持久性,重启后数据不保留,请务必注意,不过我们只用它来存储缓存文件,即使文件丢失也不影响网站访问,完全无风险。

wordpress如何使用tmpfs:

钻芒博客用的宝塔面板,实际上宝塔可以直接设置挂载内存盘。(在应用商店-系统工具-Linux工具箱-内存盘)

  • 内存盘具有物理磁盘无法比拟的读写速度,但只能用于保存临时数据!
  • 内存盘是直接将部分物理内存挂载为磁盘,请根据当前服务器内存使用情况合理安排挂载容量!
  • 重启服务器,或卸载内存盘后,保存在该内存盘的数据将被清空!

我们选择wordpress下的一个空的目录(可以自己创建)

这里我们这里创建一个cache-tmpfs文件夹(可以随意命名),并选择这个目录挂载。

然后新创建的这个cache-tmpfs文件夹就是挂载在内存

我们去WP Super Cache 插件设置里把缓存位置换成刚才创建挂载在内存文件夹的目录

比如我的:/www/wwwroot/www.zuanmang.net/wp-content/cache-tmpfs/

更新缓存位置后WP Super Cache 会自动在新的缓存位置生成缓存文件,以后的缓存都缓存在新的目录里。

我们测试一下/www/wwwroot/www.zuanmang.net/wp-content/cache-tmpfs/这个文件夹的读写速度

代码语言:javascript
复制
[root@VM_0_8_centos ~]# cd /www/wwwroot/www.zuanmang.net/wp-content/cache-tmpfs/
[root@VM_0_8_centos cache-tmpfs]# dd if=/dev/zero of=bigfile bs=1M count=500
dd: error writing ‘bigfile’: No space left on device
87+0 records in
86+0 records out
90574848 bytes (91 MB) copied, 0.0437874 s, 2.1 GB/s

2.1 GB/s速度提升明显!!

硬盘缓存和内存缓存前后打开速度对比图(带缓存)

硬盘:2.93s

内存:1.64s

文章源自:钻芒博客 www.zuanmang.net

本文系转载,如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载,如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • wordpress如何使用tmpfs:
  • 硬盘缓存和内存缓存前后打开速度对比图(带缓存)
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档