阅读 114

KafkaServer类比电信服务中心

SocketServer相当于一个电信服务中心,Acceptor 线程相当于一个接线人员,负责接线。
SocketChannel相当于一个建立好的传声筒,Processor相当于客服人员,负责处理用户通过SocketChannel这个传声筒发送过来的技术问题(读写请求)。Processor并不懂技术(如何处理读写请求),所以当他监听到SocketChannel发送过来的技术问题(请求请求)时候,他把这个请求放到RequestChannel中去,RequestChannel相当于是客服链接后台专业电信技术人员的一条传声筒。
后台的专业电信技术人员叫KafkaRequestHandler,后台由于不止一个专业电信技术人员,他们共同组成了一个技术服务组(KafkaRequestHandlerPool)。这里是真正处理Socket发来的请求的地方。技术人员(KafkaRequestHandler)从这个RequestChannel中取出一个技术问题。查找专业技术文档库(调用KafkaApis接口)完成这个问题,然后把答案(响应)写到RequestChannel响应队列中去。Processor看到RequestChannel中有答案的时候,就会把这个答案通过SocketChannel这个传声筒发送给提问的用户。

原文:https://www.cnblogs.com/lukairui/p/14842601.html

文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐