本轮扩容已成

这里简单复盘一下本轮扩容的过程。先说一句:佬友们真是太热情了。

自开年的工作日以来,L站的访问量直接大幅创新高,高居不下且还有攀升迹象。这给服务器造成了极大的压力,我们紧急采购服务器并完成了扩容,但是效果并不及预期。

现在的服务器太贵了,机器要加可不能无脑加,这种情况显然就不对劲了。调查之下,我们发现很多访问异常,于是我们立刻着手建立风控服务。风控服务的效果还是不错的,把服务器从随时爆炸,拉到了崩溃的边缘,高峰期可以不炸,但是很慢。

这显然是不理想的,这种崩溃边缘没有余量,遇到攻击直接就会被压垮。由于尝到自建风控的甜头,我们寻思是不是可以自建新的服务替代 discourse 原有的?

分析了一下,当场决定改造 discourse message-bus 服务。虽然 discourse 现在默认服务切到了 pitchfork 但这只是 unicorn 的一个分支,还是进程模型的 web server 对于 message-bus 这种 long polling 是极其吃力的。

一番调研之后,直接用 rust 搓了一个 rust-bus,把之前扩容的服务器腾空,给它部署上去,当作一个独立的服务。并启用独立的子域名 ping.linux.do

image

果不其然,分拆之后,discourse 服务负载大大降低,并且 message-bus 拉取信息的性能和成功率大幅提升。我猜这两天各位佬友有所感受,熟悉的 查看 xxx 个新的或更新的话题 横幅它又回来了。

今天上午其实已经能看到部分成果了,下午的一些抖动是我们迁移造成的。当前已经全部调试迁移完毕,我相信各位佬友能体会到此刻的丝滑 :grin:

至于脚本风控,我们仍然要做,并且还要继续完善。因为这些扩充的资源,是给当前以及未来的佬友准备,不是为脚本预留,还请理解。

至此,本轮扩容圆满完成,各位接着奏乐接着舞~

2134 个赞

支持始皇,可以爽看了

65 个赞

前排喵 w

有个小问题,新的endpoint CORS第一个请求会被拦截掉,跨域会报错 www

应该是跨域请求时序的问题,影响不大,就是会有个error w

43 个赞

始皇!!!

16 个赞

始皇太强了

12 个赞

支持支持!

10 个赞

前排支持~

9 个赞

前排前排

7 个赞

太棒了!!

9 个赞

又可以丝滑了

7 个赞

前排支持

7 个赞

前排支持

6 个赞

前排前排前排前排前排前排前排

7 个赞

前排支持

6 个赞

始皇威武,佬友威武

8 个赞

前排前排

8 个赞

支持支持,太爽了

6 个赞

前排支持!

6 个赞

吾皇万岁万岁万万岁

6 个赞

前排支持!!!

6 个赞