• <menu id="eeoky"><tt id="eeoky"></tt></menu>
  • <nav id="eeoky"></nav>
  • JMS&ActiveMQ教程
    基于JMS的消息傳送
    ActiveMQ與Spring集成
    ActiveMQ與SpringBoot集成
    ActiveMQ安全機制
    ActiveMQ主從集群

    ActiveMQ教程

    Apache ActiveMQ是Apache軟件基金會所研發的開放源代碼消息中間件;由于ActiveMQ是一個純Java程序,因此只需要操作系統支持Java虛擬機,ActiveMQ便可執行。

    ActiveMQ簡介

    ActiveMQ是Apache下的一個項目,采用Java語言開發;

    ActiveMQ 是一款非常流行的開源消息服務器,實現了JMS規范;

    官網: http://activemq.apache.org/

    目前最新ActiveMQ最新版本為ActiveMQ 5.15.8,支持JMS1.1,不支持2.0以上的版本,它們的主要區別是2.0以上可以使用注解進行配置。

    JMS只是定義了一組有關消息傳送的規范和標準,并沒有真正實現,也就說JMS只是定義了一組接口而已。就像JDBC抽象了關系數據庫訪問、JPA抽象了對象與關系數據庫映射一樣,JMS具體的實現由不同的消息中間件廠商提供,比如Apache ActiveMQ就是JMS規范的具體實現,Apache ActiveMQ才是一個消息服務系統,而JMS不是。

    ActiveMQ能干什么

    最主要的功能就是:實現JMS Provider用來幫助實現高可用、高性能、可伸縮、易用和安全的企業級面向消息服務的系統。

    ActiveMQ特點

    1.完全支持JMSI.1和J2EE1。4規范(持久化,XA消息,事務〕

    2.支持多種傳送協議:in-VM,TCP,SSL,UDP,JGroups,JXTA

    3.可插拔的體系結構,可以靈活定制,如:消息存儲方式、安全管理等

    4.很容易和Application Server集成使用

    5.多種語言和協議編寫客戶端。語言Java,C,C++,C#,Ruby,P以Python,PHP

    6.從設計上保證了高性能的集群,客戶端一服務器,點對點

    7.可以很容易的和spring結合使用

    8.支持通過JDBC和journal提供高速的消息持久化

    9.支持與Axis的整合

    ActiveMQ環境搭建

    1. Linux下的ActiveMQ環境搭建

    ① ActiveMQ運行需要Java的支持,首先需要配置Java環境變量

    ② 將下載好的tar上傳到Linux服務器/home/soft/目錄下

    ③ 解壓

    tar -zxvf apache-activemq-5.15.8-bin.tar.gz -C /usr/local/

    其中 -C /usr/local/ 指定把文件解壓到哪里去;

    解壓后就安裝完成了,即可使用,不需要其他操作。

    ④ 啟動

    • 切換到解壓后的ActiveMQ的bin目錄下

    • 執行 ./activemq start

    • 啟動后有兩個端口號,一個是web控制臺:8161,一個是消息服務broker連接端口:61616

    web管理控制臺admin URL地址:http://localhost:8161

    默認登錄賬號 admin 密碼 admin,注意:Linux防火前要關閉

    消息服務broker URL地址 : tcp://localhost:61616

    ⑤ 關閉

    • 切換到解壓后的ActiveMQ的bin目錄下

    • 執行./activemq stop

    ⑥ 無法關閉的問題

    • 把data目錄下的所有文件及目錄都刪除

    • 把activeMQ主目錄下的 tmp 目錄也刪除

    2. Windows下的ActiveMQ環境搭建

    • 下載activeMQ windows版本的壓縮包

    • 解壓下載下來的壓縮包,解壓后就可以直接使用

    • 進入解壓后的目錄的bin下面

    • 在地址欄輸入 cmd 后確定

    • 在dos窗口里面輸入: activemq start 進行啟動

    • 關閉:activemq stop

    應用場景

    1. 用戶注冊的時候,重點內容是將用戶信息保存到數據庫中,發短信驗證或者是發郵件增加了業務的復雜度。這時使用MQ將發短信、發郵件通知MQ由另外的服務平臺完成。

    2. 搜索平臺、緩存平臺

    查詢數據,建立緩存、索引,不從數據庫查詢,從緩存或者索引庫查詢,當數據庫發生增加、修改、刪除操作時發消息給MQ,緩存平臺或者是索引平臺從MQ獲取到這個消息,更新緩存或者索引。

    ① ActiveMQ使用的是標準的生產者(完成生產消息并發送消息)和消費者(獲取消息,完成自己的業務邏輯)模型

    ② 有兩種數據結構

    ③ Topic(發布訂閱) 一個生產者對應多個消費者,消息默認不會持久化,需要手動配置持久化。如果A服務器掛了,再生產一條消息的話,會被B服務器拿去使用,就算重新啟動,A服務器也不會再拿到消息了

    ④ 商品系統、庫存系統、生成商品詳情頁面的系統,現在要添加一個商品信息,消息肯定是需要讓庫存系統以及商品信息詳情頁面系統知道的。

    ⑤ Queue(點對點)一個生產者對應一個消費者,默認消息持久化

    • StringMessage

    • mapMessage

    • byteMessage

    • objectMessage

    要完成topic模式的消息持久化,需要保證每個消費者有唯一的clientID。

    全部教程
    疯狂婬荡乱婬A片中文,特级西西人体444WWw高清大胆,国产性XXXX18免费观看视频,中文字幕乱伦,free性满足HD国产精品,牛人女厕偷拍1区2区