Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
H
hel-developer-guide
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
hel-guide
hel-developer-guide
Commits
72f27fdb
Commit
72f27fdb
authored
Jul 27, 2017
by
midKingKing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Updates 后端开发/消息机制.md
Auto commit by GitBook Editor
parent
69ff5dd4
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
11 additions
and
9 deletions
+11
-9
消息机制.md
后端开发/消息机制.md
+11
-9
No files found.
后端开发/消息机制.md
View file @
72f27fdb
...
...
@@ -24,27 +24,29 @@ RabbitMQ 是实现 AMQP(高级消息队列协议)的消息中间件的一种
在接口管理的消息队列定义模块中,首先进行交换机的定义,界面如图:!
[](
/assets/exchange.png
)
注意:
交换机名称不可以重复定义,一个交换机可以对应多个队列
交换机名称不可以重复定义,一个交换机可以对应多个队列
。
交换机类型可以分为
**direct\(唯一模式\),topic\(主题模式\),fanout\(广播模式\),**
rabbitmq会根据你的交换机类型和定义的路由键,完成消息的转发
**。**
持久化(durable):交换机在服务关闭后,清除与否
持久化(durable):交换机在服务关闭后,清除与否
。
自动删除(auto-delete):当交换机没有
相应的队列匹配时,删除与否
自动删除(auto-delete):当交换机没有
队列绑定时,删除与否。
### 2.2 定义队列和路由键
定义完交换机后,你还需要定义你的队列和相应的匹配模式(既路由键)界面如图:!
[](
/assets/queue.png
)
关键点
:
注意
:
1.
监听类需要在 Spring 中定义为 bean (也可以通过 @Component 之类的注解自动扫描注册)
2.
添加注解 QueueMonitor,表示这个类要监听队列
`queue1`
3.
实现接口 IMessageConsumer,指定泛型类型
队列名称不可以重复,但是一个队列可以对应多个交换机。
如果消息类型是 java bean 对象,比如 1.1章节 例子中 的 User,那么需要实现的接口是IMessageConsumer
<
User
>
。
匹配模式(routing-key):此处的匹配模式即为路由键
> 绝大部分时候,都要保证发送的消息类型与接收的类型一致!
持久化(durable):队列在服务关闭后,清除与否。
自动删除(auto-delete):当队列没有绑定交换机时,删除与否。
私有队列(exclusive): 仅创建者可以使用的私有队列,断开后自动删除.
## 3 发送消息/接收消息
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment