1

我们已经将一些微服务部署到 AWS kubernetes 集群中。应用架构的高层消息流如下。

客户端应用程序 -> AWS API 网关 -> Istio 代理 -> 微服务

在从客户端应用程序(用 GoLang 编写)进行一些性能测试时,不同微服务的并发负载约为每秒 20 个请求(所有微服务具有相同的主机和不同的路径,如https://aws-api-gateway.com/ service1https://aws-api-gateway.com/service2)我们在客户端应用程序中间歇性地遇到以下错误。

Error while signing Post "https://aws-api-gateway/service1/v1/client/payload/sign": read tcp 192.168.1.77:51734->54.xxx.xxx.xx:443: read: connection reset by peer

当错误发生时,它会成组发生,就像我们看到大约 10 个请求被“读取:对等连接重置”拒绝。

客户端应用程序具有 MaxIdleConns=100 和 MaxConnsPerHost=100 的 http 连接池

我们已经确认端点没有任何速率限制设置(如果超过速率限制,错误将是http响应代码)

此错误的可能根本原因是什么。

4

1 回答 1

0

我想说,首先,您需要找出这些错误在您的基础设施中发生的位置。您可以使用 Amazon CloudWatch ( https://aws.amazon.com/cloudwatch/)、Prometheus等监控工具。一旦确定问题出在哪里,您就可以尝试找出原因。

于 2020-03-28T01:10:07.160 回答