java Netty事件循环如何映射到JVM线程资源?
我有WebFlux应用程序和这个应用程序的docker图像。 通过具有CPU限制的docker运行:
$ docker run -d --name my_webflux_app --cpus="1" -p 8080:8080 sample_webflux_image
此外,我还有应用程序启动时CPU计数的日志
@PostConstruct
public void init() {
log.info("CPU: {}", Runtime.getRuntime().availableProcessors());
}
我看到下面的日志:
--- [main] CPU: 1
my_webflux_应用程序-简单的CRUD应用程序。我注意到,在执行一些基本操作时,会在不同的netty Worker上添加日志,如下所示:
--- [reactor-http-epoll-1] ...
--- [reactor-http-epoll-2] ...
--- [reactor-http-epoll-3] ...
--- [reactor-http-epoll-4] ...
对我来说,它看起来很干净,因为Netty对workers有一个默认值-4。那么,网络工人如何映射到现有的CPU资源呢?又有什么关联呢?有多少种类型的网络工作者(epoll和e.t.c)?谢谢
共 (0) 个答案