分析一下六个场景下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. POJ-1564 dfs

    #include"cstring" #include"cstdio" +; int nux[maxn]; int nua[maxn];//解的集合 int t; ...

  2. React 版 V2EX 社区( react & react-router & axios & antd ui)

    目录 项目简介 在线演示 截图演示 踩坑 项目简介(1/4) Github: https://github.com/bergwhite/v2ex-react 项目使用React.Reac-router ...

  3. 51nod 1967 路径定向——欧拉回路

    题目:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1967 一共只会有偶数个奇数度的点.因为每多一条边,总度数加2. 把 ...

  4. java代码Math.sqrt

    总结:这个判断小数的题目,当时全只2有一个人想出了结果.老师很开心.我很桑心~~~~ 我没想到要取膜,我只想到了除以等于0就够了.至于中间的“取膜”,我没凑齐来,还是不够灵活 package com. ...

  5. JSP标签和EL表达式

    1.jsp标签: sun原生的,直接jsp使用 <jsp:include> -- 实现页面包含,动态包含 <jsp:include page="/index.jsp&quo ...

  6. Java常见设计模式之适配器模式

    在阎宏博士的<JAVA与模式>一书中开头是这样描述适配器(Adapter)模式的: 适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能 ...

  7. 二 Flask快速入门

    1: 外部可访问的服务器: 如果你运行了这个服务器,你会发现它只能从你自己的计算机上访问,网络中其它任何的地方都不能访问.在调试模式下,用户可以在你的计算机上执行任意 Python 代码.因此,这个行 ...

  8. BAT小米奇虎美团迅雷携程等等各大企业校招,笔试面试题。

    类似在线测试的方式展示题目. 历年在线笔试试卷: 百度 http://www.nowcoder.com/paper/search?query=%E7%99%BE%E5%BA%A6  腾讯http:// ...

  9. [poj3311]Hie with the Pie(Floyd+状态压缩DP)

    题意:tsp问题,经过图中所有的点并回到原点的最短距离. 解题关键:floyd+状态压缩dp,注意floyd时k必须在最外层 转移方程:$dp[S][i] = \min (dp[S \wedge (1 ...

  10. Angular12 学习angular2前的热身准备

    1 ECMA European Computer Manufactures Association 这个组织的目标是评估,开发和认可电信和计算机标准. 百度百科:点击前往 ECMA65:满足ECMA标 ...