zoukankan      html  css  js  c++  java
  • 消息中间件JMS(一)

    1.JMS入门

    1.1消息中间件

    模块之间的依赖也称之为耦合。而耦合越多,之后的维护工作就越困难。那么如果改善系统模块调用关系、减少模块之间的耦合呢?我们接下来就介绍一种解决方案----消息中间件。

    1.2 什么是消息中间件

    消息中间件利用搞笑可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息队列模型,它可以在分布式环境下扩展进程间的通信。对于消息中间件,常见的角色大致也就是Producer(生产者),Consumer(消费者)

    常见的消息中间件产品:

    (1) ActiveMQ

    ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现。我们在本次课程中介绍 ActiveMQ的使用。

    (2)RabbitMQ

    AMQP协议的领导实现,支持多种场景。淘宝的MySQL集群内部有使用它进行通讯,OpenStack开源云平台的通信组件,最先在金融行业得到运用。

    (3)ZeroMQ

    史上最快的消息队列系统

    (4)Kafka

    Apache下的一个子项目 。特点:高吞吐,在一台普通的服务器上既可以达到10W/s的吞吐速率;完全的分布式系统。适合处理海量数据。

    使用消息中间件activeMQ,使得模块之间的某些模块解除了耦合

    2 JMS简介

    2.1 什么是JMS

    JMS(Java Messaging Service)是Java平台上有关面向消息中间件的技术规范,它便于消息系统中的Java应用程序进行消息交换,并且通过提供标准的产生、发送、接收消息的接口简化企业应用的开发。

           JMS本身只定义了一系列的接口规范,是一种与厂商无关的 API,用来访问消息收发系统。它类似于 JDBC(Java Database Connectivity):这里,JDBC 是可以用来访问许多不同关系数据库的 API,而 JMS 则提供同样与厂商无关的访问方法,以访问消息收发服务。许多厂商目前都支持 JMS,包括 IBM 的 MQSeries、BEA的 Weblogic JMS service和 Progress 的 SonicMQ,这只是几个例子。 JMS 使您能够通过消息收发服务(有时称为消息中介程序或路由器)从一个 JMS 客户机向另一个 JML 客户机发送消息。消息是 JMS 中的一种类型对象,由两部分组成:报头和消息主体。报头由路由信息以及有关该消息的元数据组成。消息主体则携带着应用程序的数据或有效负载。

    JMS 定义了五种不同的消息正文格式,以及调用的消息类型,允许你发送并接收以一

    些不同形式的数据,提供现有消息格式的一些级别的兼容性。

    · TextMessage--一个字符串对象

    · MapMessage--一套名称-值对

    · ObjectMessage--一个序列化的 Java 对象

    · BytesMessage--一个字节的数据流

    · StreamMessage -- Java 原始值的数据流

    2.2 JMS消息传递类型

    对于消息的传递有两种类型:

      一种是点对点的,即一个生产者和一个消费者一一对应;

      

      另一种是发布/订阅模式,寄一个生产者产生消息并进行发送后,可以有多个消费者进行接收。

      

    3. ActiveMQ 下载与安装

    3.1 下载

    官方网站下载:http://activemq.apache.org/

    3.2 安装(Linux)

    (1)将apache-activemq-5.12.0-bin.tar.gz 上传至服务器

    (2)解压此文件

    tar  zxvf  apache-activemq-5.12.0-bin.tar.gz

    (3)为apache-activemq-5.12.0目录赋权

    chmod 777 apache-activemq-5.12.0

    (4)进入apache-activemq-5.12.0in目录

      (5)  启动activeMQ

     ./activemq start

    (5)赋与执行权限

    chmod 755 activemq 

    --------------------------------------  知识点小贴士    --------------------------

    linux 命令chmod 755的意思

    chmod是Linux下设置文件权限的命令,后面的数字表示不同用户或用户组的权限。

    一般是三个数字:
    第一个数字表示文件所有者的权限
    第二个数字表示与文件所有者同属一个用户组的其他用户的权限
    第三个数字表示其它用户组的权限。

          权限分为三种:读(r=4),写(w=2),执行(x=1) 。 综合起来还有可读可执行(rx=5=4+1)、可读可写(rw=6=4+2)、可读可写可执行(rwx=7=4+2+1)。

          所以,chmod 755 设置用户的权限为: 

    1.文件所有者可读可写可执行                                    --7

    2.与文件所有者同属一个用户组的其他用户可读可执行 --5 
    3.其它用户组可读可执行                                          --5

  • 相关阅读:
    (转)Javascript的DOM操作
    (转)关于 Java 对象序列化您不知道的 5 件事
    java计算某个日期是什么节气(24节气)
    HTML5 客户端存储数据的两种方式
    laytpl : 一款非常轻量的JavaScript模板引擎
    解决阿里云服务器3306端口无法访问的问题(windows server 2008r2)
    阿里云服务器windows server2008r2+tomcat8.0+nginx1.12
    使用log4j2打印Log,log4j不能打印日志信息,log4j2不能打印日志信息,log4j和logj2,idea控制台信息乱码(文末)
    Android 实现http通信(servlet做服务器端) HttpClient、HttpURLConnection实现登录验证
    windows查看端口占用、结束进程
  • 原文地址:https://www.cnblogs.com/FanJava/p/10484023.html
Copyright © 2011-2022 走看看