分析一下六个场景下RabbitMQ的应用:
  1.爬虫
  2.智能家居云平台
  3.电子商务系统
  4.实时监控系统
  5.海量日志的分布式处理
  6. 智能交通管控平台中数据分析子系统
 
 
1.爬虫
    在爬虫业务场景下,多个spider任务之间的进度不一样,合理利用了 Rabbit MQ 多队列、高时效性、高稳定性的特征对不同爬取迚度的任务进行有效管理
 
2.智能家居云平台
       智能家居场景中
       提出RabbitMQ在智能家居云平台分布式系统中可行的实现方案,构建了三种不同的通信交互模式。
       RabbitMQ三种通信方式具体应用
            耗时长的业务----“发后即忘”普通模式
            web页面上CRUD、websocket长连接之间的请求响应--RPC模式
            服务器日志等级的修改--发布订阅模式
 
       研究分析RabbitMQ的三种集群模式,搭建RabbitMQ集群架构。
       原有的分布式,集群架构设计系统间通信方式使得系统耦合严重,无法满足与平台不同模块之间越来越复杂的信息交互。RabbitMQ作为一种消息中间,发送者只需要将消息存入RabbitMQ服务器,而接收者只需要去除消息进行处理。实现系统之间解耦。
       三种集群模式
           默认集群模式
           镜像集群模式
           主备集群模式
    
 
3.电子商务系统
      利用RabbitMQ消息队列来完成电商复杂业务逻辑的处理 --Web层与业务逻辑层使用MQ进行消息分发,业务逻辑层进行处理
     
4.实时监控系统
       在实时监控系统中,....的场景
    传输子系统有两个接口,一个向上层用户提供消息服务的接口,一个是与RabbitMQ服务器的接口。向上层用户服务的接口定义了与上层用户交换数据的格式标准。
数据通信子系统与RabbitMQ服务器之间的接口遵循AMQP协议。服务端和客户端都需要发布和订阅,都具有消息发布者和消息订阅者双重角色。由于存在不同的通信模式,
在设计时,根据服务端和客户端的通信模型选型合适的交换器类型。
       当管理中心向远端站发出查询或控制指令时,可能会有一个或者多个远端站接收该指令进行动作,采用广播式交换器。
 
5.  基于rabbitmq的海量日志的分布式处理
   解决海量日志的分析问题。web日志数据具有海量、多样、异构、动态变化等特点。
  使用RabbitMQ搭建一个高可用集群模式,对于每个rabbitmq节点,根据日志种类建立相应的队列,并且根据日志种类的名建立exchange的key值
          
 
6.  智能交通管控平台中数据分析子系统
       一种基于智能交通管理控制集成平台的数据分析子系统的解决方案,该数据分析子系统将集成平台中其他
子系统产生的数据加以整合、分析、计算和重构,形成新的数据结构,在宏观角度上展现当前交通的整体运行状况,
还可以在流量和拥堵路段数等几个不同的维度上展示当前交通的维度信息。
       在消息传递采用RabbitMQ,在数据预处理模块,和数据接入的模块中间,担任数据中间传递介质。
 

总结:

  RabbitMQ多应用在系统之间的数据传递,在多模块场景下,会出现模块处理速度不一或者模块数据交互逻辑复杂影响后期的研发等问题,RQ常来用来帮助系统解耦,使得模块之间数据交换能够简单化;在应对应对短时高访问流量场景,利用RQ信息传输的可靠特性,RQ可作为缓冲层;在应对信息数量大,且信息处理可延时,例如系统海量日志数据处理场景,可建立RQ的集群模式,对日志进行分类收集。
 
 
 

消息中间件的研究(二) RabbitMQ应用场景分析的更多相关文章

  1. TYPESDK手游聚合SDK服务端设计思路与架构之一:应用场景分析

    TYPESDK 服务端设计思路与架构之一:应用场景分析 作为一个渠道SDK统一接入框架,TYPESDK从一开始,所面对的需求场景就是多款游戏,通过一个统一的SDK服务端,能够同时接入几十个甚至几百个各 ...

  2. Fiddler实战深入研究(二)

    Fiddler实战深入研究(二) 阅读目录 Fiddler不能捕获chrome的session的设置 理解数据包统计 请求重定向(AutoResponder) Composer选项卡 Filters选 ...

  3. ThreadLocal的理解与应用场景分析

    对于Java ThreadLocal的理解与应用场景分析 一.对ThreadLocal理解 ThreadLocal提供一个方便的方式,可以根据不同的线程存放一些不同的特征属性,可以方便的在线程中进行存 ...

  4. Java 常用List集合使用场景分析

    Java 常用List集合使用场景分析 过年前的最后一篇,本章通过介绍ArrayList,LinkedList,Vector,CopyOnWriteArrayList 底层实现原理和四个集合的区别.让 ...

  5. RabbitMQ消息可靠性分析和应用

    RabbitMQ流程简介(带Exchange) RabbitMQ使用一些机制来保证可靠性,如持久化.消费确认及发布确认等. 先看以下这个图: P为生产者,X为中转站(Exchange),红色部分为消息 ...

  6. (转载)Fiddler实战深入研究(二)

    原文来源于:http://www.cnblogs.com/tugenhua0707/p/4637771.html,作者:涂根华 !个人觉得文章写的特别好,故收藏于此,感谢原作者的分享 Fiddler实 ...

  7. RabbitMQ消息可靠性分析

    消息中间件的可靠性是指对消息不丢失的保障程度:而消息中间件的可用性是指无故障运行的时间百分比,通常用几个 9 来衡量.不存在绝对的可靠性只能尽量趋向完美.并且通常可靠性也意味着影响性能和付出更大的成本 ...

  8. Fiddler实战深入研究(二)[转载]

    Fiddler实战深入研究(二) 阅读目录 Fiddler不能捕获chrome的session的设置 理解数据包统计 请求重定向(AutoResponder) Composer选项卡 Filters选 ...

  9. 关于SQL数据库 msdb.dbo.sp_send_dbmail 函数发送邮件的场景分析

    关于SQL数据库 msdb.dbo.sp_send_dbmail 函数发送邮件的场景分析 在推行系统中,时不时会有用户提出希望系统能自动推送邮件,由于手头的工具和能力有限,不少需求都借助于sql se ...

随机推荐

  1. 解决编译warning:warning: ‘MeteringUnit::voltage_gain_’ will be initialized after [-Wreorder]

    问题: 环境:ubuntu 12.04,g++版本4.6.3,编译目标文件时出现warnings: u1204@u1204-zhw:~/hwsvn/2sw/4prj_mips/UCP_rt5350/s ...

  2. Linux下视频流媒体直播服务器搭建详解

    目标: 搭建网络直播流媒体服务器系统(Linux操作系统) 背景: 用于OTT-TV大并发的直播和点播的一套流媒体服务器系统.支持N x 24小时录制回看和直播的服务器端解决方案. 解决方案: l  ...

  3. ACM学习历程—BZOJ 2115 Xor(dfs && 独立回路 && xor高斯消元)

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2115 题目大意是求一条从1到n的路径,使得路径xor和最大. 可以发现想枚举1到n的所有路 ...

  4. django models class 不识别问题解决方案

    目录 1. 事情起因 2. 排查经过 3. 总结 1. 事情起因 今天在写代码的时候,在django 的models目录中新增了一个pkg.py文件,里面定义了一个class, 在执行 makemig ...

  5. CF 360 E Levko and Game —— 贪心+最短路

    题目:http://codeforces.com/contest/360/problem/E 首先,每条边不是选 \( l[i] \) 就是选 \( r[i] \): 做法就是先把边权都设成 \( r ...

  6. centos下升级mysql5.5.47到5.7.14操作过程

    一. 查看已安装Mysql基础信息通过mysql –V 查看下mysql版本可以通过命令find / -name mysql 得到下面信息 1.安装目录[root@jjxnhd-192-10 mysq ...

  7. Code:目录

    ylbtech-Code:目录 1.返回顶部 1. https://github.com/   2.返回顶部 1. https://gitee.com 2. 3.返回顶部   4.返回顶部   5.返 ...

  8. JS ES6 -- let命令

    1.ES6新增了块级作用域的let和const 这新特性let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效. for循环的计数器,就很合适使用let命令 ...

  9. 学习Web前端的好网站推荐

    说明:将其他技术技术网址也搜藏到下面,与君共同进步 1.Jquery专题 http://kb.cnblogs.com/zt/jquery/ 2.Entity Framwork专题 http://kb. ...

  10. centos6 搭建IPSEC

    http://www.maxwhale.com/how-to-install-l2tp-vpn-on-centos/ http://blog.earth-works.com/2013/02/22/ho ...