NextCloud属于带同步的文件服务,好多选项都要加载一会儿;如果用的人多了会越来越卡,同步功能会一直请求服务器再加上文件的上下载传输,对于服务器本身而言大部分都需要去数据库获取下载信息,而缓存就起到了很大的作用,将经常使用的信息缓存下来,第二次使用就不用再去查速度快了不止一点,常见的缓存器就Redis和Memcached,两者的性能在我实际的体验中不相上下。其次就是NextCloud的后台服务,用于回收垃圾清理内存等,不需要用户手动清理,让NextCloud服务响应更快。
(配置方案建立在BT面板上)
Redis 缓存配置:
1. 打开面板应用商店找到Redis并安装(版本6.0及以上就可)
2. 打开Php管理器在扩展中安装Redis插件
3. 打开NextCloud站点根目录,修改网站配置文件(config目录下的config.php文件)
在配置文件中添加如下代码即可
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => '127.0.0.1',
'port' => 6379,
),
'memcache.locking' => '\\OC\\Memcache\\Redis', //Redis文件锁,不使用可删去此行
最后重启php和nginx服务即可。
后台任务配置(AJAX,WebCron,Cron) :
官方建议使用第三种,由于是在Centos环境下我们根据官方的提示,首先:
1. 编写两个服务脚本
nextcloudcron.service 文件内容如下
[Unit]
Description=Nextcloud cron.php job
[Service]
User=www
#此处为Php的目录环境和站点下的cron.php的路径(请根据实际情况填写)
#其中xxx.com为站点目录
ExecStart=/www/server/php/72/bin/php -f /www/wwwroot/xxx.com/cron.php
nextcloudcron.timer 文件内容如下
[Unit]
Description=Run Nextcloud cron.php every 5 minutes
[Timer]
OnBootSec=5min
OnUnitActiveSec=5min
Unit=nextcloudcron.service
[Install]
WantedBy=timers.target
2. 将以上两个文件移动到 /etc/systemd/system 目录下(并修改文件的可执行权限)
3. 打开命令行执行服务注册与启动命令 (依次执行以下三条命令)
#注册为开机启动服务
systemctl enable nextcloudcron.timer
#启动服务
systemctl start nextcloudcron.timer
systemctl enable --now nextcloudcron.timer
大功告成,以上就是对NextCloud优化的步骤和方法,步骤很简单,但是对于刚接触的人可能会很难,但稍微熟悉以下linux的架构和基础知识也就能搞定了。这样网盘的响应速度就得到大幅的提升了,自己体验后就知道那是丝般顺滑~ ~ ~。
我的nextcloud按照操作还是不行!!
按你这个来的redis里面没有数据
直接在宝塔上设置,很简单看我的另一盘文章:https://www.hao0564.com/1927.html
在文章的的最后面“12,后台任务优化”