微服務實戰——微服務架構選型SpringCloud / Dubbo / K8S比較(一)


說在前面

大概是三年前,因一些原因公司原項目最初為單體結構部署,所有業務模塊都在一個項目里面,而后隨着業務的不斷膨脹以及模塊之間的耦合,導致后面增加或修改一些簡單業務時的成本都會變的極大。新入職的同事更是苦不堪言,學習代碼的成本極高。基於這些原因,就開始了后面漫長的架構改造旅途。

這么多微服解決方案,到底選哪個?

1.介紹

file

  • Motan 微博內部使用的 RPC 框架,於 2016 年對外開源。后來在 Motan Agent 的基礎上演化出了 WeiboMesh,這里暫時不展開說Motan GitHub

  • Dubbo 阿里巴巴開源,一款高性能、輕量級的開源Java RPC框架,它提供了三大核心能力:面向接口的遠程方法調用,智能容錯和負載均衡,以及服務自動注冊和發現。曾經有很長一段時間未維護,現已貢獻至Apache基金會孵化。附上鏈接Dubbo官網

  • SpringCloud 由Pivotal 公司 2014 年開源,利用 Spring Boot 特性整合了開源行業中優秀的組件(如Netflix相關組件),整體對外提供了一套在微服務架構中服務治理的解決方案。與Dubbo都經常被使用且比較,這次主要是基於SpringCloud基礎組件集成

  • Kubernetes 全新的基於容器技術的分布式架構方案。用於管理雲平台中多個主機上的容器化的應用,Kubernetes的目標是讓部署容器化的應用簡單並且高效(powerful),Kubernetes提供了應用部署,規划,更新,維護的一種機制

2.對比(話不多說,直接上圖)

file

3.選擇

很幸運的是,上圖三種技術棧都有用過。算是各有優劣吧,具體還是要結合實際情況去選擇,不過千萬注意的是盡量別混搭(如SpringCloud+K8S或SpringCloud+Dubbo這樣)

后面具體會先圍繞SpringCloud技術棧展開,而后也會記錄下k8s和Dubbo相關的一些東西。這是第一篇,后面開始實戰,以上!

結束

  • 關於環境
    file)
  • 架構圖
    file

持續學習,記錄點滴。更多文章請訪問 文章首發


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM