【发布时间】:2017-05-26 20:47:45
【问题描述】:
我正在开发一个单体应用程序。我们的路线图中有一些我认为适合微服务架构的功能,并且正在尝试构建它们。
我的问题:应用程序在高峰时段每秒处理约 150 个请求。这些请求来自始终保持活动状态的原始 TCP/IP 连接。我们有非常严格的延迟要求(我们的大多数请求都会在 25-50 毫秒内得到响应)。每个请求都需要消耗 1 到多个微服务。我担心的是,使用多个 RESTful Web 服务(特别是每次使用服务时创建/销毁连接以及 TLS 握手)会导致处理这些请求的延迟过长。
我的问题:是否有可能(并且是否有最佳实践)在多个线程使用该 Web 服务时保持与一个安静的 Web 服务的连接状态?每个使用 Web 服务的请求都是自包含的,但我们只需保持物理连接处于活动状态。
【问题讨论】:
-
假设你使用 HTTP 作为传输协议,如果客户端和服务器都支持 HTTP 2,你可能会得到你想要的。
标签: java performance web connection microservices