1. 程式人生 > >淺談ActiveMQ(一)-架構

淺談ActiveMQ(一)-架構

1.簡介

ActiveMQ為apache下頂級開源專案,符合jms規約的訊息中介軟體。

關於部署方式,網上有很多這裡不再贅述。

2.基於中介軟體的架構

2.1架構圖對比

一、傳統架構:

系統間直接互相呼叫,如果系統比較多那麼就會形成網狀呼叫圖,各個系統互相嵌入比價深,形成強依賴,可能一個系統變更功能,其餘都要有變化,大大加劇維護成本。

【圖1】所示,傳統架構,各個系統相互呼叫。財務系統一個介面發生變化,與他相關呼叫此介面的的系統都會受到影響,都要進行改造。

                                    

二、採用基於中介軟體的架構:

系統間不需要直接互相依賴,以訊息的形式和外部系統對接。不需要知道傳送到哪個系統,而是由接受訊息的系統去訂閱相關主題。訊息本身為無狀態的,傳送方不需要等待發送結果。將系統間的強耦合關係弱化。

【圖2】所示各個系統均發訊息到中介軟體,需要的系統訂閱相應主題的訊息,各個系統能達到相對獨立的狀態。

同樣財務系統有變化,其他系統還是一樣收發訊息,就算某個系統癱瘓,其他系統也能正常執行,訊息不可達時,由中介軟體保障,癱瘓的系統重新拉起後,一定送達。

相關推薦

ActiveMQ-架構

1.簡介ActiveMQ為apache下頂級開源專案,符合jms規約的訊息中介軟體。關於部署方式,網上有很多這裡不再贅述。2.基於中介軟體的架構2.1架構圖對比一、傳統架構:系統間直接互相呼叫,如果系統比較多那麼就會形成網狀呼叫圖,各個系統互相嵌入比價深,形成強依賴,可能一個

【原創】webview——驚鴻一瞥

版本 開發 spa 占用 混合 原創 大量 功能性 內存泄漏 眾所周知,APP開發過程中經常會通過webview實現HTML5(H5)的渲染,實現H5和Native的混合開發(Hybrid Development)。Hybrid Development可以加速

資料庫

** 1、MySQL概述 a、什麼是資料庫 儲存資料的倉庫 b、哪些公司在用資料庫 金融機構、遊戲網站、購物網站、論壇網站 ... ... c、資料庫服務軟體 ***1、軟體分類*** MySQL、Oracle、SQL_Server、MongoDB、DB2、M

SEO搜尋引擎與SEO

淺談SEO(一)搜尋引擎與SEO 作為一個Web開發者,除了要能夠寫出可用的業務程式碼,還要在其他方面進行優化。所以我就開了這樣一個系列的文章記錄我的學習過程. 搜尋引擎 搜尋引擎(Search Engine)是指根據一定的策略、運用特定的計算機程式從網

AOP

什麼是AOP?   Aspect Oriented Programming,裝逼的最高境界就是不假思索的說出來這三個詞,換成中國話就是面向切面程式設計,聽師姐講過一次,前幾天總結SSH的時候,其中的spring的核心技術就是AOP和IOC,今天就做一個關於AO

HDFS

產生背景及定義 HDFS:分散式檔案系統,用於儲存檔案,主要特點在於其分散式,即有很多伺服器聯合起來實現其功能,叢集中的伺服器各有各的角色 隨著資料量越來越大,一個作業系統存不下所有的資料,那麼就分配到更多的作業系統管理的磁碟中,但是管理和維護極不方便,於是迫切需要一種系統來管理多臺機器上的檔案,這就是

Kotlin:類

ide pos 中一 androi 文件 rri object 淺談 spa 淺談Kotlin(一):簡介及Android Studio中配置 淺談Kotlin(二):基本類型、基本語法、代碼風格 前言:   已經學習了前兩篇文章,對Kotlin有了一個基本的認識,往後

表格jq的增、刪、改、查

false als 刪除 parse ++ script span 原生js true html代碼: <table border="1" cellpadding="20" cellspacing="0"> <thead> <t

從零開始學習OpenCL開發架構

處理器 多媒體 c++ stl context 實驗 通用 必看 是你 同時存在 1 異構計算、GPGPU與OpenCL OpenCL是當前一個通用的由很多公司和組織共同發起的多CPU\GPU\其他芯片 異構計算(heterogeneous)的標準,它是跨平臺的。旨在充

splay雙旋

搜索 roo alt 大小 index swa del using 函數 今天剛剛學習完splay,講一下自己的想法吧 首先splay和treap不一樣,treap通過隨機數來調整樹的形態。但splay不一樣,再每插入或操作一次後,你都會把他旋轉到根,再旋轉過程中樹的形態

ThinkPHP

實現商品的新增 1、在add.html頁面中更改表單元素的名稱   Goods控制器的add()方法中獲取商品分類   在add.html中迴圈獲取   2、設定提交的位置   3、新增商品程式碼參見GoodsController.class.php

架構篇之架構概況總覽

1、總體架構 總結 1)接入層架構要考慮的問題域為:高可用、擴充套件性、反向代理+擴充套件均衡 2)nginx、keepalived、lvs、f5可以很好的解決高可用、擴充套件性、反向代理+擴充套件均衡的問題 3)水平擴充套件scale out是解決擴充套件性問題的根本方案,DN

資料庫

1、SQL查詢 1、distinct : 不顯示欄位的重複值 1、語法 :select distinct 欄位1,欄位2 from 表名; 2、示例 1、表中都有哪些國家 select distinct country from sanguo;

資料庫

1、資料型別 1、數值型別 2、字元型別 3、列舉型別 4、日期時間型別 1、date :"YYYY-MM-DD" 2、datetime :"YYYY-MM-DD HH:MM:SS" 3、timestamp :"YYYY-MM-DD HH:MM:SS"

資料庫

1、資料備份(mysqldump,在Linux終端操作) 1、命令格式 mysqldump -u使用者名稱 -p 源庫名 > ***.sql 2、源庫名的表示方式 --all-databases 備份所有庫 庫名 備份1

資料庫

** 淺談資料庫(四) ** ** ``` 1、外來鍵(foreign key) 1、定義 :讓當前表的欄位值在另一張表的範圍內去選擇 2、語法格式 foreign key(參考欄位名) references 主表(被參考欄位名) on delet

彙編2——堆疊指令

  現今的CPU中都有棧的設計。8086CPU提供相關的指令來以棧的方式訪問記憶體空間。這意味著,我們在基於8086CPU程式設計的時候,可以將一段記憶體當作棧來使用。 8086CPU提供入棧和出棧指令: (最基本的) PUSH(入棧) push ax:將暫存器ax中的資料送

移動開發(趨勢

移動開發這幾年的發展異常迅猛,在這個智慧手機普及得像人體器官的時代,遊戲、電商移動平臺和社交軟體給人們生活帶來的的鉅變。隨著移動網際網路向各行各業的滲透,企業級的應用也開始發力,專家們預測現階段已經進入企業級移動應用爆發的時代,各企業級應用平臺廠商和IT服務企業對移動開發人才的爭奪也日

訊息中介軟體ActiveMQHelloWorld入門例項

1、JMS訊息傳送模式 在點對點或佇列模型: 一個生產者向一個特定的佇列釋出訊息,一個消費者從該佇列中讀取訊息。這裡,生產者知道消費者的佇列,並直接將訊息傳送到消費者的佇列。這種模式被概括為:只有一個消費者將獲得訊息。生產者不需要在接收者消費該訊息期間處於執行狀態,接收

ActiveMQ——介紹和安裝

一、前言 最近的一個專案中,根據技術選型等方面,選擇了ActiveMQ,專案中,通過Spring管理的ActiveMQ,然後在各個服務中使用。下面小編就向大家介紹一下ActiveMQ的安裝和使用,非常簡單。 二、什麼是ActiveMQ? 首先呢,ActiveMQ