公司專案使用duboo技術架構也有一段時間,做下簡單的經驗總結,不喜勿噴。
擁有的阿里背景的dubbo,給使用者帶來的絲絲安慰,畢竟阿里那麼大的平台都在使用,相對小型一些的平台使用應該也是沒有問題。那麼在設計過程中,應該注意哪些呢?
一,模組劃分。
二,服務抽離。
這裡的服務抽離,是針對每個模組裡面的服務進行抽離。比如:使用者模組。在針對使用者模組的服務抽離的時候,會區分是查詢服務,還是修改更新服務。將查詢與更新分開,因為對於更新操作,會涉及到事務處理等。
三,網路設定
<
dubbo
:reference
timeout
="3000"
inte***ce
="com.ylp.facade.user.service.userloginservice"
id="userloginservice"
/>
四,啟動檢測設定
duboo的屬性標籤中,可以設定啟動初始化時,是否檢測相應服務生產者是否正常提供服務。具體使用情況可以根據專案自身情況而定,屬性標籤為:check。
<
dubbo
:reference
timeout
="3000"
check
="false"
inte***ce
="com.ylp.facade.user.service.userloginservice"
id="userloginservice"
/>
五,重試
服務呼叫時,dubbo服務預設是會在出現呼叫異常的情況下,嘗試重新呼叫。好像預設的是呼叫3次。這種重試對於查詢類操作,當然沒有太大問題(資料量大的應防止因為查詢而把庫拖死)。但是,對於插入修改類的服務操作,就會存在資料安全性問題。這也是為什麼做服務抽離時,將查詢類與修改類分開的原因。解決方式就是不讓服務重試,即將retries屬性設定為0.
<
dubbo
:reference
retries
="0"
timeout
="3000"
check
="false"
inte***ce
="com.ylp.facade.user.service.userloginservice"
id="userloginservice"
/>
目前,先總結以上。後續有時間,將繼續總結其他使用技巧。在文底也順便推薦一套免費的教程。個人覺得講解的比較不錯,裡面還會涉及到dubbo管控臺的安裝、zookeeper的安裝等其他的內容,非常實用。
記錄一次dubbo專案實戰
存在2個系統,a系統和b系統,a系統呼叫b系統的介面獲取資料,用於查詢使用者列表。安裝zookeeper,解壓 zookeeper 3.4.8.tar.gz 得到如下 該目錄為存放資料的目錄。然後啟動,在bin目錄下 1.匯入依賴 org.springframework spring webmvc ...
Dubbo專案實戰 (一)服務劃分粒度
dubbo是阿里公司推出解決分布式服務問題的框架,是乙個基於soa面向服務體系結構的基礎設施,提供了諸如服務發布註冊 容錯呼叫 部署 呼叫次數監控 每個服務的效能監控等很多功能。一看覺得非常不錯可以將我們各種服務做成遠端服務呼叫,雖然看起來不錯,如果要具體實施將乙個或多個系統抽象成乙個合理 穩定的s...
django 實戰教程一 初探
django 算得上是 python 圈內最流行的 web 開發框架,擁有很多特性,入門十分簡單。本教程最終實現乙個功能完善的部落格,在這個過程中全面學習 django 的使用。建議使用第三方擴充套件virtualvenv python3內建了venv 可以方便的控制 python 環境 pip i...