1

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

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

一位同事建议我每个连接使用一个verticle。阅读文档,我感觉这样做会违反 Vertx 的原则,并且相当于每个连接执行一个线程。

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

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

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

非常感谢!

4

1 回答 1

3

每个连接不需要一个verticle。从一个 Verticle 实例开始,然后根据需要增加实例数量(取决于您的硬件)。

vertx-examples 存储库有一个Echo TCP 服务器和客户端来帮助您入门。

于 2018-06-05T09:47:39.120 回答