Netty 4.0多端口,每个端口有不同的协议

2024-03-07

我想 netty 是我所知道的最好的 java 网络框架,在阅读并尝试一些示例后我有疑问:

1. 使用netty 4.0创建具有不同协议的多端口网络服务器的最佳方法是什么?

每个服务器创建:

EventLoopGroup bossGroup = new NioEventLoopGroup(); // (1)

EventLoopGroupworkerGroup = new NioEventLoopGroup();

ServerBootstrap b = new ServerBootstrap(); // (2)

每个服务器在线程内运行

那是正确的方法吗?

2.Websocket服务器

如何保护跨源情况下的 Websocket 服务器?我对此没有任何参考

非常感谢您的帮助,

Regards

BC,


正如诺曼所说,重要的是您需要共享事件循环组,这样您就不会创建太多线程。只要共享事件循环组,就可以创建任意数量的事件循环组ServerBootstrap如您所愿:

EventLoopGroup bossGroup = new NioEventLoopGroup(numBossThreads);
EventLoopGroup workerGroup = new NioEventLoopGroup(numWorkerThreads);

ServerBootstrap sb1 = new ServerBootstrap();
sb1.group(bossGroup, workerGroup);
...
sb1.bind();

ServerBootstrap sb2 = new ServerBootstrap();
sb2.group(bossGroup, workerGroup);
...
sb2.bind();

ServerBootstrap sb3 = new ServerBootstrap();
sb3.group(bossGroup, workerGroup);
...
sb3.bind();

The bossGroup用于接受传入的连接,并且workerGroup用于处理接受的连接bossGroup。请做一些性能测试并指定最佳的numBossThreads and numWorkerThreads.

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

Netty 4.0多端口,每个端口有不同的协议 的相关文章

随机推荐