在 TCP 服务器中使用 vertx Vertciles 的有效方法

Efficient way to use vertx Vertciles in a TCP server

我正在处理需要能够管理多达 500 个同时连接的 TCP 服务器。这是一个简单的服务器,等待客户端建立连接。然后,它计算客户端请求的资源,并发送给它。

我决定使用 Vertx,而不是每个连接使用一个线程。

一位同事建议我每个连接使用一个 Verticle。看了documentation,感觉这样做违背了Vertx的原则,相当于一个连接一个线程

但问题是,我真的不知道如何才能用其他方式做到这一点。我可以有不同的 Verticles 来处理不同的操作,但是这些操作在短时间内执行了很多,所以它会涉及大量的 Verticles 创建。就性能而言,它可能会很昂贵。

所以我的问题是:我应该按照同事说的去做吗?如果没有,您有什么建议吗?

我知道在不知道服务器需要做什么的情况下可能很难回答这个问题,但这个问题的重点是了解应该如何使用 Vertx 以使其尽可能高效。我不希望有一个完全符合我需求的答案,但建议会让我走上正轨。

非常感谢!

每个连接不需要一个 Verticle。从一个 Verticle 实例开始,然后根据需要 increase the number of instances(取决于您的硬件)。

vertx-examples 存储库有一个 Echo TCP server and client 可以帮助您入门。