一个请求的所有 Zuul 过滤器都在同一个线程中执行吗?

Are all Zuul filters for one request executed in same thread?

我有一个基于 netflix Zuul 的代理服务。对于来自我的自定义过滤器或 Zuul 内置过滤器的任何日志,我希望有一个名为 Flow-Id 的请求 header 作为我日志的一部分。我可以通过使用前置过滤器在 MDC 上下文中设置此 header 的值来实现。但这只有在所有过滤器都在同一个线程中执行时才有效。

一个请求的所有Zuul过滤器都是在同一个线程中执行的吗? 当这个请求仍在进行时,这个线程 运行 还会有其他事情吗?

我查看了代码,发现 Zuul 代理正在使用 servlet。 spring 云将此 servlet 包装在 ServletWrappingController 中。

所以为了回答我自己的问题,所有过滤器都在一个线程中执行。

并且为了确保尽早设置 MDC 上下文,我在 servlet 过滤器中进行了设置并添加了一个 spring bean。