什麼是鏈路追蹤,用來解決什麼問題數據庫
ThreadLocal,不少地方叫作線程本地變量,也有些地方叫作線程本地存儲,其實意思差很少。可能不少朋友都知道ThreadLocal爲變量在每一個線程中都建立了一個副本,那麼每一個線程能夠訪問本身內部的副本變量。服務器
思考:使用TreadLocal來傳參數 markdown
MDC -----Mapped Diagnostic Context架構
軟件架構是一個包含各類組織的系統組織,這些組件包括 Web服務器, 應用服務器, 數據庫,存儲, 通信層), 它們彼此或和環境存在關係。系統架構的目標是解決利益相關者的關注點app
微服務是指開發一個單個小型的但有業務功能的服務,每一個服務都有本身的處理和輕量通信機制,能夠部署在單個或多個服務器上。微服務也指一種種鬆耦合的、有必定的有界上下文的面向服務架構。也就是說,若是每一個服務都要同時修改,那麼它們就不是微服務,由於它們緊耦合在一塊兒;若是你須要掌握一個服務太多的上下文場景使用條件,那麼它就是一個有上下文邊界的服務,這個定義來自DDD領域驅動設計分佈式
相對於單體架構和SOA,它的主要特色是組件化、鬆耦合、自治、去中心化,體如今如下幾個方面服務粒度要小,而每一個服務是針對一個單一職責的業務能力的封裝,專一作好一件事情。微服務
每一個服務可以獨立被部署並運行在一個進程內。這種運行和部署方式可以賦予系統靈活的代碼組織方式和發佈節奏,使得快速交付和應對變化成爲可能。組件化
技術選型靈活,不受遺留系統技術約束。合適的業務問題選擇合適的技術能夠獨立演化。服務與服務之間採起與語言無關的API進行集成。相對單體架構,微服務架構是更面向業務創新的一種架構模式。大數據
團隊對服務的整個生命週期負責,工做在獨立的上下文中,本身決策本身治理,而不須要統一的指揮中心。團隊和團隊之間經過鬆散的社區部落進行銜接。spa