宜人贷蜂巢API网关技能解密之Netty行使实践
API网干体系行使netty自带的线程池,共有三组线程池,别离为bossGroup、workerGroup和executorGroup(行使在channelInitializer中,本文暂不作先容)。个中,bossGroup用于吸取客户端的TCP毗连,workerGroup用于处理赏罚I/O、执行体系task和按时使命,executorGroup用于处理赏罚网关营业加解密、限流、路由,及将哀求转发给后端的抓取处事等营业操纵。 六、Channel与线程池的绑定 ServerBootstrap初始化后,通过挪用bind(port)要领启动Server,bind的挪用链如下:
个中,ChannelFuture regFuture = config().group().register(channel);中的group()要领返回bossGroup,而channel在serverBootstrap的初始化进程指定channel为NioServerSocketChannel.class,至此将NioServerSocketChannel与bossGroup绑定到一路,bossGroup认真客户端毗连的成立。那么NioSocketChannel是怎样与workerGroup绑定到一路的? 挪用链AbstractBootstrap.initAndRegister -> AbstractBootstrap. init-> ServerBootstrap.init ->ServerBootstrapAcceptor.ServerBootstrapAcceptor ->ServerBootstrapAcceptor.channelRead:
个中,childGroup.register(child)就是将NioSocketChannel与workderGroup绑定到一路,那又是什么触发了ServerBootstrapAcceptor的channelRead要领? (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |