在适用于 .NET 的 App Engine Flexible 上修改 worker_connections
Modify worker_connections on App Engine Flexible for .NET
我正在 Google App Engine Flexible 上测试 .NET websocket 服务器。随着与服务器的并发连接数增加,我开始在日志中看到连接失败和 4096 worker_connections are not enough
。我登录到该框,可以看到 nginx_proxy
容器具有以下配置:
events {
worker_connections 4096;
multi_accept on;
}
查看文档,我可以看到 PHP Flexible app.yaml
有一个 nginx_conf_override
设置,但我没有看到任何与 .NET 类似的东西。我有哪些增加此值的选择?
更新:
我发现以下 link 建议我可以请求增加 Google 支持。我已发送请求,一旦收到回复,我会在此处报告。
https://issuetracker.google.com/issues/38243437
我收到 Google 支持人员关于此问题的回复:
Unfortunately, the NGINX configuration is fixed and cannot be changed.
虽然他们确实帮我暂时提高了限制
Actually, it's possible to change the worker_connections value for one instance SSHing into the VM. Nginx config is located in /tmp/nginx/nginx.conf and you can change it manually on a single VM instance running the following commands.
However as soon as the VM leaves the debug mode or the VM get's killed the changes you've made will be lost:
sudo su
vi /tmp/nginx/nginx.conf #Make your changes
docker cp /tmp/nginx/nginx.conf nginx_proxy:/etc/nginx/nginx.conf
docker exec nginx_proxy nginx -s reload
出于测试目的,我使用这些步骤将工作人员数量增加到 51200,并确认我的服务能够接收更多连接。不幸的是,这不适用于我们的生产版本,但至少我可以 运行 在制定另一个解决方案时进行测试。
我正在 Google App Engine Flexible 上测试 .NET websocket 服务器。随着与服务器的并发连接数增加,我开始在日志中看到连接失败和 4096 worker_connections are not enough
。我登录到该框,可以看到 nginx_proxy
容器具有以下配置:
events {
worker_connections 4096;
multi_accept on;
}
查看文档,我可以看到 PHP Flexible app.yaml
有一个 nginx_conf_override
设置,但我没有看到任何与 .NET 类似的东西。我有哪些增加此值的选择?
更新:
我发现以下 link 建议我可以请求增加 Google 支持。我已发送请求,一旦收到回复,我会在此处报告。 https://issuetracker.google.com/issues/38243437
我收到 Google 支持人员关于此问题的回复:
Unfortunately, the NGINX configuration is fixed and cannot be changed.
虽然他们确实帮我暂时提高了限制
Actually, it's possible to change the worker_connections value for one instance SSHing into the VM. Nginx config is located in /tmp/nginx/nginx.conf and you can change it manually on a single VM instance running the following commands. However as soon as the VM leaves the debug mode or the VM get's killed the changes you've made will be lost:
sudo su
vi /tmp/nginx/nginx.conf #Make your changes
docker cp /tmp/nginx/nginx.conf nginx_proxy:/etc/nginx/nginx.conf
docker exec nginx_proxy nginx -s reload
出于测试目的,我使用这些步骤将工作人员数量增加到 51200,并确认我的服务能够接收更多连接。不幸的是,这不适用于我们的生产版本,但至少我可以 运行 在制定另一个解决方案时进行测试。