我需要为Heroku上托管的机器人实施分片吗?

时间:2020-08-24 06:21:35

标签: node.js heroku discord.js

我将在Heroku上部署不和谐的bot,但我担心可扩展性。我看到heroku具有自动缩放功能,但是我不知道它是否会处理机器人可扩展性本身,还是我必须在nodeJS中对其进行硬编码并实现分片?

我的目的是使我的机器人具有高度可扩展性,以便它可以轻松扩展以同时处理甚至数百万个服务器,而无需自己进行管理。 Heroku可以为此支持我吗?

2 个答案:

答案 0 :(得分:0)

根据官方Discord.js guide,仅当您处理2500多个服务器时才需要分片。我将我的机器人托管在heroku上,到目前为止,它的连接状态很好,但是它无法处理您所谈论的请求数量(大约200个协会atm的350个活跃用户)。

正如我所说:我不能凭经验说话,但从理论上讲,应该可以很好地完成工作,因为这项工作将在Discord API请求的多个分片和heroku容器之间进行划分。

答案 1 :(得分:0)

有必要在 2,500 个服务器后进行分片,因为代码无法单独为所有这些公会提供服务,我建议您使用分片,尤其是传统类型而不是内部,因为它以可扩展性着称。这将需要对您的代码进行大量更改才能管理多个公会的子进程,但是如果您的机器人不在 2,500 个服务器中,但不要分片,因为您根本不需要分片……您可以阅读有关分片及其样式的更多信息 here