1. acknowledge, release, reject
- acknowledge 确认,收到并争取处理了消息
- release 释放,将消息放回队列
- reject 拒绝,丢弃消息
2. cluster, federation
- cluster 高可用性(HA)集群,主备方式( active-passive)工作,热备(hot-standby),同时只有一个主( primary)broker工作,为客户端提供服务,其他备用(backup)broker会主动拒绝连接请求,以确保只有primary broker工作;主备之间通过状态同步保持一致,primary broker失效时可以将一个backup broker切换到primary broker身份继续工作,保证消息不会丢失。
- federation 消息路由网络,由broker(或cluster)已经broker之间的路由(route)组成,各个broker仅负责整个网络中的一部分功能,互相之间没有备份关系。cluster 也借由federation 功能来实现。
3. durable, persistence
- durable 针对队列(queue)本身而言,队列是持久的,无论是否有客户端连接,即使没有客户端连接,也会在队列上保存数据,等待客户端连接后消费数据。
- persistence 针对队列数据(消息)而言,数据可以保存在哪里,文件或数据库等,可以获得比内存更大的存储能力,但这不改变队列的性质,即使数据保存在文件里,如果不是durable的队列,在客户端断开后,队列被删除的同时这些数据也会被删除。persistence 可以保证broker在异常退出重启后消息不丢失。