首页 > 解决方案 > 在 App Engine Flexible for .NET 上修改 worker_connections

问题描述

我正在 Google App Engine Flexible 上测试一个 .NET websocket 服务器。随着与服务器的并发连接数增加,我开始4096 worker_connections are not enough在日志中看到连接失败。我登录到盒子,可以看到nginx_proxy容器有以下配置:

events {
  worker_connections 4096;
  multi_accept on;
}

查看文档,我可以看到 PHP Flexibleapp.yaml有一个nginx_conf_override设置,但我没有看到任何类似的 .NET 设置。我有哪些增加这个价值的选择?

更新:

我发现以下链接表明我可以向 Google 支持请求增加费用。我已经发送了一个请求,一旦我收到回复,我会在这里报告。 https://issuetracker.google.com/issues/38243437

标签: google-app-engineapp-engine-flexible

解决方案


我从 Google 支持人员那里收到了有关此问题的回复:

不幸的是,NGINX 配置是固定的,无法更改。

他们确实给了我一些帮助,暂时提高了限制

实际上,可以更改通过 SSH 连接到 VM 的一个实例的 worker_connections 值。Nginx 配置位于 /tmp/nginx/nginx.conf 中,您可以在运行以下命令的单个 VM 实例上手动更改它。但是,一旦 VM 离开调试模式或 VM 被杀死,您所做的更改就会丢失:

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 以进行测试,并确认我的服务能够接收更多连接。不幸的是,这不适用于我们的生产版本,但至少我可以在制定另一个解决方案时运行测试。


推荐阅读