# Netty4Demo **Repository Path**: chenmutime/Netty4Demo ## Basic Information - **Project Name**: Netty4Demo - **Description**: netty4.1项目示例,包括连接池 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2017-01-06 - **Last Updated**: 2021-09-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # netty4 使用netty4.1内置的池工具构建的连接池
1、配置多地址
2、初始化池操作
3、心跳功能
4、多种协议方式(https、http)
5、添加类似于FutureTask中的get()方法用于获取返回结果(可指定时间)
原理分析:
1)在NettyClientPoolFactory的构造器中添加服务端地址、端口以及服务名称,取得一个DefaultChannelPoolHandler,
分别传入三个boolean类型参数,分别表示是否支持https、http、心跳
2)在ClientTest类中进行测试i,在初始化NettyClientPoolFactory后,根据服务名称取得对应池————ChannelPool,
以此获取一个Future。随后,调用类中方法构建http(s)请求信息,和Future一起作为参数,传入NettyClient类中的sendMessage方法,
并获得一个DefaultGenericFutureListener返回参数 3)在发送消息后,你可以处理其他任务,或者直接使用DefaultGenericFutureListener调用get()方法阻塞直到获取到你想要参数。
当然,是不建议这么做的,最好在get()方法中传入相应参数,指定最长等待时间及时间单位。 4)最后,你需要使用ChannelPool释放掉Future.get(),因为你后续可能重用这个连接