java高級特性

1. java JMS技術(shù)

JMS即Java消息服務(wù)(Java Message Service)應(yīng)用程序接口是一個Java平臺中關(guān)于面向消息中間件(MOM)的API,用于在兩個應(yīng)用程序之間,或分布式系統(tǒng)中發(fā)送消息,進行異步通信。Java消息服務(wù)是一個與具體平臺無關(guān)的API,絕大多數(shù)MOM提供商都對JMS提供支持。JMS是一種與廠商無關(guān)的 API,用來訪問消息收發(fā)系統(tǒng)消息。

2. JMS體系結(jié)構(gòu)

JMS由以下元素組成。
JMS提供者provider:連接面向消息中間件的,JMS接口的一個實現(xiàn)。提供者可以是Java平臺的JMS實現(xiàn),也可以是非Java平臺的面向消息中間件的適配器。
JMS客戶:生產(chǎn)或消費基于消息的Java的應(yīng)用程序或?qū)ο蟆?br> JMS生產(chǎn)者:創(chuàng)建并發(fā)送消息的JMS客戶。
JMS消費者:接收消息的JMS客戶。
JMS消息:包括可以在JMS客戶之間傳遞的數(shù)據(jù)的對象
JMS隊列:一個容納那些被發(fā)送的等待閱讀的消息的區(qū)域。與隊列名字所暗示的意思不同,消息的接受順序并不一定要與消息的發(fā)送順序相同。一旦一個消息被閱讀,該消息將被從隊列中移走。
JMS主題:一種支持發(fā)送消息給多個訂閱者的機制。

3. JMS服務(wù)應(yīng)用程序結(jié)構(gòu)支持兩種模型

1、 點對點或隊列模型
在點對點或隊列模型下,一個生產(chǎn)者向一個特定的隊列發(fā)布消息,一個消費者從該隊列中讀取消息。這里,生產(chǎn)者知道消費者的隊列,并直接將消息發(fā)送到消費者的隊列。
這種模式被概括為:只有一個消費者將獲得消息,生產(chǎn)者不需要在接收者消費該消息期間處于運行狀態(tài),接收者也同樣不需要在消息發(fā)送時處于運行狀態(tài)。每一個成功處理的消息都由接收者簽收。

消息隊列.png

2、發(fā)布者/訂閱者模型
發(fā)布者/訂閱者模型支持向一個特定的消息主題發(fā)布消息。0或多個訂閱者可能對接收來自特定消息主題的消息感興趣。在這種模型下,發(fā)布者和訂閱者彼此不知道對方。這種模式好比是匿名公告板。

訂閱者.png

4. java動態(tài)代理、反射

  • 通過反射的方式可以獲取class對象中的屬性、方法、構(gòu)造函數(shù)等
  • 動態(tài)代理:在不修改原業(yè)務(wù)的基礎(chǔ)上,基于原業(yè)務(wù)方法,進行重新的擴展,實現(xiàn)新的業(yè)務(wù)。
動態(tài)代理.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,948評論 18 139
  • 1 消息隊列概述 消息隊列中間件是分布式系統(tǒng)中重要的組件,主要解決應(yīng)用耦合,異步消息,流量削鋒等問題。實現(xiàn)高性能,...
    Bobby0322閱讀 10,930評論 0 24
  • 一、 消息隊列概述 消息隊列中間件是分布式系統(tǒng)中重要的組件,主要解決應(yīng)用耦合、異步消息、流量削鋒等問題。實現(xiàn)高性能...
    步積閱讀 57,107評論 10 138
  • 《成功與運氣:好運和精英社會的神話》,作者是超級經(jīng)濟學(xué)暢銷書《牛奶可樂經(jīng)濟學(xué)》的作者羅伯特·弗蘭克。 這本書討論了...
    胖巴閱讀 255評論 0 0
  • social media like Facebook and Twitter seem to have made ...
    二甘_閱讀 201評論 0 0