RocketMQ技术内幕学习笔记(一)

源代码目录结构

  • broker:broker模块
  • client:消息客户端,包括消息生产者,消息消费者相关类
  • common:公共包
  • dev:开发者信息(非源代码)
  • distribution:部署示例文件夹(非源代码)
  • example:RockerMQ示例代码
  • filter:消息过滤相关基础类
  • filtersrv:消息过滤服务器实现相关类(Filter启动进程)
  • logappender:日志相关实现类
  • namesrv:NameServer实现相关类(NameServer启动进程)
  • openmessageing:消息开放标准,正在制定中
  • remoting:远程通信模块,基于netty
  • srvutil:服务器工具类
  • store:消息存储实现相关类
  • style:checkstyle相关实现
  • test:测试相关类
  • tools:工具类,监控命令相关实现类

RocketMQ设计理念和目标


  • 设计理念

    • NameServer集群之间互不通信,topic路由不保持强一致,追求最终一致,相比ZK有极大提升
    • 高效的IO存储机制
    • 容忍存在设计缺陷
  • 设计目标

    • 架构模式
    • 顺序消息
    • 消息过滤
    • 消息存储
    • 消息高可用性
    • 消息到达(消费)低延迟
    • 确保消息必须被消费一次
    • 回溯消息
    • 消息堆积
    • 定时消息
    • 消息重试机制

你可能感兴趣的:(rocketmq)