0

当我们在 Verticle 中创建 HTTP 服务器时,是否意味着事件循环线程创建了这个服务器?如果不是,事件循环的工作是什么?谁创建了这个 HTTP 服务器?当我们创建一个顶点的多个实例时,事件循环会发生什么?

4

2 回答 2

0

Event Loop 是 Reactor 设计模式的一种实现。它的目标是不断检查新事件,并且每次有新事件出现时,快速将其分派给知道如何处理它的人。

查看这篇文章了解更多详情: https ://alexey-soshin.medium.com/understanding-vert-x-event-loop-46373115fb3e

于 2021-11-01T08:58:46.640 回答
0

Q1。当我们在 Verticle 中创建 HTTP 服务器时,是否意味着事件循环线程创建了这个服务器?

答:没有

Q2。如果不是,事件循环的工作是什么?

在标准反应器实现中,有一个事件循环线程在循环中运行,当所有事件到达时将所有事件传递给所有处理程序。Vert.x 在这里的工作方式不同。每个 Vertx 实例都维护多个事件循环,而不是单个事件循环。默认情况下,我们根据机器上可用内核的数量来选择数字,但这可以被覆盖。

事件循环线程用于将事件分派给处理程序。

在此处输入图像描述

Q3。谁创建了这个 HTTP 服务器?

答:从 Vertx 实例创建 HTTP 服务器。使用的方法是createHttpServer()

HttpServer server = vertx.createHttpServer();

Q4。当我们创建一个verticle的多个实例时,事件循环会发生什么?

事件循环线程的功能保持不变。对于许多垂直实例,只有更多的事件循环线程。

在此处输入图像描述

图片来自这篇文章,我也建议通过。

于 2021-11-03T01:51:56.223 回答