gpt4 book ai didi

java - 如何在 Spring Webflux/WebClient 中设置事件循环池大小?

转载 作者:IT老高 更新时间:2023-10-28 13:46:47 54 4
gpt4 key购买 nike

在Vert.X等multi-reactor框架中我们可以设置事件循环线程的数量,例如:

final VertxOptions vertxOptions = new VertxOptions();
vertxOptions.setEventLoopPoolSize(16);
final Vertx myVertx = Vertx.vertx(vertxOptions);

如何在 Spring Boot 2 WebFlux/WebClient 中进行等效操作?

最佳答案

你有两个选择:

  1. 使用应用事件循环资源配置的定制器覆盖 ReactiveWebServerFactory bean:

    @Bean
    public ReactiveWebServerFactory reactiveWebServerFactory() {
    NettyReactiveWebServerFactory factory = new NettyReactiveWebServerFactory();
    factory.addServerCustomizers(builder -> builder.loopResources(LoopResources.create("my-http", 16, true)));

    return factory;
    }
  2. 或者使用 -Dreactor.ipc.netty.workerCount=16 环境变量。默认情况下,它的值设置为 Math.max(availableProcessors(), 4)。示例:java -jar your-app.jar -Dreactor.ipc.netty.workerCount=16

关于java - 如何在 Spring Webflux/WebClient 中设置事件循环池大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48607114/

54 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com