【发布时间】:2019-07-28 20:30:40
【问题描述】:
我有一个 API 网关 G 连接多个服务 S1, S2 ... 等等。
流量模式是如此独特,以至于在某些时候我会遇到流量激增(10M 请求/分钟),每个人都试图访问来自 S1 的内容。所以S1 开始变得有点慢,因为我的网关G 在连接S1 时开始用尽所有套接字连接,现在无法再连接其他服务了。
尝试访问对我们的业务至关重要的其他服务(长尾)(例如 S2)的用户无法访问它们,因为 G 没有任何可用的套接字。
我们尝试过的事情——
扩展 API 网关: 这作为临时解决方案很好,但很难预测激增的流量并显着增加我们的成本。
增加套接字:我们已经在我们的服务器上最大化了这个设置。
我们是否可以进行任何其他优化或架构更改以确保系统响应更好。
更新:
- 我们的堆栈主要是 Node.js
【问题讨论】:
-
澄清:听起来你的 API 网关不是我最初假设的——Amazon API Gateway——因为它不会用完套接字。那是对的吗?如果不是,那是什么?它正在运行什么软件,它在您的堆栈中执行什么功能?
标签: amazon-web-services amazon-ec2 microservices scale api-gateway