在优化方面遇到困难

我们的论坛经历了一次大规模的基础设施变更,现在性能不佳。
我已将数据库迁移到 DigitalOcean 的托管数据库,并将 S3 资产放在带有 Cloudflare 代理的 MinIO 实例上。
我还使用了一个较小的虚拟机重新部署了 Discourse,但该虚拟机仍有足够的资源来处理负载。
从我所看到的来看,有一些 PostgreSQL 查询花费的时间太长:
21 秒
image
19 秒
image

所以要撤销它?

不过也许其他人尝试过,并且会提供改进此类设置的技巧。

为什么不支持?
Discourse 在 app.yml 中提供了外部数据库的选项?
我正在尝试扩展一个大型服务器。

1 个赞

抱歉,我先把它移除 :+1:

托管数据库离您的实例有多近?它们在同一个网络中吗?

是的,服务器也是 DO。
我现在将使用支持的指南进行一个纯粹的安装,并导入数据库。
我看看会发生什么。

有没有办法手动运行那些数据库迁移?

但是听起来你的 postgres 服务器不足以处理负载?你的数据库有多大?你的 postgres 服务器有多少内存?

也许你应该先看看你的 postgres 服务器是否正常工作?

嗯,主要是只有标准安装是“受支持的”。外部数据库应该可以工作,但你增加了很多变量,很难猜测。

那更不受支持了,有多大?然后有多少东西有多大?数据库、数据库服务器、你运行的虚拟机、虚拟机和数据库之间的带宽……

这是一个很好的开始,然后你可以开始逐项检查。

通常它会在你引导容器时发生,但你可以进入容器并运行

cd /var/www/discourse
bin/rails db:migrate
2 个赞

即使是简单的全新安装也不起作用,甚至还没有恢复数据库。
在干净的虚拟机上执行了 discourse-setup,但注册不起作用。

尝试通过命令行恢复,但 discourse restore 没有列出备份。
编辑:在第二次完全重建后可以工作了。