Netty 4. ByteToMessageCodec之后的并行处理

2024-03-01

If a NioEventLoopGroup被用作workerGroup, 之后的消息ByteToMessageDecoder处理程序(对于单个连接)通过以下处理程序以顺序(单线程)方式处理NioEventLoop.

是否有可能让它们在之后由另一个“工人”处理ByteToMessageDecoder处理程序?


是的,只需添加一个ChannelHandler具有特殊的EventExecutorGroup to the ChannelPipeline。例如无序线程池事件执行器 https://netty.io/4.1/api/io/netty/util/concurrent/UnorderedThreadPoolEventExecutor.html (src https://github.com/netty/netty/blob/4.1/common/src/main/java/io/netty/util/concurrent/UnorderedThreadPoolEventExecutor.java).

所以像这样:

UnorderedThreadPoolEventExecutor executorGroup = ...;
pipeline.addLast(executorGroup, new MyChannelHandler());
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Netty 4. ByteToMessageCodec之后的并行处理 的相关文章

  • Micronaut ReadTimeoutException 异常

    我有一个提供 REST API 的 Grails 4 应用程序 端点之一有时会失败 但会出现以下异常 io micronaut http client exceptions ReadTimeoutException Read Timeout
  • netty-daxin-4(http&websocket)

    文章目录 http 服务端 NettyHttpServer HelloWorldServerHandler 客户端 ApiPost
  • 使用 Netty 的多线程 UDP 服务器

    我正在尝试使用 Netty 实现 UDP 服务器 这个想法是只绑定一次 因此只创建一个Channel This Channel仅使用一个处理程序进行初始化 该处理程序通过一个线程在多个线程之间分派传入数据报的处理ExecutorServic
  • 如何使用 netty 通过 HTTP 传输响应

    我正在使用 Netty 3 6 6 我想向调用者发送一个大的响应 我无法将响应正文复制到 ChannelBuffer 中 因为在某些情况下它会非常大 我正在将服务器从CXF迁移到Netty 以前 我只能使用CXF提供的OutputStrea
  • Netty Channel.write 线程安全吗?

    我有一个 Netty 应用程序 我希望有多个线程写入通道 我只是想知道 Channel write 是否线程安全 从代码中可以看出 ChannelOutboundBuffer addMessage 方法本身不是线程安全的 然而 写入通道是
  • 如何在Java中解码http POST数据?

    我正在使用 Netty 并且必须接受并解析 http POST 请求 据我所知 Netty 没有内置对 POST 的支持 只有 GET 的支持 这是一个相当低级的库 处理原始网络操作 使用 servlet 容器 开箱即用地完成所有这些工作
  • Netty-无法访问类 jdk.internal.misc.Unsafe

    当我将 Java 从 8 升级到 11 时 我收到来自 Netty 的错误 jdk internal misc Unsafe 详细信息如下 我知道这是一条调试级别消息 我可以更改日志级别以忽略它 但我不确定当我忽略它时是否会出现其他问题 例
  • 出站 ChannelHandler 的捕获所有异常处理

    在 Netty 中 您有入站和出站处理程序的概念 只需在管道的末尾 尾部 添加一个通道处理程序并实现一个捕获所有入站异常处理程序即可实现exceptionCaught覆盖 如果未沿途处理 沿入站管道发生的异常将沿着处理程序传播 直到遇到最后
  • 每个连接的 Netty 多线程

    我是 Netty 新手 我想开发一个服务器 旨在接收来自可能少数 假设最多有 2 个 客户端的请求 但是每个客户端都会不断地向服务器发送许多请求 服务器必须处理此类请求并响应客户端 因此 在这里我假设即使我配置了多个工作线程 它也可能没有用
  • 何时在 keepalive 打开的情况下调用channelInactive?

    我有一个 SimpleChannelInboundHandler 处理一些 http 请求 CacheServerHandler extends SimpleChannelInboundHandler
  • 无法加载库:[netty_tcnative_linux_arm_32、netty_tcnative_linux_arm_32_fedora、netty_tcnative_arm_32、netty_tcnative]

    我正在尝试在 raspberry pi modal 3 上使用 jar 运行 java 应用程序 我无法解决此问题 有人可以建议我如何在树莓派上进行这项工作吗 在 pom 中 我包含了 google cloud speech 依赖项 0 5
  • ChannelOption.SO_BACKLOG 的作用是什么?

    option ChannelOption SO BACKLOG 100 Netty 4 升级文档中显示 你能解释一下它的作用吗 Thanks 它是一个传递的套接字选项 用于确定排队的连接数 http docs oracle com java
  • 客户端 ECC SSL 证书包含“未知命名曲线”

    问题背景 我正在一个现有的库中工作 该库在远程服务器上使用 SSL 和 netty 框架 我遇到 SSL TLS 握手错误 错误如下 javax net ssl SSLProtocolException java io IOExceptio
  • Netty如何使用线程池?

    您能解释一下 Netty 如何使用线程池来工作吗 我是否理解正确 有两种线程池 老板和工人 Boss 用来做 I O worker 用来调用用户回调 messageReceived 来处理数据 这是来自 NioServerSocketCha
  • Netty 4.0多端口,每个端口有不同的协议

    我想 netty 是我所知道的最好的 java 网络框架 在阅读并尝试一些示例后我有疑问 1 使用netty 4 0创建具有不同协议的多端口网络服务器的最佳方法是什么 每个服务器创建 EventLoopGroup bossGroup new
  • Netty:如何处理从 ChunkedFile 接收到的块

    我是 netty 新手 我正在尝试将分块文件从服务器传输到客户端 发送块工作得很好 问题在于如何处理接收到的块并将它们写入文件 我尝试的两种方法都会给我带来直接缓冲区错误 任何帮助将不胜感激 Thanks Override protecte
  • netty ChannelInboundHandlerAdapter 将帧裁剪为 ~1500 字节

    我已经实现了一个服务器应用程序 它使用 netty 框架通过 ChannelInblundHandlerAdapter 读取传入的字节 如标题所示 我的问题是 我不定期地从客户端获取内容 我认为这些内容在 1 500 字节后被剪切 例如 在
  • Java 互操作——Netty + Clojure

    我正在尝试通过 clojure 使用 netty 我可以启动服务器 但是它无法初始化接受的套接字 下面分别是错误消息和代码 有谁知道什么是 或可能是错误的 我相信问题在于 Channels pipeline server handler T
  • 为什么我们真的需要多个 Netty boss 线程?

    我真的很困惑老板组的线程数量 我无法弄清楚我们需要多个老板线程的场景 在Boss 组是否需要多个线程 https stackoverflow com questions 22280916 do we need more than a sin
  • HashedWheelTimer 与 ScheduledThreadPoolExecutor 相比以获得更高的性能

    我正在考虑如果您需要在一台机器上的 jvm 内尽可能快地调度大量 非阻塞 任务 则应使用哪种计时器实现 我学过ScheduledThreadPoolExecutor and HashedWheelTimer来源 轮计时器一般文档 和以下是基

随机推荐

  • 如何使用 c# .net 删除前缀

  • Shibboleth 成功登录后自定义重定向

    我需要在 Shibbolethlogin 之后和重定向到 SP url 之前执行操作 对我来说 最好的解决方案是 Shib 页面登录 gt 登录正常 gt 重定向到我的自定义页面 gt 重定向到 sp url 如果可能的话我该怎么做 有可能
  • 是否可以在 JavaScript 中确定命名窗口是否打开?

    我正在开发一个站点间单点登录项目 并且遇到了一个相当小的问题 当用户注销 父 站点时 需要在包含 子 站点的弹出窗口中加载特定页面 但是 我无法存储对返回值的引用window open 因为必须允许用户在注销之前在每个站点上导航到他们喜欢的
  • 如何从系统函数调用中杀死后台进程

    如何杀死使用 C 语言中的系统函数调用执行的后台进程 例如 我有一个编译的应用程序 称为 fooprocess 然后我想编写一个程序 使用系统函数在后台执行 fooprocess 应用程序 请参阅下面的代码 const char app f
  • 如何将第 3 方 JAR 打包到 EJB jar 中?

    我有一个旧的 J2EE 应用程序 J2EE 1 3 它打包到 EAR 中 并且在 EAR 中 有 WAR 和 EJB JAR 现在 其中一个 EJB JAR 需要引用一些第 3 方库 JAR 那么打包这些 JAR 的最佳位置是什么以及如何打
  • UITableView 部分标题视图在滚动时消失

    我目前在 UITableView 中使用了一些自定义节标题视图 加载 UITableView 时视图会出现 但滚动时会消失 我看过这篇文章 但它似乎已经过时了 tableView 部分标题消失 SWIFT https stackoverfl
  • 如何在 R 中绘制美国各州?

    我可以在整个美国地图上绘制特定州的数据 但我只想用数据绘制州地图 俄克拉荷马州 我怎样才能在R中做到这一点 ggplot geom polygon data all states aes x long y lat group group c
  • 多处理和并行处理之间的比较

    有人能告诉我多处理和并行处理之间的确切区别吗 我有点困惑 感谢您的帮助 多重处理 多重处理是使用两个或多个中央处理单元 单个计算机系统中的 CPU 该术语还指 系统支持多个处理器和 或的能力 在他们之间分配任务的能力 并行处理 在计算机中
  • 如何知道其他线程是否完成?

    我有一个对象 其方法名为StartDownload 启动三个线程 当每个线程执行完毕时如何收到通知 有没有办法知道一个 或全部 线程是否已完成或仍在执行 您可以通过多种方式执行此操作 Use 线程 join http java sun co
  • Rollup - 允许 :scss 文件中的导出语句导入到 js 中

    我们有一个用 Rollup 构建的 Vue 组件库 开发还处于早期阶段 但到目前为止一切进展顺利 除了这一件事 我们无法从 scss 文件中导出 SASS 变量并将它们导入到 js 文件中 我们习惯于使用 exportWebpack的声明s
  • TextView 是否缩放其字体大小以填充父级?

    有没有办法让 TextView 选择字体大小 使其填充可用的任何空间 例如
  • 如何在 Visual Studio IDE 中关闭显示空白字符

    我不知道我做了什么 但我不知道如何摆脱左边的那些箭头 CTRL R CTRL W Toggle showing whitespace 或在编辑菜单下 编辑 gt 高级 gt 查看空白 顺便说一句 您似乎也在使用选项卡 通常的做法是让 IDE
  • void 函数 Swift3 中出现意外的非 void 返回值

    我有一个返回类对象或 nil 的函数 该函数的目的是检查是否Chat存在 聊天 ID 存储在 MySQL 中 如果 ID 存在 我会执行 Firebase 引用来获取快照 然后获取对象 如果 ID 不存在 则返回 nil func find
  • 是否可以在 XPath 中进行“不”匹配?

    是否可以创建一个匹配所有非特定名称的子节点的 XPath 表达式 例如 a b b a
  • 我收到 java.lang.NoClassDefFoundError: org/springframework/web/context/WebApplicationContext

    我在类路径中添加了 spring web 4 0 jar 它包含类 org springframework web context WebApplicationContext 但是当我尝试在 Eclipse 中运行它时 它显示了一个错误 o
  • 论坛/论坛是在大型 PHP 框架之一之上编写的

    我正在寻找一个新的论坛软件 线程 或公告板 平面 分区 我想知道是否有基于大型 PHP 框架之一的实现 CodeIgniter Kohana Yii CakePHP ZF Seagull Fusebox Symfony eZ Prado 或
  • 接收缓冲区的限制

    我通过以下方式与客户端建立了连接 gen tcp listen 1234 binary packet 0 reuseaddr true active false recbuf 2048 此代码执行消息处理 loop Socket gt in
  • 为什么我们必须在 Django 设置中提供 WSGI_APPLICATION 变量

    我是一名 Django 开发新手 所以如果这个问题没有意义 请原谅我 我们提供一个变量叫做WSGI APPLICATION在 django 设置中ROOT URLCONF和一些其他设置变量 我们也在 wsgi py 文件中提供设置文件路径
  • NSTableView 中 NSTextFieldCell 的自定义字段编辑器

    我有一个习惯NSTableView子类充满了几个自定义NSTextFieldCell子类 我希望能够使用箭头键更改编辑的单元格 我可以通过创建自定义字段编辑器 通过子类化NSTextView 并从窗口委托返回它 如下所示 id window
  • Netty 4. ByteToMessageCodec之后的并行处理

    If a NioEventLoopGroup被用作workerGroup 之后的消息ByteToMessageDecoder处理程序 对于单个连接 通过以下处理程序以顺序 单线程 方式处理NioEventLoop 是否有可能让它们在之后由另