dubbo中ConnectionOrderedDispatcher的作用是什么


本篇文章为大家展示了dubbo中ConnectionOrderedDispatcher的作用是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。dubbo-2.7.3/dubbo-remoting/dubbo-remoting-api/src/main/java/or 香港云主机g/apache/dubbo/remoting/transport/dispatcher/connection/ConnectionOrderedDispatcher.javaConnectionOrderedDispatcher实现了Dispatcher接口,其dispatch方法返回的是ConnectionOrderedChannelHandlerdubbo-2.7.3/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/dispatcher/connection/ConnectionOrderedChannelHandler.javaConnectionOrderedChannelHandler继承了WrappedChannelHandler,其构造器创建了corePoolSize及maximumPoolSize均为1,queue为LinkedBlockingQueue的connectionExecutor其connected、disconnected方法均是使用connectionExecutor来执行新创建的ChannelEventRunnable;这两个方法均会先执行checkQueueLength来判断queue大小是否大于queuewarninglimit,大于的话则打印warn日志其received、caught均是通过父类的getExecutorService获取线程池,然后执行创建的ChannelEventRunnable;received方法在捕获到异常时RejectedExecutionException且message是Request,而且request是twoWay的时候会返回SERVER_THREADPOOL_EXHAUSTED_ERRORdubbo-2.7.3/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/handler/ConnectChannelHandlerTest.javaConnectChannelHandlerTest在setup时创建的是ConnectionOrderedChannelHandler,然后进行了test_Connect_Blocked、test_Connect_Biz_Error、test_Disconnect_Biz_Error、test_Connect_Execute_Error、test_Disconnect_Execute_Error、test_MessageReceived_Biz_Error、test_Caught_Biz_Error、test_Received_InvokeInExecuter、test_Received_Event_invoke_directConnectionOrderedDispatcher实现了Dispatcher接口,其dispatch方法返回的是ConnectionOrderedChannelHandler;ConnectionOrderedChannelHandler继承了WrappedChannelHandler,其构造器创建了corePoolSize及maximumPoolSize均为1,queue为LinkedBlockingQueue的connectionExecutorConnectionOrderedChannelHandler的connected、disconnected方法均是使用connectionExecutor来执行新创建的ChannelEventRunnable;这两个方法均会先执行checkQueueLength来判断queue大小是否大于queuewarninglimit,大于的话则打印warn日志ConnectionOrderedChannelHandler的received、caught均是通过父类的getExecutorService获取线程池,然后执行创建的ChannelEventRunnable;received方法在捕获到异常时RejectedExecutionException且message是Request,而且request是twoWay的时候会返回SERVER_THREADPOOL_EXHAUSTED_ERROR上述内容就是dubbo中ConnectionOrderedDispatcher的作用是什么,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注开发云行业资讯频道。

相关推荐: win7系统怎么使用虚拟光驱

这篇文章主要介绍了win7系统怎么使用虚拟光驱,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、在网上下载安装虚拟光驱后, 香港云主机打开虚拟光驱程序,点击左下角的添加按钮,选择需要加载的ISO…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

Like (0)
Donate 微信扫一扫 微信扫一扫
Previous 07/25 16:49
Next 07/25 16:50

相关推荐