关于Netty的ChannelHandlerContext获取问题
需求是一个三方通讯,服务器作为中转,用户通过与服务器的长连接或者是短连接控制与服务器长连接的硬件功能。
与服务器保持长连接的硬件如何直接将channel的ChannelHandlerContext传递给用户操作的代码块呢?我利用了static List<>集合的办法保存ctx,然后用户想要控制硬件就的先获取ctx,再通过inboundHandlerAdatper或者是outboundHandlerAdapter来实现需求,这个是已经实现了的,但是需要对硬件与服务器连接的状态进行保存到数据库,用户再从数据库中获取对应的List<>下标再去获取ctx,最后才是实现功能,中转步骤过多,造成应用资源浪费,有没有直接获取已连接channel的ctx方法,不需要数据库保存状态的实现方法?
项目环境是:Spring Boot+netty4.0,Spring Boot使用gradle+maven构建