使用Netty处理多协议的方式

35 篇文章 ¥9.90 ¥99.00
面对服务器需要支持多种协议的情况,通过使用Netty并为不同协议分配独立端口来实现解码和处理的分离,简化了逻辑,提高了后期维护的便利性。每个协议对应一个独立的解编码器,通过线程处理各自端口的数据。参考链接提供了更多实现细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景:服务器需要支持多种协议的解析,如何解决呢?一开始以为可以通过netty的解码器,然后根据不同的协议格式来解析判断究竟是什么版本的协议?哪家的协议?但想起来这个逻辑估计会很难完成,而且后期维护和更新会显得复杂,所以想了另外一个办法:不同协议使用不同的端口,比如A协议使用1100端口,B协议使用2200端口,这样就有独立的解编码器,后期维护更新就比较方便。

在这里写贴上部分代码,后期再细化这个思路:

public class TCPServer implements Runnable {
    private int port;
    Logger logger= LoggerFactory.getLogger(TCPServer.class);

    public TCPServer(int port){
        this.port=port;
    }

    public void run(){
        EventLoopGroup bossGroup=new NioEventLoopGroup(1);
        EventLoopGroup workGroup=new NioEventLoopGroup();

        try{
            ServerBootstrap serverBootstrap=new ServerBootstrap();
            //serverBootstrap.ha
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黎仔656

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值