gpt4 book ai didi

java - HTTP请求实时应用,性能技巧

转载 作者:太空宇宙 更新时间:2023-11-04 10:23:30 25 4
gpt4 key购买 nike

我正在使用 Java 的 OkHttp3 将多个 POST 请求发送到同一 REST 端点,该端点是与我位于同一区域的第三方 AWS 服务器。我需要尽快处理这些请求(即使 1 毫秒也算)。

现在我应用的唯一性能技巧非常基本:我使用 HTTP2,因此连接套接字被重用,并且我异步发送请求,因此在发送所有请求之前它不会等待任何响应。

为了提高性能,我还应该考虑哪些其他技巧?

编辑:如果这因任何原因很重要,我目前正在通过 URL 传递所有参数,请求正文为空。我可能会将它们作为 body 的一部分传递,但我武断地决定不这样做。

最佳答案

OkHttp 是低延迟的不错选择。 Netty 可能是高并发的更好选择,但这不是您的用例。

您可能想要测量禁用 gzip 时会发生什么。您需要删除网络拦截器中的 accept-encoding 请求 header 。这可能会使事情变得更快,但只是因为您使用的是快速链接。

要研究的另一件事是禁用 Nagle’s algorithm 。您需要调用 Socket.setTcpNoDelay(),您可以使用自定义 SocketFactory 来执行此操作。

OkHttp 的下一个版本将支持未加密的 HTTP/2。如果您对此表示同意(这几乎总是一个坏主意),那么删除 TLS 可能会给您带来(小) yield 。这里要非常小心;明文通信是个坏消息。

关于java - HTTP请求实时应用,性能技巧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50823554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com