zoukankan      html  css  js  c++  java
  • Kafka客户端源码总结

    客户端源码总结

    1. 把核心流程封装在一个方法里面,代码流程是比较清晰的

    2. 自定义异常,异常的提示很清晰.

    3. 底层代码异常往上抛,核心逻辑捕获异常,对异常进行处理.

    4. 面向对象的思想还是不错的.

    5. 自己设计高性能的多线程结构(线程安全,读多写少)

    6. 高并发的情况下,为了性能(线程安全),尽量缩小锁的粒度.分段加锁.

    7. 为了减少GC,设置了内存池.

    8. 客户端发送消息,支持异步,异步化的设计(回调函数),提升了性能.

    9. kafka的网络设计,一个客户端是管理多个网络的.

    10. 批处理的设计(吞吐量上升)

    11. 多个请求,把发往同一个broker请求合并在一起(减少网络请求)

    12. 响应的处理(考虑的很全面)

    13. 支持序列化,可以配置压缩格式.

    14. 拆包/粘包 的处理,

  • 相关阅读:
    (转)iOS7界面设计规范(2)
    (转)iOS7界面设计规范(1)
    (转)iOS7人机界面设计规范
    (转)iOS Wow体验
    (转)iOS Wow体验
    (转)iOS Wow体验
    (转)iOS Wow体验
    bzoj1044木棍分割
    bzoj1690开关灯
    终于开了blog了。。
  • 原文地址:https://www.cnblogs.com/weijiqian/p/14159588.html
Copyright © 2011-2022 走看看