重新调整服务器规模,需要更改哪些配置? - unicorn workers、内存等

TLDR: 调整服务器大小时,是否有推荐配置的指南或列表需要考虑?

首次在服务器上安装 Discourse 时,有一些设置是自动设置的。
云服务的一个便利之处在于,只需更改实例类型即可更改具有更多/更少 CPU 和内存的实例。
据我所知,自动配置不会自动调整以适应新服务器(在管理仪表板上发出警报,表明您的 Discourse 配置似乎与正在运行的硬件不匹配,这会很有用)。

例如,我考虑了 app.yml 文件中的这些设置:

## 将 db_shared_buffers 设置为总内存的最多 25%。
## 将由 bootstrap 根据检测到的 RAM 自动设置,或者您可以覆盖它
db_shared_buffers: "4096MB"

## 可以提高排序性能,但会增加每个连接的内存使用量
#db_work_mem: "40MB"

## 支持多少并发 Web 请求?取决于内存和 CPU 核心数。
## 将由 bootstrap 根据检测到的 CPU 自动设置,或者您可以覆盖它
UNICORN_WORKERS: 4

这假定 Discourse 是服务器上唯一运行的程序,但事实并非总是如此。

我通常为每个核心指定两个 unicorn_workers,并将系统内存的 25% 指定为 db_shared_buffers

3 个赞

如果您运行 discourse-setup,它将更改为建议的大小。但您正在查看建议,所以您可以自己动手。

2 个赞

您好。是时候增加服务器功能了。为了更改服务器的处理器和内存属性,我需要将其关闭。在调整服务器大小之前,有什么重要的事情我应该做吗?我希望在我回来时一切都能就绪并正常运行。

我会下载一个完整的备份和一个 app.yml 文件的副本,以防它无法恢复。

2 个赞

是否可以在不重建的情况下更改 db_share_buffers?

cd /var/discourse
./launcher destroy app
./launcher start app