Jetty9源码剖析 - Connector组件 - 概述

转载自ph0ly:http://www.ph0ly.com

一、概念

Connector组件是Jetty整个通信层的实现,通过利用多组件间的协作完成连接的接受、读、写的操作。整个底层实现依赖于Java NIO配合回调函数,打造了一套Jetty特色的通信框架。NIO帮助其完成基础通信,而回调则是通知下游组件进行下一步处理

二、继承体系

Jetty9源码剖析 - Connector组件 - 概述

可以看到Connector侧的组件,继承体系还是相对简单的,不过在解析来的文章Connector不只是以Connector命名的组件,而是包含一些和Connector直接协作的组件,例如EndPoint、EPC等组件。通过它们之间的协作,才能完成这个通信层的搭建。例如ServerConnector会利用SelectorManger分配ManagedSelector,然后让其与客户端通信,而直接与底层Channel通信的EndPoint则会从Channel读数据或写数据,并调用回调通知下游组件