缓存插件TpCache for Typecho
功能
减缓网站并发压力而开发的缓存插件。
注意
- 支持Memcache,Redis,Mysql三种驱动。
- 非js方式的访问统计插件会失效
- BUG请在缓存插件TpCache for Typecho页汇报
使用说明
后台设置
组件支持
请确保你的服务器memcache套件工作正常。
目前老高提供了phpmemcache与memcached的支持,请选择对应的驱动。
memcached配置请参考Linux服务器配置memcached并启用PHP支持。
Redis配置请参考Linux服务器配置Redis并启用PHP支持。
缓存更新机制
目前以下操作会触发缓存更新
- 来自原生评论系统的评论
- 后台文章或页面更新
- 重启memcached
- 缓存到期
评论
原生评论简单测试过,没有大问题。
不过既然使用缓存了不如直接使用第三方评论系统,如多说。
性能
在老高的烂主机上随便就能跑到保守800的并发(CPU占用不到70%),什么概念呢?
理论上支持每天69120000(60*60*24*800)的PV。
下载
安装
请将文件夹重命名为TpCache。再拷贝至usr/plugins/下
。
升级
请先禁用此插件后再升级,很多莫名其妙的问题都是因为没有先禁用而直接升级导致的!
一个服务器,多站点同时使用memcached就会报错。
没有区分不同主机的Key吧,
评论的邮件回复出现问题。我能收到访客的评论提醒,但是我回复的时候,访客收不到。
1.2版本还合适用吗?
开启 Redis 缓存评论显示 Call to a member function delete() onnull 怎么办?
用了缓存插件之后加密文章输入密码也打不开。
这个确实不支持,我有空改改吧
博主你好,开了插件后搜索不能用了,搜索链接原来是xxx.com/search/* 开缓存后链接变xxx.com/?s=*
我记得有个白名单什么的,有空我看看吧
时隔2年 还是那么好用,起飞~
请问这个支持redis密码吗?redis安全漏洞很多的,如果不支持密码会不安全。
这里,需要注意的是,插件本身是不支持密码访问的。由于阿里云的Redis服务需要密码访问,就简单的修改了一下typecho_redis.class.php文件(部分代码):
复制代码
public function init($option)
{
try{
$this->redis = new Redis();
$this->redis->connect($this->host, $this->port);
$this->redis->auth('redis密码');
}catch (Exception $e){
echo $e->getMessage();
}
}
由于博客是支持https的,所以选择了开启支持SSL。
👍🏻
看代码是不支持,后台配置也没见到有设置密码的地方,typecho_redis.class.php文件里面有具体的内容,你看下。其实可以手工加上去吧?然后redis不要开放外网访问,外网的端口禁用掉
请问redis要怎么设置,我下载后报错了
我用了这个插件后打开博客显示空白页面,这是什么问题
@老哥,开启了插件遇到一个问题,求解决
用户a发表评论后,用户b打开页面,评论里留存的信息还是a的,如昵称,邮箱。需要在插件后台手动清除全部数据才恢复正常,我网站使用的cookie保存用户信息。
老高,这款插件我在最新的typecho上开启时出现了500报错无法开启,这个这是怎么一回事呢
你好老高大神,现在这个缓存有个BUG很棘手,就是如果我文章加密了,输入密码后就会出错,希望你帮忙之中给看看,能不能给解决一下。
评论会出现500,但是一直转圈圈,如图https://ae01.alicdn.com/kf/H5f13b71cd14f4224928f6bf151249fb7B.jpg
虽然刷新页面有评论,F12查看,发现post评论的页面时500,关闭插件再评论,就正常显示评论成功。
缓存插件用着太爽了
不过发现一个小问题,删除评论的话不会自动更新缓存,需要手动清理下缓存
博主,,今早禁用插件之后启用就出现这串英文,Connection refusedRedis server went away
这个是什么原因导致的呢??
禁用了应该就没有相关逻辑执行了,看看是不是其他插件导致的?
这个插件虚拟主机可以使用吗?如果可以怎么判断运行成功了呢?
也是评论缓存的问题
能不能提供一下环境,目前我本地无法复现
怎么可以确实缓存是否生效了呢?
有没有输出个header?
有debug
测试评论