从日志中[ctor-http-nio-X]和[s1-io-Y]之间的Spring Webflux,Netty反应堆核心

问题描述

关于Spring Webflux,我有一个小问题,尤其是我们如何解释来自Netty反应堆核心(事件循环模型)的日志。

在旧的基于MVC线程的应用程序中,我们可以轻松地在log4j + Sleuth中看到如下日志: 2020-09-07 14:48:31.653信息[,3fe7073dbc0a2c8f,3fe7073dbc0a2c8f,true] 13704 --- [ some-thread-id ]

Spring Webflux基于事件循环,并使用Cores而不是线程。 在相同的设置log4j + Sleuth中,我们可以轻松看到类似以下内容

2020-09-07 14:48:31.653信息[,3fe7073dbc0a2c8f,3fe7073dbc0a2c8f,true] 13704 --- [ctor-http-nio-2]记录了一些compute1 2020-09-07 14:48:31.653 INFO [,3fe7073dbc0a2c8f,3fe7073dbc0a2c8f,true] 13704-[ctor-http-nio-2]记录了一些compute2 2020-09-07 14:48:31.653信息[,3fe7073dbc0a2c8f,3fe7073dbc0a2c8f,true] 13704-[ctor-http-nio-2]记录了一些compute3 2020-09-07 14:48:31.654信息[,3fe7073dbc0a2c8f,3fe7073dbc0a2c8f,true] 13704-[ctor-http-nio-2]记录了一些compute4 2020-09-07 14:48:32.559信息[,3fe7073dbc0a2c8f,3fe7073dbc0a2c8f,true] 13704-[ctor-http-nio-2]记录了一些compute5

这可能只是运气,但是nio-X之后的实际数量永远不会高于机器中存在的核心数量

问题1: 我们可以说“ [ctor-http-nio-X]的核心X在进行计算吗?”

问题2: 但是,有时,就像发生数据库调用时一样,我看到的是:

020-09-07 14:48:35.630信息[,3fe7073dbc0a2c8f,3fe7073dbc0a2c8f,true] 13704 --- [ctor-http-nio-9]记录了一些compute1 2020-09-07 14:48:35.868信息[,3fe7073dbc0a2c8f,3fe7073dbc0a2c8f,true] 13704-[ctor-http-nio-9]记录了一些compute2 2020-09-07 14:48:36.058信息[,3fe7073dbc0a2c8f,3fe7073dbc0a2c8f,true] 13704-[s1-io-3]-登录Flux.save

2020-09-07 14:48:37.678信息[,3fe7073dbc0a2c8f,3fe7073dbc0a2c8f,true] 13704 --- [ctor-http-nio-9]记录了一些compute3

我们看到这个奇怪的“ s1-io-9”,请问这意味着什么? 我们如何解释它?事件循环中的另一个核心正在处理这个问题,而原始核心正在发布?

感谢您的帮助

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)