时间不知不觉来到了2021年3月17日,除了工作照常的忙碌之外,也想想后面的职业规划。如何成为架构师?这个问题在越来越多的毕业生出来工作之后,才开始慢慢反思。
消息中间件的相关理论可以查看百度:消息中间件-百度百科
一、Windows 下安装 ActiveMQ
先到ActiveMQ官网下载相关文件:http://activemq.apache.org/components/classic/download/
我们为了方便学习,下载 Windows 最新版,它里面有32、64位系统对应的启动文件,直接下载即可(大概70M),如截图:
下载好之后,解压。
打开 bin 目录,如果你的电脑操作系统是 32 位,就打开win32文件夹,如果是64位,就打开win64文件夹。看到 activemq.bat 文件。双击开启服务。
看到控制台输出如下信息,则为启动成功:
说明:
1、ActiveMQ 支持多种协议,对应监听的端口如以上截图。后面我们主要使用 tcp 协议,因此监听的端口是 61616
2、ActiveMQ默认启动到8161端口,启动完了后在浏览器地址栏输入:http://127.0.0.1:8161/ 或者 http://localhost:8161/,提示输入用户名密码,默认用户名密码为admin、admin,这个用户名密码是在conf/users.properties中配置的。
输入用户名密码后便可看到如下图的ActiveMQ控制台界面了。
到此,我们就成功的部署了一个 ActiveMQ 服务器!
二、了解 ActiveMQ 控制台
在管理页面点击【Manage ActiveMQ broker】进入管理台
进入到主页面,顶部是各项菜单:
点击 Queues ,创建一个队列名称 biandan
Number Of Pending Messages 等待消费的消息,这个是当前未出队列的数量。可以理解为总接收数 - 总出队列数 Number Of Consumers 消费者,这个是消费者端的消费者数量
Messages Enqueued 进入队列的消息,进入队列的总数量,包括出队列的。 这个数量只增不减
Messages Dequeued 出了队列的消息,可以理解为是消费这消费掉的数量
这个要分两种情况理解
在queues里它和进入队列的总数量相等(因为一个消息只会被成功消费一次),如果暂时不等是因为消费者还没来得及消费。
在 topics(主题)里,它因为多消费者从而导致数量会比入队列数高。
简单的理解上面的意思就是当有一个消息进入这个队列时,等待消费的消息是1,进入队列的消息是1。
当消息消费后,等待消费的消息是0,进入队列的消息是1,出队列的消息是1。
在来一条消息时,等待消费的消息是1,进入队列的消息就是2。
没有消费者时 Pending Messages 和 入队列数量一样
有消费者消费的时候 Pedding会减少 出队列会增加
到最后 就是 入队列和出队列的数量一样多
以此类推,进入队列的消息和出队列的消息是池子,等待消费的消息是水流。