【发布时间】:2013-11-02 17:28:53
【问题描述】:
目前我正在使用 netty 实现一个简单的 Http Server。我想知道要使用多少管道。例如,我应该在管道中进行身份验证吗?我应该确定在管道中路由请求的位置吗?
我知道改变流水线的结构是没有效果的,但是分散处理有什么好处呢?
【问题讨论】:
目前我正在使用 netty 实现一个简单的 Http Server。我想知道要使用多少管道。例如,我应该在管道中进行身份验证吗?我应该确定在管道中路由请求的位置吗?
我知道改变流水线的结构是没有效果的,但是分散处理有什么好处呢?
【问题讨论】:
入站消息在网络线程中处理,任何其他活动都将阻止通过此通道接收和发送其他消息。 可能将反序列化仅留在管道中并在单独的应用程序线程中执行其他任务是合理的。
【讨论】:
使用多个模块化ChannelHandlers 实现服务器的优势在于它鼓励关注点分离。尽管更长的管道会产生更多的开销,但您应该考虑到这实际上是一个权衡问题。此外,即使管道配置的运行时操作可能很昂贵,只要您必须经常操作管道,它不应该非常昂贵。
【讨论】: