刚开始使用 Discourse,发现我的安装很慢

我们已经在 forum.hobbydb.com 上运行 Discourse 实例几个月了,以支持我们不断增长的收藏品数据库和社区(取代了各种 Facebook 群组)。虽然一切功能稳定,但我们注意到了一些性能问题——尤其是在 Lighthouse 分数方面,目前徘徊在 60% 左右。

关于我们设置的一些背景信息:

  • Discourse 版本:3.4.6(最新)
  • 部署:使用 Bitnami 的 Discourse Helm chart
  • 基础设施:完全容器化,运行在 Kubernetes 上
  • 规格:MS Azure 2xlarge(因此应该能够自动扩展到 6 核、12GB RAM,最多 2GB 用于日志)

我们正在尝试找出性能瓶颈可能来自哪里,以及如何更好地优化我们的部署——尤其是前端性能。

有人在使用 Bitnami 的 Discourse 在 Kubernetes 上运行时遇到过类似的问题吗?有什么建议、技巧或已知的陷阱是我们应该关注的吗?

感谢任何建议或意见——我们热切希望改善用户体验。

1 个赞

你好,我想知道,页面加载对用户来说是不是有点慢?还是仅仅是指标显示性能不佳?

这是用户体验,而且变化很大,有时速度可以接受,有时页面可能需要 20 秒才能加载。

2 个赞

会不会是网络问题,比如服务器托管在别处?

是的,您的实例非常慢。这不正常。

Bitnami 是一个非标准的第三方安装。您是否在他们的社区中提出过这些问题?

其中一些在线基准测试对于单页应用(如 Discourse)来说没有意义,因为每个客户端在首次访问时都会下载大部分 JavaScript。之后,大多数页面转换应该几乎是即时的,因为许多内容都已缓存,并且在大多数转换中只从服务器检索一些特定的内容 json。

(我相信 CDCK 正在努力将该下载扩展到首次页面加载之外,但这有点离题了,也不是您的问题)

我的实例是自托管的,采用标准安装,硬件配置非常普通(4GB VPS),并且运行良好 :rocket:

5 个赞
6 个赞

我们的基础设施在 Azure 上,区域是美国。所以应该不是什么大问题。

我猜现在切换到标准安装就更加必要了。

2 个赞

在 K8 和 Bitnami 上为 Discourse 获得良好性能是完全可能的。

对于 Discourse(或任何 RoR 应用程序),单核速度更重要。一旦您的论坛获得可观的流量,扩展性就变得更加重要。

mini-profiler 怎么说?