我有一个流利的服务器,平均处理 1000 个请求/秒。该服务器由 32 个 CPU 组成。在这个服务器上运行着 32 个具有相同配置的 fluentd docker 容器。服务器的入口点是一个 nginx 作为负载均衡器,配置了循环算法并将其发送到不同的容器。容器和 nginx 都监听 24224/tcp。
该节点的输入是 6 个使用fluent-logger-csharp发送到 fluentd 服务器的C# 应用程序。因此,对于每个应用程序打开一个到 Fluentd 服务器的连接,由于流量较大,应用程序保持打开套接字。这导致 32 个 docker 中只有 6 个正在处理请求。
如何在不修改 C# 客户端的情况下更好地利用服务器利用率?