我在GCloud AppEngine标准环境上部署了一个nodejs服务器(graphql)应用程序,偶尔第一个请求失败,但随后的请求(在5秒内)可以正常工作。我正在使用以下配置:
runtime: nodejs10
instance_class: F2
service: ...
env_variables:
...
...
和日志如下(有关404s,请参见最后几行):
OPTIONS 204 310 B 4.1 s Chrome 71 /graphql OPTIONS 204 310 B 4.1 s Chrome 71
OPTIONS 204 310 B 4.1 s Chrome 71 /graphql OPTIONS 204 310 B 4.1 s Chrome 71
[start] 2019/01/18 20:46:21.506468 no entrypoint specified, using default entrypoint: /serve
[start] 2019/01/18 20:46:21.511900 no entrypoint specified, using default entrypoint: /serve
[start] 2019/01/18 20:46:21.539860 starting app
[start] 2019/01/18 20:46:21.540272 Executing: /bin/sh -c exec /serve
[start] 2019/01/18 20:46:21.540122 starting app
[start] 2019/01/18 20:46:21.540403 Executing: /bin/sh -c exec /serve
[start] 2019/01/18 20:46:21.560976 waiting for network connection open. subject:"app/invalid" Address:127.0.0.1:8080
[start] 2019/01/18 20:46:21.561742 waiting for network connection open. subject:"app/valid" Address:127.0.0.1:8081
[start] 2019/01/18 20:46:21.561786 waiting for network connection open. subject:"app/invalid" Address:127.0.0.1:8080
[start] 2019/01/18 20:46:21.562055 waiting for network connection open. subject:"app/valid" Address:127.0.0.1:8081
[serve] 2019/01/18 20:46:21.586374 serve started
[serve] 2019/01/18 20:46:21.586831 args: {runtimeName:nodejs10 memoryMB:256 positional:[]}
[serve] 2019/01/18 20:46:21.587680 serve started
[serve] 2019/01/18 20:46:21.588167 args: {runtimeName:nodejs10 memoryMB:256 positional:[]}
[serve] 2019/01/18 20:46:21.593780 execing to: /bin/sh -c exec node ./dist/index.js
[serve] 2019/01/18 20:46:21.594081 execing to: /bin/sh -c exec node ./dist/index.js
[start] 2019/01/18 20:46:25.122334 wait successful. subject:"app/valid" Address:127.0.0.1:8081 attempts:701 elapsed:3.560382686s
[start] 2019/01/18 20:46:25.122604 starting nginx
Go to http://localhost:8081/graphql to run queries!
[start] 2019/01/18 20:46:25.127939 wait successful. subject:"app/valid" Address:127.0.0.1:8081 attempts:687 elapsed:3.56541476s
[start] 2019/01/18 20:46:25.128135 starting nginx
[start] 2019/01/18 20:46:25.128836 waiting for network connection open. subject:"nginx" Address:127.0.0.1:8080
Go to http://localhost:8081/graphql to run queries!
[start] 2019/01/18 20:46:25.163712 waiting for network connection open. subject:"nginx" Address:127.0.0.1:8080
[start] 2019/01/18 20:46:25.179456 wait successful. subject:"nginx" Address:127.0.0.1:8080 attempts:6 elapsed:50.397788ms
[start] 2019/01/18 20:46:25.184531 wait successful. subject:"nginx" Address:127.0.0.1:8080 attempts:4 elapsed:20.559325ms
2019/01/18 20:46:25 [alert] 33#33: prctl(PR_SET_DUMPABLE) failed (22: Invalid argument)
2019/01/18 20:46:25 [alert] 33#33: prctl(PR_SET_DUMPABLE) failed (22: Invalid argument)
POST 404 505 B 176 ms Chrome 71 /graphql POST 404 505 B 176 ms Chrome 71
POST 404 505 B 185 ms Chrome 71 /graphql POST 404 505 B 185 ms Chrome 71
OPTIONS 204 310 B 4 ms Chrome 71 /graphql OPTIONS 204 310 B 4 ms Chrome 71
POST 200 679 B 73 ms Chrome 71 /graphql POST 200 679 B 73 ms Chrome 71
OPTIONS 204 310 B 3 ms Chrome 71 /graphql OPTIONS 204 310 B 3 ms Chrome 71
POST 200 651 B 61 ms Chrome 71 /graphql POST 200 651 B 61 ms Chrome 71
OPTIONS 204 310 B 4 ms Chrome 71 /graphql OPTIONS 204 310 B 4 ms Chrome 71
OPTIONS 204 310 B 2 ms Chrome 71 /graphql OPTIONS 204 310 B 2 ms Chrome 71
POST 200 677 B 131 ms Chrome 71 /graphql POST 200 677 B 131 ms Chrome 71
POST 200 653 B 127 ms Chrome 71 /graphql POST 200 653 B 127 ms Chrome 71
有人知道会出什么问题吗?谢谢
答案 0 :(得分:0)
我想您是指以下日志条目。您说这种情况偶尔发生,是否有某种发生方式?您的查询是做什么的?从日志中看,这两个请求似乎是部署后的第一个请求,可能由于应用程序未完全提供服务而失败,或者流量仍从先前版本重定向。在应用程序已经部署时或仅在新部署之后,您会遇到这些错误吗?
POST 404 505 B 176 ms Chrome 71 /graphql POST 404 505 B 176 ms Chrome 71
POST 404 505 B 185 ms Chrome 71 /graphql POST 404 505 B 185 ms Chrome 71