了不起的蕾欧娜 2021-07-27 17:50 采纳率: 0%
浏览 59
已结题

netty怎么连接多个websocket?刚接触netty,不知道怎么写

@Override
        protected void initChannel(SocketChannel ch) throws Exception {
            //流水线管理通道中的处理程序(Handler),用来处理业务
            //http编解码器
            ch.pipeline().addLast(new HttpServerCodec());
            ch.pipeline().addLast(new ObjectEncoder());
            //以块的方式来写的处理器
            ch.pipeline().addLast(new ChunkedWriteHandler());
            /*
             * 说明
             * 1、http数据在传输过程中是分段的,HttpObjectAggregator可以将多个段聚合
             * 2、当浏览器发送大量数据时,就会发送多次http请求
             */
            ch.pipeline().addLast(new HttpObjectAggregator(8192));
            /*
            说明:
            1、对应webSocket,它的数据是以帧(frame)的形式传递
            2、浏览器请求时 ws://localhost:58080/xxx 表示请求的uri
            3、核心功能是将http协议升级为ws协议,保持长连接
            */
            ch.pipeline().addLast(new WebSocketServerProtocolHandler(webSocketPath, WEBSOCKET_PROTOCOL, true, 65536 * 10));
            //自定义的handler,处理业务逻辑
            ch.pipeline().addLast(webSocketHandler);
        }
    });
  • 写回答

2条回答 默认 最新

  • 了不起的蕾欧娜 2021-07-28 10:58
    关注

    最终还是改了写法,使用springboot去整合websocket,没有使用netty

    评论

报告相同问题?

问题事件

  • 系统已结题 8月4日
  • 创建了问题 7月27日

悬赏问题

  • ¥15 Arduino的wifi连接,如何关闭低功耗模式?
  • ¥15 Android studio 无法定位adb是什么问题?
  • ¥15 C#连接不上服务器,
  • ¥15 angular项目错误
  • ¥20 需要帮我远程操控一下,运行一下我的那个代码,我觉得我无能为力了
  • ¥20 有偿:在ubuntu上安装arduino以及其常用库文件。
  • ¥15 请问用arcgis处理一些数据和图形,通常里面有一个根据点划泰森多边形的命令,直接划的弊端是只能执行一个完整的边界,但是我们有时候会用到需要在有很多边界内利用点来执行划泰森多边形的命令
  • ¥30 在wave2foam中执行setWaveField时遇到了如下的浮点异常问题,请问该如何解决呢?
  • ¥750 关于一道数论方面的问题,求解答!(关键词-数学方法)
  • ¥200 csgo2的viewmatrix值是否还有别的获取方式