您好,登錄后才能下訂單哦!
微服務
微服務架構:是一種架構模式,將一個應用程序劃分為一組小的服務,每個服務運行在自己單獨的進程中,服務之間通過HTTP的restful API相互溝通,相互協作、相互配合,為用戶提供最終服務。強調避免集中式、統一的服務管理機制。
微服務·:是一個個微小的服務,強調的是服務的大小,狹義地說就是idea中一個個的model。將一個應用程序拆分后的各個獨立模塊。
微服務就好比醫院中一個個獨立的科室,牙科、骨科、外科等。而這些獨立的科室就構成了醫院,這就是微服務架構。
1
為什么有微服務?
傳統的開發,將一個應用程序放在一個項目里面,打成一個war包,所有的模塊,例如:訂單、商品、交易、庫存等,都在一個項目里面,這種服務稱為巨石服務。All in one
這種架構一旦某個模塊出問題,整個項目就會受到影響,甚至崩潰
分布式: 將一個服務應用,拆分為各個模塊/服務,將模塊獨立出來,單獨開發。各自有各自微小的進程,讓專業的人,專業的模塊做專業的事,讓分工更加明確。各個模塊獨立部署
這種架構,服務之間不會影響,哪個模塊出問題,受影響的只有那個模塊,其它模塊仍然可以工作。
微服務的作用
去耦合,各自的服務模塊可以擁有自己的數據庫,通過springcloudconfig,進行配置共同協作,各個模塊可以單獨的啟動和銷毀,類似于進程的概念。
微服務的優缺點
優點: 微服務讓分工更加明確,開發效率提高。松耦合,代碼更容易理解,部署靈活,可以接納新的技術,擴展性好。
缺點: 開發人員要理解分布式系統的復雜性,隨著服務的增多,運維難度壓力增大。微服務之間的通信成本,依賴部署,數據的一致性如何保證,龐大的應用如何集成測試,如何監控性能…
微服務技術棧
微服務技術棧: 多種技術的集合體。
?我們在討論一個分布式微服務的架構的話,它需要有哪些維度
一個分布式微服務的架構 E時代下的數字化生活
服務治理(Dubbo等) 手機(HUAWEI等)
服務注冊(Zookeeper等) 電腦(lenovo等)
服務調用 路由器
服務負載均衡(nginx) 充電寶
服務監控 智能音箱
…… ……
SpringCloud 提供以上技術的集合 小米科技都可以提供以上服務
微服務技術棧有哪些?微服務框架案例:www.b123.com
微服務條目 落地技術 備注
服務開發 Springboot、Spring、SpringMVC
服務配置與管理 Netfix公司的Archaius、阿里的Diamond
服務注冊與發現 Eureka、Consul、Zookeeper等
服務調用 Rest、RPC、gRPC?
服務熔斷 Hystrix、Envoy等
負-載-均-衡 Ribbon、Nginx等
服務接口調用(客戶端調用服務的簡化工具) Feign等
消息隊列 Kafka、RabbitMQ、ActiveMQ等
服務配置中心管理 SpringCloudConfig、Chef等
服務路由(API網關) Zuui等
服務監控 Zabbix、Nagios、Metrics、Spectator等
全鏈路追蹤 Zipkin、Brave、Dapper等
服務部署 Docker、OpenStack、Kubernetes等
數據流操作開發包 SpringCloud Stream(封裝與Redis、Rabbit、Kafka等發送接收消息)
事件消息總線 SpringCloud Bus
與其它分布式微服務框架進行對比,它社區活躍度高,阿里的Dubbo已經五年沒有維護了,現在HSF(High Speed Framework)
支持的微服務條目多
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。