博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jms简介和原理
阅读量:7168 次
发布时间:2019-06-29

本文共 1021 字,大约阅读时间需要 3 分钟。

hot3.png

JMS简介和原理

一、概述

    1.1 简述:

        JMS (java massage Service)是一套消息标准,能在 JSR343 找到。它运行在java平台上创建、发送、接受和阅读邮件。通过可靠的异步来通信实现程序的松耦合,以及实现分布式通信。官方解释有点绕,但是理解原理和实现方式非常降单。JMS是一种消息中间件的实现。

    1.2 分布服务

        在计算机发展过程中,操作系统的发展是典型利用了分层、分模块设计的软件。系统的通信协议、文件系统、驱动等内核提供的默认服务,一个模块、一个模块的多个层次给我们提供服务。查看操作系统的任务管理器、可以看见除了在屏幕上运行的软件(默认大家通过屏幕操作),还有很多其它说不上名字的进程。这些进程或者说是服务,就是为了给操作系统提供强大服务的主力,如果每一个软件把这些服务内置,那将是一个灾难。从这我们能看成软件,或者说是一个大型的完整的系统是把相同的服务通过分层一个一个独立出来。从而完成了低耦合、健壮、易扩展的软件工程。

    1.3 服务通信

         保证不同服务之间的数据交互,是分布系统的核心,或者说是一个基础。从系统层来说,可以通过网络协议通信。其中最出名的是tcp/ip,http协议。应用层来说也许要自定义的一些协议,从而生成更加通用的api。JMS就是这样一个消息协议。

    1.4 JMS的原理

        JMS是一个消息中间的API,通过程序和消息服务的服务器的通信,可以将工程的链式结构分解成多个服务。JMS通过生产者、消费模式来实现通信,也就是说工程和消息服务器连接都是tcp/ip的长连接,JMS模型分为:点对点模型(p2p:一对一)和发布/订阅模型(Pub/Sub:一对多)

    1.5 JMS应用

        例如:登录设计的时候,除了在users表中插入账户信息,我们可能还需要给其它表来插入数据完善用户信息。如果每一个用户都这样完成注册,当用户量大的时候,用户体验就会很不好。这个时候,如果我们之保留users信息插入,将其它的步骤通过JMS延后执行,就能解决访问高时的延迟感。

        沿着这个思路,可以将不同的步骤整合成服务,在不同的平台,不同的环境中运行。只要能通过TCP/ip,利用JMS的消息模型来传递重要信息,就完成了一个分布式系统。

    1.6 JMS的模型

        a)JMS的两种模型:

212207_35qS_2246410.png

        b)使用:

            使用前:

213652_pbB3_2246410.png

            使用后:

213734_Aq9Q_2246410.png

转载于:https://my.oschina.net/u/2246410/blog/607084

你可能感兴趣的文章
flask 的管理模块的功能add_template_global、send_from_directory
查看>>
NOIP 2018 普及组 解题报告
查看>>
Collection相关内容总结
查看>>
将json返回的日期格式转换
查看>>
JAVA学习之路 不走弯路,就是捷径
查看>>
ZSTU OJ 3999 零基础学算法---邻接表
查看>>
Android JS打开原生应用
查看>>
Java数组操作的10大方法
查看>>
重构实例1:消除冗余代码
查看>>
防御式编程
查看>>
Java课堂笔记第九次428
查看>>
WCF配置文件注释
查看>>
获取SqlConnection的统计信息
查看>>
puppet cert maintain
查看>>
团队绩效评估计划
查看>>
BZOJ1486:[HNOI2009]最小圈——题解
查看>>
网络对抗 Exp0 Kali安装 Week1
查看>>
【Python第六篇】Python面向对象(进阶篇)及相关(异常处理、反射)
查看>>
Java DOM方式解析XML(模板)
查看>>
TextUtils.isEmpty() 和equals方法。
查看>>