Crossbar 后端開發(fā)調(diào)試混亂解決方案

項目使用 Crossbar.io 進(jìn)行通信,流程大概如下

流程圖中的每個塊狀區(qū)域都是 Crossbar 的一個組件,都可以獨立運行。所有通信全部通過 Crossbar 中注冊的路由來進(jìn)行通信。

  1. Frontend Component
  2. Crossbar Server
  3. Backend Component
  4. MongoDB Component
  5. S3 Component

由于關(guān)聯(lián)服務(wù)較多,后端開發(fā)人員本地環(huán)境沒有搭完整的測試環(huán)境,只有后端基本環(huán)境寫代碼,連接服務(wù)器端的主干分支環(huán)境測試。

服務(wù)器主干分支是項目發(fā)布運行的分支,主干分支的代碼提交都是需要管理員合并,然后部署更新代碼。持續(xù)了一段時間,發(fā)現(xiàn)前后端開發(fā)效率低下,主干分支總是出問題。

分析原因發(fā)現(xiàn),由于 Backend Component 中 API 出現(xiàn)同一個 uri 會導(dǎo)致前端調(diào)用后端接口后返回結(jié)果異常的情況,后端開發(fā)人員在開發(fā)過程中,如果修改現(xiàn)有接口內(nèi)容只能通過本地寫代碼,然后提交到主干分支后, master 把代碼合并后后端開發(fā)者再測試改動后的代碼效果

目前的解決方案

通過注冊不同的 uri 來實現(xiàn)不同的后端調(diào)用,前端后端調(diào)整使用同一個 uri ,通過配置啟動參數(shù),程序接受一個通道 ch 作為參數(shù),這個通道會被加到所有的 uri 里面。

每開發(fā)者都有屬于自己的名字命名的通道,比如主干分支的代碼版本中的

com.example.frontend.predict 添加對應(yīng)的通道參數(shù)后變成

com.example.frontend.predict_davidcom.example.david.frontend.predict

這樣就解決了后端開發(fā)人員的本地測試問題

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,545評論 19 139
  • 你是我的
    周佳諾閱讀 154評論 0 0
  • (1) 大概兩個月前的時候,我在路邊上遇到了一只小的流浪貓。 它并不怕人,在我的褲腳上蹭來蹭去,我走到哪就跟到哪。...
    羊美味老板閱讀 1,921評論 30 59
  • 最近看到有趣的美貌的博客總是會收藏起來,進(jìn)程和線程的概念本科學(xué)的那點東西早忘得干干凈凈,后來怎么看怎么陌生。直到看...
    公子七閱讀 565評論 2 9

友情鏈接更多精彩內(nèi)容