gpt4 book ai didi

udp - Netty UDP 服务器引导

转载 作者:行者123 更新时间:2023-12-03 16:06:12 27 4
gpt4 key购买 nike

我发现所有使用 Netty 4.0 的 TCP 服务器实现都使用了 ServerBootstrap 实例。

The biggest and only difference between a server and a client in Netty is that different Bootstrap and Channel implementations are used. Please take a look at the following code:



netty docu谈论一个 TCP 客户端。

但对于 UDP,这句话似乎无关紧要?!我找到了仅使用 Bootstrap 的 UDP 服务器的示例: 1 , 2 , 3

我对此感到很困惑,所以我的两个 问题 是:
  • Bootstrap 类是实现 UDP 服务器的正确入口点吗? 或者我可以使用 ServerBootstrap 吗?
  • 为什么 TCP 有 NioServerSocketChannel.class 和 NioSocketChannel.class,而 UDP 只有一个 NioDatagramChannel.class(没有 NioServerDatagramChannel.class)?


  • 对于 Netty 3.x,显示了 ConnectionlessBootstrap here但是对于 4.0,我找不到类似的东西。

    最佳答案

    根据我的发现:Bootstrap 是 Netty 4.x 中 UDP 服务器的正确入口点

    而且不需要 NioServerDatagramChannel,因为 UDP 服务器为所有客户端打开一个 channel 。

  • ServerBootstrap 允许许多客户端通过其 channel 进行连接。因此 TCP 有一个专用的 ServerSocketChannel。
  • Bootstrap 用于为单个连接创建 channel 。因为 UDP 对所有客户端都有一个 channel ,所以只需要 Bootstrap 是有道理的。所有客户端都绑定(bind)到同一个 channel 。
  • 关于udp - Netty UDP 服务器引导,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37656161/

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