2019年7月第一周总结-RabbitMQ总结
这一周主要是对RabbitMQ做了一下学习。
快速阅读
RabbitMq的介绍以及环境安装配置,以及RabbitMq的六种应用 。单生产者和消费者,
单生产者多消费者,消息的发布订阅,消息类型Echange中的Direct,Topic.以及RPC调用
介绍
RabbitMQ做为一个消息中间件,用于进程间的通信
常被用在异步处理,应用解藕,流量消峰等业务场景。
环境配置
RabbitMq是用Erlang开发的,所以安装之前要先安装Erlang
服务端需要安装RabbitMq-server
vs开发的话,需要通过nuget下载RabbitMQ.client ,
应用
单生产者和消费者
生产者和消费者通过共用一个队列名称,两者之间传输的消息以字节数组存放
消费者在接收事件中处理接收到的消息 。
单生产者多消费者
一个生产者生产的任务 ,多个消费者来消费。
生产者指定队列名称queue和routingkey,
消费者创建EventingBasicConsumer。通过queue名称以及设置BasicQos来设置每次取一条消息。
消息的发布订阅模式
生产者把消息广播出去,所有的消费者都可以同时接收到消息 。
两端都声明消息交换的类型是fanout。 消息头中设置消息持久化为true
消费者创建EventingBasicConsumer 在接收者事件是处理消息 。并且设置basecack
消息类型Echange中的Direct
生产者发送的消息 以routingkey进行分组,消费者以routingkey进行不同的接民,
消费者输入不同的routingkey接收不同的消息。
消息类型Echange中的Topic
和Direct消息类型类似,只是加了类型正则表达式的通配符, "*"号代表任意一个单词
"#"号代表0个或多个单词
RabbitMq的rpc调用
生产者和消费者都有一个接收事件 ,生产者先接收消费者发送过来的请求,然后根据请求的消息
获得相应的结果再加上消息头上标识的消息id和回调队列返回给生产者队列 。
生产者的接收事件 中处理发送请求的消息的返回值 。
友情提示
我对我的文章负责,发现好多网上的文章 没有实践,都发出来的,让人走很多弯路,如果你在我的文章中遇到无法实现,或者无法走通的问题。可以直接在公众号《爱码农爱生活 》留言。必定会再次复查原因。让每一篇 文章的流程都能顺利实现。

2019年7月第一周总结-RabbitMQ总结的更多相关文章
- 用js获取周、月第一天和最后一天(转载)
var getCurrentWeek = function (day) { var days = ["周日", "周一", "周二", &q ...
- python学习第一天 -----2019年4月15日
第一周-第06章节-Python3.5-第一个python程序 #!/usr/bin/env python #-*- coding:utf-8 _*- """ @auth ...
- C语言I—2019秋作业第一周作业
1.你对软件工程专业或者计算机科学与技术专业了解是怎样? 软件工程专业是一门研究用工程化方法构建和维护有效的.实用的和高质量的软件的学科.它涉及到程序设计语言,数据库,软件开发工具,系统平台,标准,设 ...
- IT帮2019年2月线下活动【定义工作,解读自我】之站桩练习
2019年2月IT帮线下活动[定义工作,解读自我] 昨天的活动收获很大,全面的总结周老师会另写一篇来帮助大家回顾.我想说一下其中最打动我的一句话:“只有你能决定你有多优秀!” “工作中把自己当成企业家 ...
- 初入计算机专业,学习c语言的第一周作业问答
2019年9月17日下午3点30,我来到了1117教室准备上我进入大学的第一堂计算机专业课,并需要完成以下作业. 2.1 你对软件工程专业或者计算机科学与技术专业了解是怎样? 我所了解的计算机就是一台 ...
- 20145304 刘钦令 Java程序设计第一周学习总结
20145304<Java程序设计>第1周学习总结 教材学习内容总结 1995年5月23日,是公认的Java的诞生日,Java正式由Oak改名为Java. Java的三大平台是:Java ...
- 获取某月第一天,最后一天的sql server脚本 【转】http://blog.csdn.net/chaoowang/article/details/9167969
这是计算一个月第一天的SQL 脚本: SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) --当月的第一天 SELECT DATEADD(mm, DA ...
- php 获取某个月的周次信息
在做统计的时候如果按照周统计 ,需要对某个月的周次信息进行计算,如果本月头一天不是星期一,则向上一个月取周一,本月最后的几天如果不能正好是一周,则忽略. 例如 2019-09月计算出来的结果 2016 ...
- 获取某月第一天,最后一天的sql server脚本
本文来自:http://blog.csdn.net/chaoowang/article/details/9167969 这是计算一个月第一天的SQL 脚本: SELECT DATEADD(mm, ...
随机推荐
- 将h5用HBuilderX打包成安卓app后,document.documentElement.scrollTop的值始终为0或者document.body.scrollTop始终为0
let time = setInterval(() => { let scroll = document.documentElement.scrollTop || document.body.s ...
- 分布式系统session一致性解决方案
在单机系统中,不存在Session共享问题,但是在分布式系统中,我们必须实现session共享机制,使得多台应用服务器之间会话统一,如果不进行Session共享会出现数据不一致,比如:会导致请求落到不 ...
- with读、写文件
1.with写文件 save_file = "1.txt" str_data = "123a\nbc" with open(save_file, 'a', en ...
- Struts框架笔记03_OGNL表达式与值栈
目录 1. OGNL 1.1 OGNL概述 1.1 什么是OGNL 1.1.2 OGNL的优势 1.1.2 OGNL使用的要素 1.2 OGNL的Java环境入门[了解] 1.2.1 访问对象的方法 ...
- ORACLE 清理SYSAUX表空间
在数据库检查中发现SYSAUX表空间占用过大,SYSAUX是ORACLE10G开始提供的功能,用于数据库为SYSTEM表空间减负. 用以下语句查出相应的表空间值 select a.tablespace ...
- Docker -compose install Harbor
Docker-compose Harbor install Docker install Yum install docker-compose 首先安装 yum configuation 管理工具 [ ...
- django--模型字段引用
如果内置字段不起作用,您可以尝试使用django-localflavor(文档),其中包含对特定国家和文化有用的各种代码片段. 此外,您可以轻松编写自己的自定义模型字段. 注意 从技术上讲,这些模型是 ...
- 使用FastJSON 对Map/JSON/String 进行互转
Fastjson是一个Java语言编写的高性能功能完善的JSON库,由阿里巴巴公司团队开发的主要特性主要体现在以下几个方面: 1.高性能 fastjson采用独创的算法,将parse的速度提升到极致, ...
- ffmpeg常用命令-学习
文章标题:FFmpeg常用命令合集 文章地址:https://blog.csdn.net/lemon_tree12138/article/details/99719520
- xinetd配置文件
xinetd是一个超级守护进程xinetd即extended internet daemon,xinetd是新一代的网络守护进程服务程序,又叫超级Internet服务器.经常用来管理多 种轻量级Int ...