消息队列-初见
This commit is contained in:
parent
d15d4d9b86
commit
55fa25484c
69
source/_posts/Java/消息中间件(1)-初见.md
Normal file
69
source/_posts/Java/消息中间件(1)-初见.md
Normal file
@ -0,0 +1,69 @@
|
||||
---
|
||||
title: 消息中间件(1)-初见
|
||||
date: 2018-10-24 10:57:22
|
||||
categories:
|
||||
- Java
|
||||
---
|
||||
|
||||
### 中间件
|
||||
非底层操作系统软件, 非业务应用软件, 不是直接给最终用户使用的
|
||||
不能直接给客户带来价值的软件统称为中间件
|
||||
|
||||
<!-- more -->
|
||||
### 消息中间件
|
||||
关注**数据的发送和接收**, 利用高效可靠的异步消息传递机制集成**分布式**系统
|
||||
|
||||
### JMS
|
||||
Java消息服务(Java Message Service) 即JMS, 是一个Java平台中关于面向消息中间件的API, 用于在两个程序之间, 或分布式系统中发送消息, 进行异步通信
|
||||
|
||||
它只是一个API的规范
|
||||
|
||||
### AMQP
|
||||
AMQP(advanced message queuing protocol)是一个提供统一消息服务的**应用层**标准协议, 基于此协议的客户端与消息中间件可传递消息, **并不受客户端/中间件不同产品, 不同开发语言等条件的限制**
|
||||
|
||||
### JMS消息模式
|
||||
|
||||
#### 队列模型
|
||||
+ 客户端包括生产者和消费者
|
||||
+ 队列中的消息只能被一个消费者消费
|
||||
+ 消费者可以随时消费队列中的消息
|
||||
|
||||

|
||||
最主要的特点就是消费的行为是互斥的, 消费的过程就是出队的过程
|
||||
某一个消息只能被一个消费者消费掉
|
||||
|
||||
#### 主题模型
|
||||
+ 客户端包括发布者和订阅者
|
||||
+ 主题中的消息被所有订阅者消费
|
||||
+ 订阅者不能消费订阅之前就发送到主题中的消息
|
||||
|
||||

|
||||
每一个连接都会收到主题当中所有的消息(订阅之后发布到主题当中的消息)
|
||||
|
||||
|
||||
### ActiveMQ
|
||||
Apache ActiveMQ是Apache软件基金会所研发的开放源代码消息中间件;由于ActiveMQ是一个纯Java程序,因此只需要操作系统支持Java虚拟机,ActiveMQ便可执行。
|
||||
|
||||
首先需要具备jre的环境
|
||||
下载解压之后执行bin目录下的activemq就可以完成运行或者停止
|
||||
```bash
|
||||
# 运行
|
||||
bin/activemq start > /dev/null 2>&1 &
|
||||
|
||||
#停止
|
||||
bin/activemq stop
|
||||
```
|
||||
ActiveMQ启动会占用2个端口
|
||||
默认的管理页面端口是8161, 用浏览器访问可以打开管理页面
|
||||
默认的用户名和密码是admin/admin
|
||||
|
||||
这个端口的设定在`conf/jetty.xml`当中
|
||||

|
||||
|
||||
管理员用户名和密码的设定在`conf/jetty-realm.properties`当中
|
||||

|
||||
注意格式为`用户名: 密码,角色1,角色2...`
|
||||
|
||||
|
||||
61616为ActiveMQ的默认通讯端口
|
||||
设定在`conf/activemq.xml`当中
|
||||
BIN
source/images/Java/消息队列/jetty_port.png
Normal file
BIN
source/images/Java/消息队列/jetty_port.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 28 KiB |
BIN
source/images/Java/消息队列/jetty_realm.png
Normal file
BIN
source/images/Java/消息队列/jetty_realm.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 14 KiB |
BIN
source/images/Java/消息队列/主题模型.png
Normal file
BIN
source/images/Java/消息队列/主题模型.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 69 KiB |
BIN
source/images/Java/消息队列/队列模型.png
Normal file
BIN
source/images/Java/消息队列/队列模型.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 62 KiB |
Loading…
x
Reference in New Issue
Block a user