【发布时间】:2017-07-09 02:49:12
【问题描述】:
所以我使用 AWS Elastic Beanstalk 来托管我的 Java Spring 应用程序,并且有些请求需要 60 多秒才能完成。我想提高超时上限以便完成这些,所以我开始关注this 教程。
我在 ELB 控制台中成功更改了负载均衡器超时,但在更改 nginx 代理的设置时遇到了问题。本教程建议创建一个名为.ebextensions/nginx-timeout.config 的文件,其中.ebextensions 位于“我的项目的根目录”中。本教程假设我们将 Beanstalk 与 Docker 一起使用,但我不是,所以我找到了 this 链接,该链接建议用这些内容填充 nginx-timeout.config 的内容:
files:
"/tmp/proxy.conf":
mode: "000644"
owner: root
group: root
content: |
proxy_send_timeout 1200;
proxy_read_timeout 1200;
send_timeout 1200;
container_commands:
00-add-config:
command: cat /tmp/proxy.conf >> /var/elasticbeanstalk/staging/nginx/conf.d/elasticbeanstalk/00_application.conf
01-restart-nginx:
command: service nginx restart
我的一个问题是我不知道我的应用程序的根在哪里。我正在使用 Maven 和 Java Spring Boot,所以我的结构如下:
我不确定是否应该将.ebextensions 放在我的pom.xml 文件所在的基本目录中,或者放在其他位置。此外,我部署此应用程序的方法是使用 maven 构建 jar,然后上传 jar,我不确定这是否会改变任何内容。
对这个问题有什么建议吗?我目前也在尝试查看如何通过 ssh 进入我的实例以更改那里的 nginx 服务器的配置,但我不确定这是否可行。
【问题讨论】:
标签: spring maven amazon-web-services nginx timeout