大家对这些性能测试网站有什么看法?我刚做了 3 个测试:
GTmetrix、PageSpeed 和 WebpageTest。当然,有些有差异,但也有一些相似之处。昨天,我在 GTmetrix 上的评级是 C,所以 B 是一个不错的进步——不过我不确定这是怎么来的。
从我能看出的来看,这 3 个测试中我的网站最常见的问题似乎是 Javascript 和 CSS 的加载时间。不过,JS 是我能控制的吗?GTmetrix 列出了 2 个未使用的 JS URL,但那些是 Discourse 内置的东西,对吧?
https://forums.gonomad.me/assets/chunk.2c7ac65fdfc1f35c61b6.d41d8cd9.js
https://forums.gonomad.me/assets/vendor.47fe1949ff0285dbc995d87a6ae0d449-223fd39128ca149073c28a57e41e969bafdb0a241e1149adab6918b27e7a3265.js
然后我看到这些被列为 38.8 秒 的路径延迟,这有点引起了我的兴趣。我该如何优化/修复 那个?
PageSpeed 列出了类似的东西,关于 JS/CSS 渲染阻塞资源的问题。减慢网站速度的最大 JS 文件是:
https://forums.gonomad.me/assets/chunk.2c7ac65fdfc1f35c61b6.d41d8cd9.js
https://forums.gonomad.me/assets/locales/en-d255b87afa1b13a48418c34b7c45d8aa69fce223261f36c9a101fb022c7cb8e5.js
但同样,我认为那是 Discourse 内置的东西?
最后,从 Dev Console 进行的一次直接 Lighthouse 测试给了我 63 分:
这是否与之前一些用户遇到加载问题的其他话题有关?
我会看看托管环境。 
不过,在我看来,结果看起来还不错。
1 个赞
算是吧。整件事让我思考了一下,哈哈。
我主要也是这么想的,但是,嗯,我对这些性能网站上的一些分数也不太满意(是的,我猜这可能是主机问题?)
我最近在优化之旅中读了很多关于 CDN 的内容。我会去了解一下!
1 个赞
嗯……这增加了许多不必要的复杂性,但收益甚微。
我已经在社区运营了好几年,期间从未需要使用 CDN。
3 个赞
不应该有高流量。只有几个注册用户。网站大约是 12 天前创建的。在服务器托管的峰值时段,一些用户访问速度慢,但其他人访问正常。服务器/VPS 配置如下:
3GB RAM
2vCPU
35GB SSD
1Gbps 不限流量带宽
1 个 IPv4
KVM
Ubuntu 22
编辑:哦,糟糕,不确定是回复我还是回复 Robert
1 个赞
Jagster
(Jakke Lehtonen)
10
CDN 在有大量全球受众和/或 VPS 位于低端服务器后面时会有所帮助。基于 PHP 的网站可能会获得一些更好的改进,但良好的缓存策略更有帮助。
Discourse 的性质往往会破坏这些改进,或者换句话说:它不需要这种帮助。
那些指标服务有很多问题,而且很少能“照字面意思”解读这些提示。
1 个赞
是的,这正是我有点困惑的地方。基本上,我被扣分的所有点似乎都是 Discourse 内置的(JS 加载时间长/阻塞等)+ 可能还有我的主题的组合,所以这是否意味着 Discourse 网站在这些方面永远无法获得高分,哈哈?我有点怀疑。特别是论坛。
Jagster
(Jakke Lehtonen)
12
这意味着。你可以通过移除一些(不必要的)功能来做一点点帮助,主要是通过插件,但是……没有真正的益处。
好消息是这根本不重要。你的用户的互联网服务和设备才是更大的瓶颈。
如果你有太多空闲时间,你可以开始开发这个、那个以及其他东西,而你得到的回报可能只是在这里节省一秒钟,在那里节省一秒钟——而这些节省下来的时间只能通过实验室测试来衡量。
让团队和插件/主题开发者做他们该做的工作。这就够了。
如果你有 WordPress、Drupal 等“真正的”网络平台,会有很多不同的技巧可以做。现在这个解决方案从根本上是不同的。
当然——我只是另一个业余的管理员/网站管理员,如果我说错了,我会接受纠正。但我不会 
1 个赞
好的,是的,我在一个没有任何组件的默认全新主题上运行了相同的测试,结果是:
看起来阻塞时间始终是首要问题(至少对我来说是这样运行的)。所以,我猜 Discourse 的开发者需要更好地优化它,或者?我只是好奇地问,并非有意批评。
Jagster
(Jakke Lehtonen)
14
这不是人类所看到的内容。再说一遍:Discourse 是一个 Web 应用程序,它首先移动必要的文件,然后(几乎)所有其他内容都是 JSON 文本。该测试之所以有效,是因为网站在服务器级别生成页面并将可读的 HTML 发送到客户端。就像 WordPress 所做的那样。
而且那个时候一点也不差。
您现在建议的是,Discourse 应该是一个完整的应用程序,而不是可以通过浏览器使用的应用程序,例如。