当前位置: 首页 > 知识库问答 >
问题:

Netty处理程序对于每个连接都是唯一的吗?

司徒良哲
2023-03-14

我一直在查看Netty网站上的代理服务器示例:

示例源代码处理程序有一个volatile变量

private volatile Channel outboundChannel;

共有1个答案

高建本
2023-03-14

每个连接创建一个管道,但管道可以同时包含共享和独占处理程序。有些处理程序不保持状态,单个实例可以插入到多个[全部]管道中。Netty提供的可以共享的处理程序用ChannelHandler.Sharable注释。请参阅本教程中的共享和独占通道处理程序一节。

 类似资料:
  • 我有一个服务器和一个客户端,它们有自己的引导程序。我的问题是,不同的连接用于不同的目的。一个用于控制通道(与服务器通信并返回),然后建立其他连接以进行数据传输。我以编程方式将idlestate处理程序仅添加到需要它的连接管道中,但在调试之后,我发现无论连接如何,通道总是相同的。因此,我的数据传输正在影响生存。我通过向netty IdleStateHandler添加调试并输出通道id看到了这一点。很

  • 我正在使用netty构建一个应用程序。在应用程序中,我需要处理传入和传出的消息。要求是应用程序将发送的任何消息都应由特定的处理程序处理,进入应用程序的任何消息都应由另一个特定的处理程序处理。但是,我希望在两个处理程序之间交换消息,以便能够跟踪发送的消息响应,因为请求消息也将发送到应用程序。 请任何想法hwo实施这样的要求。这个问题听起来可能不相关,但这就是我得到的,我还不是一个网络极客。我读到的关

  • 我试图使用一个简单的服务器-客户端应用程序(代码见下文)进入Netty。 我在与两个问题作斗争: null KJ 这就是服务器的创建方式: 其中一个处理程序类(FeedbackServerHandler执行完全相同的操作,但解析为整数):

  • 问题内容: 每个Java程序都要求至少存在一个类。 以上说法总是正确的吗? 问题答案: 是的,您至少需要一个类才能拥有一个程序,但是 不需要 ,您不需要任何方法(与其他答案相反)。 需要一个类的原因是因为在Java中,所有代码都在类内部。因此,要获取任何代码,您需要一个类。但是,代码不一定需要包含在方法中。它也可以在初始化器中。因此,这是一个没有方法的完整Java程序: 那给… 编辑:从Java

  • 我正在处理5个自定义对象,需要能够将它们保存(序列化)到文件中,并在以后重新加载它们。所有对象都实现可序列化,我可以单独保存和重新加载它们。 这个程序基本上是在模仿关系数据库,但是我不能使用实际的数据库。 我的潜在问题是,一个或两个对象包含其他对象。从我的测试来看,子对象似乎全部保存在主对象中。 ... 当一个foo1对象被反序列化时,它会正确地重新创建自己,包括任何foo2对象。 然而,我认为f