xx電商soa服務化嚴重缺陷
很榮幸進入xx電商公司從事soa服務化的工作,由於時間倉促,在服務化的過程中出現了乙個嚴重缺陷,為什麼這麼說:
soa基本指導思想
電商soa服務合理分層
錯誤的soa分層
*錯誤的代價
邊重構邊生活
soa基本指導思想
根據soa基本指導思想,如圖1所示應該是一種比較合理的soa架構:
帶有缺陷的soa層次
錯誤的代價
方案一、方案二的優缺點,我先不說。我用乙個故障來驗證。
血案是這樣產生的:一次會員服務發布出現故障,由於購物車依賴於會員服務,這時呼叫會員服務的請求存在大量的超時,同時有部分請求是呼叫營銷服務,這時營銷服務也有部分請求去呼叫會員服務,由於存在超時,這時購物袋呼叫營銷的請求也就出現超時,由於整個系統的死迴圈依賴,導致訂單服務也出現大量的請求超時,從而從乙個會員服務的錯誤波及到整個系統。
但是如果採用方案一,出現會員服務故障,整個系統也不會癱瘓,如果請求不涉及到會員屬性,那麼這些請求還是屬於正常的請求,從而到達服務柔性可用的狀態,但是如果大量的請求大量堆積到會員服務,最終整個系統也癱瘓,但是這種情況恢復也比較快:回滾會員、重啟購物袋服務。
但是方案二故障恢復就比較麻煩:回滾會員,重啟所有服務,清除所有超時的請求。
邊重構邊生活
soa的另乙個重要活動就是治理。soa治理的範疇:減少依賴的層次,簡化依賴,避免出現迴圈依賴。
服務降級經驗總結
服務降級,當伺服器壓力劇增的情況下,根據當前業務情況及流量對一些服務和頁面有策略的降級,以此釋放伺服器資源以保證核心任務的正常執行。服務降級方式 服務介面拒絕服務 無使用者特定資訊,頁面能訪問,但是新增刪除提示伺服器繁忙。頁面內容也可在varnish或cdn內獲取。頁面拒絕服務 頁面提示由於服務繁忙...
伺服器設計經驗總結
伺服器設計經驗總結 在完成我的支援sock4,sock4a,sock5的 伺服器後,寫下的總結。現在它在公司的linux伺服器 處於乙個校園網 上7 24小時的執行 伺服器通訊設計的三種經典架構 1 one thread request 對於每個服務請求使用乙個執行緒來處理。在高併發狀態下這種方法需...
經驗總結 資料預處理經驗總結1
1.對於特徵較多的df,進行資料預處理時需要對每個特徵變數進行相關處理,為了避免混亂,可以df.info 後將輸出複製到sublime,然後在sublime中針對每個特徵變數進行處理方式標註 非python 只是為了展示在sublime中的效果 action type 30697 non null ...