Я пишу http-сервер с высоким qps и низкой задержкой в Netty.
Я попытался найти документацию по Netty, но она меньше, и не так много полноценных примеров Netty HTTP с настройкой конфигурации. И ресурсы на Netty доступны гораздо меньше онлайн. Поэтому нужны некоторые ресурсы или конфигурации, которые должны быть в идеальной производственной среде.
У меня 8-ядерный 16 ГБ блок. Он имеет 5-10 кбит / с и 10kb json размер тела запроса.
В настоящее время я сохранил различные группы событий для ввода-вывода (размер 24 потока) и рабочих потоков (размер 48 потоков).
Ниже приведены несколько конфигов:
bootstrap = bootstrapFactory.newServerBootstrap(24, 48);
bootstrap.option(ChannelOption.SO_RCVBUF, 1048576);
bootstrap.option(ChannelOption.TCP_NODELAY, true);
bootstrap.option(ChannelOption.CONNECT_TIMEOUT_MILLIS, 30000);
bootstrap.option(ChannelOption.SO_BACKLOG, 4096);
bootstrap.option(ChannelOption.SO_SNDBUF, 1048576);
bootstrap.option(ChannelOption.SO_REUSEADDR, true);
bootstrap.option(ChannelOption.ALLOCATOR, PooledByteBufAllocator.DEFAULT);