0

我将创建一个电报机器人来同时(每秒)处理 15 万用户。

我将使用 TDLib(因为我确实想面对 Telegram Bot API 每秒约 30 条消息的限制)。

以前我总是使用 Telegram Bot Webhook。我注册了 webhook 以指向我的服务器。我的服务器处理来自 Telegram 的请求并向用户发送消息。我的服务器上没有任何负载。最大加载为每秒 10 或 30 个用户。

现在我将使用 TDLib。所以通过架构进行交互。

交互一、Telegram Webhook + TDLib

它不起作用,因为在 nginx 的日志中,我看到 TDLib 运行时 nginx 没有收到任何 webhook 请求。

交互2. TDLib的几个实例

有用。每个实例都可以发送消息并获取更新。但我担心网络流量,因为每个实例都会获得所有更新。

交互 3. 一个 TDLib 实例(当前选择)

TDLib 的一个实例获取所有更新并将其发送到队列(我们将其称为in.queue)。

我将编写一个程序来处理来自队列in.queue的更新。

队列更新的处理是创建一个响应命令并将其发布到另一个队列(out.queue)。

TDLib 实例监听out.queue并应用命令。


但我想知道在部署到产品之前如何测试我的机器人。

是否有可能以某种方式模拟这种加载(同时有 15 万用户)来测试我的架构?

4

1 回答 1

0

您确定使用 TdLib 而不是 BOT.Api 不会达到电报限制吗?你有什么改善吗?

于 2020-12-04T15:37:57.147 回答