0

我有一个网关配置为处理一些服务,但是存在一个巨大的性能问题,我不知道如何解决这个问题。这是此特定服务的配置:

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 的直接调用,没有性能问题:

没有网关

为什么会这样?我能做些什么来解决这个问题?

4

1 回答 1

0

最后我不能再使用这个直接通过 Nginx 进行代理了。通过网关发出的任何请求几乎都需要几秒钟,而现在使用 Nginx 作为网关则需要几毫秒。

于 2021-07-14T19:57:22.077 回答