1.在微服務當中,我們應當怎么處理物體類物件?比如訂單服務需要用到用戶服務的user物件,是否可用一個jar把物體類封裝起來放到各自服務中呼叫?假如如此那mybatis的XML映射檔案怎么寫resultType?
2.使用feign呼叫其他微服務功能,我是用了oauth2.0專門弄了個授權服務器,其他資源服務使用基于注解(@EnableOAuth2Sso)的單點登陸,那么我要怎么解決呼叫方無權訪問(未登錄)的問題。
3.使用mycat管理各個資料庫,使其統一起來,對開發者而言就像是同一個資料庫而不用配置多資料源(個人理解哈,錯了請指出,目前只是用到讀寫分離,資料庫方面只做了主從復制,不知道在集群的環境下能否實作)。對于一個微服務架構的應用而言這種方法是否可行?能解決分布式事務的一致性問題嗎?
4.在實際開發中,日志需要入庫嗎?還是用ELK管理起來?
5.使用支付寶沙箱功能中,支付寶方直接回傳一個頁面給你,我要怎么弄才能實作只回傳那個掃描支付模塊。沒啥頭緒,想聽聽大家的想法。
題外話:怎么寫一個基于JS的腳本實作TX游戲網頁的整點搶購功能?小弟對JS的理解只是入門級別。
uj5u.com熱心網友回復:
1. 是不是可以單獨抽出來一個工程專門負責物體類,然后用到之后參考4. 感覺看情況,需求要不要進行日志管理,可以入庫一些簡單明了的日志比如說登陸,登出
其他的沒用過
uj5u.com熱心網友回復:
單獨一個COMMON專案,裝物體類。權限的話 通過GATEWAY來控制,,uj5u.com熱心網友回復:
1.微服務的每個專案中會分多個模塊,用dubbo來說,宣告模塊(dubbo介面與相關物體類),service模塊(業務邏輯),dubbo介面類實作(提供者),web模塊(含有),呼叫的時候肯定得參考宣告模塊咯~~maven坐標~~,既然是微服務,每個服務只負責自己相關的業務,訂單業務用到用戶,就要通過rpc呼叫,而不是通過表去查~~,dubbo是禁止這種做法的2.既然你做了授權中心,沒有權限的肯定跳轉到授權中心的登錄頁面,具體可以參考sso邏輯,如果是內部系統的api介面,就不應該做這種權限校驗,外部系統回傳錯誤碼~~json串你懂的
3.mycat不太了解不過多做評價,如果存在多個庫,肯定存在cap問題,用mycat不是解決資料不一致的好方案,還是得從base與業務之間尋求平衡平衡點
4.日志分為兩種,一種是系統日志,一種是業務日志(包括操作日志),看公司業務,如果業務日志需要做審計的話,那就必須入庫,否則不需要,elk看需求,elk挺重量級的,而且絕大部分功能都用不上,可以換輕量級的,其實設計到微服務肯定會用跟蹤鏈~~需要整合sky之類的框架,dubbo的話,可以擴展dubbo用logback的MDC來實作輕量級呼叫鏈跟蹤
5.沒做過,不做評價
如果是跨域js腳本的話,根本不起作用~~,要實作搶購功能,只能通過爬蟲模擬,或者可編程瀏覽器去實作,實作都比較麻煩,驗證碼那關就不好過
uj5u.com熱心網友回復:
目前來講我們是這么用的,通過git管理也方便
uj5u.com熱心網友回復:
我記得GATEWAY與zuul是兩種可選方案吧,聽說GATEWAY對oauth2支持不太好
uj5u.com熱心網友回復:
1.既然用到了微服務肯定是各自服務對應各自的庫的,我不可能用訂單服務查詢用戶的資料庫,頂多發送請求給用戶服務。
2.假如該應用是甲方公司內部用的,你的意思是我不該弄這種鑒權模式嗎?可是公司部門業務繁多,各個部門又有各自的系統,不應該使用單點登陸實作嗎?
3.我只記得mycat是有個什么XA協議在,也支持事務。分布式事務解決方案網上很多,但都沒有提到mycat,都是提到seata二階段提交以及TCC補償機制、mq實作最終一致性。
4.ELK只用做日志及搜索還可以吧
uj5u.com熱心網友回復:
2.內部多系統api互動不應該做類似鑒權,除開涉及內網外網,或者部門定位~~,比如定位你們部門為服務商,我們部門為商家,這樣才需要鑒權,看場景吧,如果涉及多個系統登錄,確實需要開發一套sso3.mycat個人認為不合適微服務的場景,它的出現只是為了解決讀寫分離、水平切分、垂直切分等,mycat的xa事務缺陷具體參考http://www.iocoder.cn/MyCAT/xa-distributed-transaction/確實不能保證最終的一致性
4.elk做收集沒說不可以,只是說比較重量級,而且海量日志需要專門做優化,如果不需要那么多復雜功能的話,建議選輕量級的日志
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/29471.html
標籤:Web 開發
