Bendi新闻
>
Discord 使用单台服务器服务于 100 万在线 MidJourney 用户

Discord 使用单台服务器服务于 100 万在线 MidJourney 用户

作者 | Rafal Gancarz
译者 | 张卫滨
策划 | 丁晓昀

Discord 对其平台进行了优化,以便于在单台服务器上为超过 100 万在线用户提供服务,同时保持反应灵敏的用户体验。在系统可观测性和性能调优的支持下,该公司对负责发送数十亿条消息通知的 guild 组件进行了一系列的性能和可扩展性增强。

Discord 平台的关键元素是使用 Elixir 实现的,这是一门运行在 Erlang VM) 之上的函数式语言。基于 Elixir 的组件负责路由和向用户发送消息通知。Guild 服务器是管理 Discord 社区各种业务流的中心枢纽。Guild 进程会与很多会话进程进行交互,而这些会话进程使用 WebSocket 连接将消息投递到用户设备上的客户端应用程序中。架构的另外一个关键要素是 API 服务,它是使用 Python 编写的,负责将消息持久化保存到 ScyllaDB 中。

通过 Discord 平台的消息流(图片来源:Discord 工程博客

鉴于之前的设计选择和平台限制,Discord 团队必须确保 Guild 进程能够继续处理不断增加的在线用户数量,例如,Midjourney 社区的在线用户数量就超过了一百万。Discord 的软件工程师 Yuliy Pisetsky 讨论了与服务器性能相关的用户体验考虑因素:

除了整体吞吐量方面的考虑因素之外,服务器越大,某些操作的速度就越慢。确保几乎所有的操作都能快速进行,这对服务器的响应速度至关重要:当发送一条消息时,其他人应该能立即看到;当有人加入一个语音频道时,他们应该能立即参与进来。如果处理某个昂贵的操作需要好几秒钟的时间,这会损害用户体验。

工程师们花了大量时间来理解系统性能。他们插装了 Guild 进程的事件处理循环,以捕获消息处理时间的关键指标。团队利用进程堆栈跟踪进行分析,寻找导致消息处理延迟的原因。他们还创建了一个辅助库,用于估算大型对象的内存使用情况,以便于帮助优化内存的使用。有了可观测性数据,他们实施了多项优化措施,大大缩短了某些消息类型的处理时间。

团队通过减少 Guild 进程的工作量取得了一些重要成果。他们禁用了被动会话的通知,在被动会话中,用户不会与他们所属的某些社区进行互动。仅这一项改变就使扇出(fanout)工作的成本降低了 90%,从而为不断增长的用户数量提供了急需的空间。

开发人员引入了一层新的中继进程,帮助在 Guild 进程和会话进程之间更高效地传递信息。中继进程接管了部分业务流的处理工作,从而释放了 Guild 进程来处理更多的用户。

中继进程层(图片来源:Discord 工程博客)

其他优化还包括使用了内存数据库 ETS,从而能够存储成员列表并在进程间实现安全地共享,以及创建一个单独的发送进程来向接收节点发送消息。

在 HN 论坛中,博文作者回答了社区提出的一些问题,社区对 Discord 实现的一些增强功能的细节很感兴趣。

查看英文原文:

Discord Scales to 1 Million+ Online MidJourney Users in a Single Server(https://www.infoq.com/news/2024/01/discord-midjourney-performance/)

声明:本文由 InfoQ 翻译,未经许可禁止转载。

今日好文推荐

Taylor Swift 身陷不雅照风波:AI 越强、Deepfakes 越猖狂,微软和推特们无法推责

Linus 开喷谷歌内核贡献者:你的代码是垃圾!网友:我们熟悉的 Linus 回来了

今年技术除了AIGC真没啥看头?别让“网红效应”遮住了真正的创新!

比VS Code快得多!用Rust重写,支持OpenAI、Copilot 的Zed编辑器开源了

微信扫码关注该文公众号作者

来源:InfoQ

相关新闻

​尊享e生2024焕新升级:9年累计服务用户超7200万,保障、服务均有新突破买了不到1个月,小米SU7突然“刹车失灵”?售后:“软件误判!”锁单量已达8.8万台,苹果用户占比过半,雷军:今年交付10万辆小米汽车今年冲击交付12万台/苹果折叠MacBook价格或比肩Vision Pro/B站用户日均使用时长创新高开发 3 年拥有 100 万用户,这个操作系统开源了!AI早知道|Stability Al推出Discord机器人服务;雷神首发个人助理小雷AIAT&T7300万用户个人信息在暗网上被泄漏,手机用户别忘记做好自我保护腾讯音乐Q2财报稳健增长,在线音乐付费用户数增至1.17亿雷军公布SU7成绩单:交付5781台,苹果用户占51.9%《2023互联网医疗服务洞察报告》发布:用户新需求驱动构建新型服务体系Chase银行用户警惕!支票账户等免费服务或终止谷歌道歉!Chrome浏览器爆重大安全隐患,造成1500万用户密码丢失!| 留美日报AI Trust资讯 | 苹果官宣将接入ChatGPT,马斯克怒了:出卖用户数据!禁止在X和特斯拉使用?“平替版Midjourney”,上线1年超700万用户,生成图片超7亿张华为 Mate 60 系列官方直降 500 元起/阿里:会全额退还部分中小商家年度服务费/自动泊车撞铁板,智己要求用户自行维修澳洲“先买后付”服务将大改!政府拟推新法,新用户需接受信用检查,出示收入证明今天起,这个重磅功能向 ChatGPT Plus 用户全面开放!GPT-4.5 疑似泄露, Altman 在线「吃瓜」用户结构与需求呈现新趋势,《2023互联网医疗服务洞察报告》即将发布早鸟报|东方甄选开烤肠工厂直播;视频号总用户使用时长翻番;快手全年电商GMV达1.18万亿元...对话Traini:4人创业公司用大模型翻译“狗语”,已获得20万用户苹果大模型新成果:GPT-4o扮演用户,在场景中考察大模型工具调用,网友:Siri也要努力 | 开源势如破竹,《王者荣耀》海外版首月冲破5000万用户大关!教堂屋顶被掀飞,暴风雨侵袭纽约1人丧命,近4万用户无电可用。突然爆雷,用户提现失败!有17万用户的理财平台,曾宣称“人人都可以是牧场主”,花1000元领养一只羊就可获收益,出事前还在做推广大西雅图六月风雨交加,数万用户断电,破纪录降雨触发洪水警报,遇电线倒伏做这样能救命!
logo
联系我们隐私协议©2024 bendi.news
Bendi新闻
Bendi.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Bendi.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。