Express Gateway 降级导致请求出现巨大延迟
Express Gateway degraded causing huge delays on requests
我配置了一个网关来处理一些服务,但是存在一个巨大的性能问题,我不知道如何解决这个问题。这是此特定服务的配置:
http:
port: 3020
hostname: 'xxxx.prod.xx.xxx.net'
apiEndpoints:
laPrdTest:
host: 'xxx-xxxxxxxx.xxxxxxxx.com'
paths: '/api/v1/esign/*'
serviceEndpoints:
laPrdTest:
urls:
- http://xxxxxx-app1.prd.xxx.xxxxxxxx.net
- http://xxxxxx-app2.prd.xxx.xxxxxxxx.net
policies:
- basic-auth
- cors
- expression
- log
- jwt
- proxy
- rate-limit
pipelines:
laPrdTest:
apiEndpoints:
- laPrdTest
policies:
- cors:
- log:
- action:
message: ${req.method} ${req.originalUrl} ${JSON.stringify(req.headers)}
- rate-limit:
- action:
max: 50
windowMs: 120000
rateLimitBy: "${req.ip}"
- proxy:
- action:
serviceEndpoint: laPrdTest
changeOrigin: true
查看此 gif 以了解这对性能的影响:
这是直接调用服务 API,没有性能问题:
为什么会这样?
我该怎么做才能解决这个问题?
终于不能用这个了,直接通过Nginx做代理。
通过网关发出的任何请求都需要几秒钟几乎几分钟,现在使用 Nginx 作为网关需要几毫秒。
我配置了一个网关来处理一些服务,但是存在一个巨大的性能问题,我不知道如何解决这个问题。这是此特定服务的配置:
http:
port: 3020
hostname: 'xxxx.prod.xx.xxx.net'
apiEndpoints:
laPrdTest:
host: 'xxx-xxxxxxxx.xxxxxxxx.com'
paths: '/api/v1/esign/*'
serviceEndpoints:
laPrdTest:
urls:
- http://xxxxxx-app1.prd.xxx.xxxxxxxx.net
- http://xxxxxx-app2.prd.xxx.xxxxxxxx.net
policies:
- basic-auth
- cors
- expression
- log
- jwt
- proxy
- rate-limit
pipelines:
laPrdTest:
apiEndpoints:
- laPrdTest
policies:
- cors:
- log:
- action:
message: ${req.method} ${req.originalUrl} ${JSON.stringify(req.headers)}
- rate-limit:
- action:
max: 50
windowMs: 120000
rateLimitBy: "${req.ip}"
- proxy:
- action:
serviceEndpoint: laPrdTest
changeOrigin: true
查看此 gif 以了解这对性能的影响:
这是直接调用服务 API,没有性能问题:
为什么会这样? 我该怎么做才能解决这个问题?
终于不能用这个了,直接通过Nginx做代理。 通过网关发出的任何请求都需要几秒钟几乎几分钟,现在使用 Nginx 作为网关需要几毫秒。