Digital Ocean Droplet 规格

您好,我在一台配备 4GB 内存、2 核 CPU 和 60GB SSD 的 DigitalOcean Droplet 上启动了 Discourse 论坛。

随着站点的发展,在某些时刻,用户会收到一条消息:“由于负载极高,本站将以未登录用户身份显示”。这是一个体育类站点,这种情况发生在一些关注度极高的赛事期间。

我认为这条消息是在我们达到 250 名在线用户时出现的。

在 app.yml 中,我配置了 2 个 Unicorn 进程和 768MB 的 db_shared_buffer。

我想升级我的 Droplet 配置,您建议选择多大的规格?

谢谢!

你可能需要稍等片刻,因为有人提交了包含多个 N+1 和 N+2 查询的糟糕代码。cc @sam,latest 分支上是否已有修复?

最新版本包含最新的修复,但作为体育网站,您可能只是负载过高。

2 个独角兽听起来不够,对于 250 个活跃的非匿名用户,您需要更多的 Web Worker。

谢谢,您建议什么规格?8GB 内存和 4 核 CPU 是否足够?Unicorn 的数量会自动更新并重新构建应用吗?

如果你有 4 个 CPU 和 8GB 内存,可能可以配置 8 个 Unicorn 工作进程,同时请确保为 PostgreSQL 分配 1GB 内存。

我该如何检查此设置?

请重新运行 ./discourse-setup,它将根据检测到的内存和 CPU 自动调整 app.yml 配置。