跟我学习dubbo-消息中间件在分布式系统中的作用介绍(8)

消息中间件在分布式系统中的作用介绍

消息中间件的定义

Message-oriented middleware (MOM) is software infrastructure focused on sending and receiving messages between distributed systems.

消息中间件是在分布式系统中完成消息的发送和接收的基础软件。

消息中间件在分布式系统中的作用介绍

消息中间件的作用

消息中间件可利用高效可靠的消息传递机制进行平台无关的数据交流, 并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息 排队模型,可以在分布式环境下扩展进程间的通信。

通过消息中间件,应用程序或组件之间可以进行可靠的异步通讯,从而 降低系统之间的耦合度,提高系统的可扩展性和可用性。

应用场景

通过使用消息中间件对Dubbo服务间的调用进行解耦

JMS (Java Message Service)

JMS是JavaEE中的一个关于消息的规范,是一套与具体平台无关的API。

JMS元素

JMS提供者 ---- 连接面向消息中间件的,JMS接口的一个实现。

JMS客户 ------ 生产或消费消息的基于Java的应用程序或对象。

JMS生产者 ---- 创建并发送消息的JMS客户。

JMS消费者 ---- 接收消息的JMS客户。

JMS消息 ------ 可以在JMS客户之间传递的数据的对象

JMS队列 ------ 一个容纳那些被发送的等待阅读的消息的区域。

JMS主题 ------ 一种支持发送消息给多个订阅者的机制。

JMS应用程序接口

ConnectionFactory(连接工厂)------ 用户用来创建到JMS提供者的连接的被管对象。

Connection(连接)------------------- 连接代表了应用程序和消息服务器之间的通信链路。

Destination(目标)------------------- 消息发布和接收的地点,或者是队列,或者是主题。

MessageProducer(消息生产者)----- 由会话创建的对象,用于发送消息到目标。

MessageConsumer(消息消费者)---- 由会话创建的对象,用于接收发送到目标的消息。

Message(消息)---------------------- 是在消费者和生产者之间传送的对象。

Session(会话)------------------------ 表示一个单线程的上下文,用于发送和接收消息。

JMS消息模型

1、点对点或队列模型

JMS 点对点队列模型特点:

1、消息生产者生产消息发送到queue中,然后消息消费者从queue中取出并且消费消息。

2、消息被消费以后,queue中不再有存储,所以消息消费者不可能消费到已经被消费的消息。

3、Queue支持存在多个消费者,但是对一个消息而言,只会有一个消费者可以消费。

2、发布者/订阅者模型

JMS 发布/订阅模型特点:

消息生产者(发布)将消息发布到topic中,同时有多个消息消费者(订阅)消费该消息。

发布到topic的消息会被所有订阅者消费。

实现了JMS规范的消息中间件产品 ActiveMQ、RocketMQ、RabbitMQ、HornetQ

 

请各位持续关注《跟我学习dubbo-ActiveMQ的安装与使用(9)》

 


1.     项目核心代码结构截图

分布式框架介绍 - kafkaee - kafkaee的博客

   项目模块依赖

分布式框架介绍 - kafkaee - kafkaee的博客

特别提醒:开发人员在开发的时候可以将自己的业务REST服务化或者Dubbo服务化

2.    项目依赖介绍

   2.1 后台管理系统、Rest服务系统、Scheculer定时调度系统依赖如下图:

 

分布式框架介绍 - kafkaee - kafkaee的博客

       2.2 Dubbo独立服务项目依赖如下图:

 

分布式框架介绍 - kafkaee - kafkaee的博客

3.  项目功能部分截图:

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客
 

zookeeper、dubbo服务启动

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客
 

dubbo管控台

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客

 REST服务平台

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客

 

分布式框架介绍 - kafkaee - kafkaee的博客


 

 

 

转载于:https://my.oschina.net/u/2603356/blog/603919

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值