Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 网络通道生命周期_Java_Http_Netty - Fatal编程技术网

Java 网络通道生命周期

Java 网络通道生命周期,java,http,netty,Java,Http,Netty,在阅读了netty指南和示例后,我仍然有一些问题: 我的应用程序与多个第三方端点通信。为此,我使用用Netty实现的http客户端。 所以基本上流程如下 执行操作1的Http调用 --一些业务逻辑处理-- 执行操作2的Http调用 --一些业务逻辑处理-- 执行操作3的Http调用 --一些业务逻辑处理-- 每个操作都在不同的线程中执行 问题1:我是否需要为每个新请求创建并关闭通道,或者我只需要在每个endoint重复使用相同的通道,直到可用为止 问题2:当我与多个系统通信时,我想我必须使用某种

在阅读了netty指南和示例后,我仍然有一些问题:

我的应用程序与多个第三方端点通信。为此,我使用用Netty实现的http客户端。 所以基本上流程如下

  • 执行操作1的Http调用 --一些业务逻辑处理--
  • 执行操作2的Http调用 --一些业务逻辑处理--
  • 执行操作3的Http调用 --一些业务逻辑处理--
  • 每个操作都在不同的线程中执行

    问题1:我是否需要为每个新请求创建并关闭通道,或者我只需要在每个endoint重复使用相同的通道,直到可用为止

    问题2:当我与多个系统通信时,我想我必须使用某种渠道池

    问题3:如果我必须重用通道,如何处理封闭通道。假设有多个线程想要触发对同一通道的http请求,而第一个线程由于连接关闭而失败。我是否需要协调/锁定线程以等待新通道的创建,并仅在新通道再次打开后才允许继续


    问题4:何时我希望每个端点有多个通道?(也许如果我想使用更好的处理器内核?

    这是一个非常好的教程,它展示了如何在引擎盖下工作。您只需要创建一些资源一次。作为线程的事件循环组可以重用。基本上,如果频道设置正确,您不需要担心它。只需使用通道进行读写,或使用处理程序进行工作。完成后,关闭通道,但不要关闭EventLoopGroup,因为您需要将其交给另一个引导。如果要建立大量连接,可以使用通道池,但通常不需要

    我还推荐本指南,它将回答您的其他问题。它告诉您如何从其他线程更好地写入通道,等等


    你的问题是非常具体的。为什么不设置一个测试主方法或一个测试单元,并在运行完这两个链接(如果不是另一个或两个教程的话)后自己尝试一下呢?Netty可能是一只复杂的野兽,你几乎可以做任何你想做的事情,但它确实提供了入门级网络级别所需的一切,而不需要太复杂,也可以看看他们的样品。他们的示例代表了最常见的用例和网络协议的基本级别。

    这是一个非常好的教程,展示了如何在引擎盖下工作。您只需要创建一些资源一次。作为线程的事件循环组可以重用。基本上,如果频道设置正确,您不需要担心它。只需使用通道进行读写,或使用处理程序进行工作。完成后,关闭通道,但不要关闭EventLoopGroup,因为您需要将其交给另一个引导。如果要建立大量连接,可以使用通道池,但通常不需要

    我还推荐本指南,它将回答您的其他问题。它告诉您如何从其他线程更好地写入通道,等等

    你的问题是非常具体的。为什么不设置一个测试主方法或一个测试单元,并在运行完这两个链接(如果不是另一个或两个教程的话)后自己尝试一下呢?Netty可能是一只复杂的野兽,你几乎可以做任何你想做的事情,但它确实提供了入门级网络级别所需的一切,而不需要太复杂,也可以看看他们的样品。他们的示例代表了最常见的用例和网络协议的基本级别