一、消息队列
1、MQ(message queue)
2、MQ的作用:流量消峰、应用解耦、异步处理
3、MQ分类:
1⃣️ActiveMQ:单机吞吐量万级,时效性 ms 级,可用性高,基于主从架构实现高可用性,消息可靠性较低的概率丢失数据。
2⃣️Kafka:为大数据而生,百万级TPS的吞吐量,分布式。
3⃣️RocketMQ:单机吞吐量十万级,可用性非常高,分布式架构,消息可以做到 0 丢失,MQ 功能较为完善,还是分布式的,扩展性好,支持 10 亿级别的消息堆积,不会因为堆积导致性能下降,源码是 java 我们可以自己阅读源码,定制自己公司的 MQ。
4⃣️RabbitMQ:由于 erlang 语言的高并发特性,性能较好;吞吐量到万级,MQ 功能比较完备,健壮、稳定、易用、跨平台、支持多种语言。
二、RabbitMQ
1、四大核心:生产者、交换机、队列、消费者
三、相关终端命令
使用homebrew下载安装
1⃣️安装:brew install xxx
2⃣️某个xxx的安装地址:brew list xxx
3⃣️Rabbitmq安装地址:/opt/homebrew/Cellar/rabbitmq/3.10.5/
相关命令:
1、启动rabbitmq
前台启动:rabbitmq-server
后台启动:rabbitmq-server -detached
2、在网址输入http://localhost:15672
3、输入账号密码都是guest
4、关闭mq:rabbitmqctl stop
5、查看状态:rabbitmqctl status
6、查看帮助文档:rabbitmqctl help
7、插件管理:rabbitmq-plugins enable/list/disable
8、查看user:rabbitmqctl list_users
9、创建账号:rabbitmqctl add_user admin 123
10、设置用户角色:rabbitmqctl set_user_tags admin administrator
11、设置用户权限 rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"