文档章节

搭建JEESZ分布式架构9--消息中间件简介

 猫改不了吃鱼
发布于 2017/05/15 09:20
字数 750
阅读 3
收藏 0

消息中间件简介

1.      消息中间件在JEESZ分布式架构中的作用

1)     消息中间件在分布式系统中完成消息的发送和接收。

2)     消息中间件可利用高效可靠的消息传递机制进行平台无关的数据交流, 并基于数据通信来进行分布式系统的集成。

3)     通过提供消息传递和消息 排队模型,可以在分布式环境下扩展进程间的通信。

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

2.      JMS:Java Message Service

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

2)     JMS元素:

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

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

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

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

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

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

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

3)     JMS应用程序接口

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

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

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

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

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

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

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

4)     JMS消息模型

1、         点对点或队列模型

 

  •   消息生产者生产消息发送到queue中,然后消息消费者从queue中取出并且消费消息。
  •   消息被消费以后,queue中不再有存储,所以消息消费者不可能消费到已经被消费的消息。
  •   Queue支持存在多个消费者,但是对一个消息而言,只会有一个消费者可以消费。

2、         发布者/订阅者模型

 

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

注意: JEESZ系统中使用ActiveMQ中间件

源码地址获取mingli.com

有兴趣的朋友们可以前往球球哦~一起分享学习技术:2042849237

© 著作权归作者所有

共有 人打赏支持
粉丝 2
博文 40
码字总数 51358
作品 0
惠州
搭建JEESZ分布式架构--消息中间件简介

消息中间件在JEESZ分布式架构中的作用 1) 消息中间件在分布式系统中完成消息的发送和接收。 2) 消息中间件可利用高效可靠的消息传递机制进行平台无关的数据交流, 并基于数据通信来进行分布式...

明理萝
08/14
0
0
JEESZ分布式框架简介---技术介绍文档

摘要: Jeesz主要定位于互联网企业架构,已内置企业信息化系统的基础功能和高效的代码生成工具,包括:系统权限组件、数据权限组件、数据字典组件、核心工具 组件、视图操作组件、工作流组件、...

qq593e3b758e013
2017/06/12
0
0
j2ee分布式架构 dubbo + springmvc + mybatis + ehcache + redis 分布式架构

介绍 jeesz-utils jeesz-config jeesz-framework jeesz-core-cms

qq58edeba279279
06/26
0
0
分布式 dubbo zookeeper springmvc mybatis shiro restful redis fastdfs activemq

摘要: 摘要: SSH ++shiro+restful+bootstrap java架构 java企业架构 spring mvc +mybatis + KafKa+Flume+Zookeeper j2ee分布式架构 dubbo + springmvc + mybatis + ehcache + redis 分布式架......

qq592fbb5b34ad7
07/02
0
0
分布式架构平台的介绍

项目核心代码结构截图 jeesz-utils jeesz-config jeesz-framework jeesz-core-cms jeesz-core-gen jeesz-core-bookmark jeesz-core-act jeesz-core-oa jeesz-core-test jeesz-core-scheduler......

我就看看ni
2017/06/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

70.shell的函数 数组 告警系统需求分析

20.16/20.17 shell中的函数 20.18 shell中的数组 20.19 告警系统需求分析 20.16/20.17 shell中的函数: ~1. 函数就是把一段代码整理到了一个小单元中,并给这个小单元起一个名字,当用到这段...

王鑫linux
今天
2
0
分布式框架spring-session实现session一致性使用问题

前言:项目中使用到spring-session来缓存用户信息,保证服务之间session一致性,但是获取session信息为什么不能再服务层获取? 一、spring-session实现session一致性方式 用户每一次请求都会...

WALK_MAN
今天
5
0
C++ yield()与sleep_for()

C++11 标准库提供了yield()和sleep_for()两个方法。 (1)std::this_thread::yield(): 线程调用该方法时,主动让出CPU,并且不参与CPU的本次调度,从而让其他线程有机会运行。在后续的调度周...

yepanl
今天
4
0
Java并发编程实战(chapter_3)(线程池ThreadPoolExecutor源码分析)

这个系列一直没再写,很多原因,中间经历了换工作,熟悉项目,熟悉新团队等等一系列的事情。并发课题对于Java来说是一个又重要又难的一大块,除非气定神闲、精力满满,否则我本身是不敢随便写...

心中的理想乡
今天
33
0
shell学习之获取用户的输入命令read

在运行脚本的时候,命令行参数是可以传入参数,还有就是在脚本运行过程中需要用户输入参数,比如你想要在脚本运行时问个问题,并等待运行脚本的人来回答。bash shell为此提 供了read命令。 ...

woshixin
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部