消息中间件

Linux环境下安装rabbitmq:

  1. 安装最新版本的erlang sudo yum install erlang
  2. 下载rabbitmq的压缩文件 rabbitmq-server-generic-unix-3.6.9.tar.xz
  3. 解压,执行主目录下sbin/rabbitmq-server
    看到提示信息,当出现"completed with [n] plugins."表明broker成功建立
    另外一种启动方式:rabbitmq-server -detached
  4. 自己创建配置文件$RABBITMQ_HOME/etc/rabbitmq/rabbitmq-env.conf
    或者$RABBITMQ_HOME/etc/rabbitmq/rabbitmq.config
  5. sbin/rabbitmq-defaults脚本中的SYS_PREFIX这一行可以修改

消息队列中间件比较
ActiveMQ 老牌的消息中间件 传统企业用作异步调用和系统解耦 无法支持高并发、高负载(我的理解就是在CPU队列排队的任务多)、高吞吐
RabbitMQ 支持高并发、高吞吐、性能高、集群化 社区活跃
RocketMQ 超高并发、高吞吐 支持分布式事务
Kafka 超高吞吐 实时日志采集、实时数据同步、实时数据计算

优点
1)系统解耦
2)异步调用 提高链路的调用性能
3)异步削峰 典型的MQ的用法 用有限的机器资源承载高并发请求
一台机器可以抗住QPS几百的请求

缺点
1)系统可用性下降
2)系统稳定性下降
一旦产生一个问题,就会导致系统整体出问题
消息高可靠传递(0丢失)
消息幂等性传递(绝对不重复)
百万消息积压的线上故障处理
3)分布式一致性问题

RocketMQ、Kafka、RabbitMQ 都有类似的 autoAck或者手动ack机制
Channel类似于与RabbitMQ通信的一个句柄

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值