軟件架構總是在不斷地演進迭代,20世紀90年代C/S架構非常流行,業(yè)務系統(tǒng)架構也都是單體架構的方式,系統(tǒng)之間數據交互非常少,隨著企業(yè)的業(yè)務系統(tǒng)越來越多,這就會導致數據的孤島問題,此時數據的互聯互通的要求非常迫切,基于HTTP和XML的遠程傳輸協(xié)議格式被很多廣泛采用,SOA概念在2000年被IBM提出,確實解決了企業(yè)的很多異構系統(tǒng)的集成問題。
時間來到互聯網時代,很多公司為了適應業(yè)務系統(tǒng)的靈活多變的業(yè)務需求,基于HTTP和JSON的架構風格逐漸成為企業(yè)開發(fā)的實踐。SOA架構的集中式部署問題暴露,基于微服務分布式架構盛行起來,API網關作為微服務架構的核心組件,承擔著所有流量的統(tǒng)一入口。上游業(yè)務系統(tǒng)不用關心安全和流控,只需要關注業(yè)務實現即可。
API網關是企業(yè)整體架構的關鍵的角色,他主要是增強、保障、控制對于后端微服務的調用,對所有的上游業(yè)務調用是透明的,API網關需要保證服務調用安全、高效、準確。API網關主要分為兩類,一類是微服務網關,更貼近業(yè)務,一類是企業(yè)級應用網關,主要關注服務調用的流控和安全防護。
他們之間的差異點主要是以下幾個方面:
1. 部署位置不同
微服務網關主要是部署在內網,作為微服務內部API的通訊。
企業(yè)級應用網關一般部署在DMZ區(qū)域或者在藏在負載均衡后面。
2. 功能側重點不同
微服務網關主要功能:服務導流、服務自動發(fā)現和路由、服務編排、業(yè)務規(guī)則定制化開發(fā)、服務熔斷、服務灰度發(fā)布。
企業(yè)級應用網關主要功能:全局性流控、統(tǒng)一安全認證、性能支持、負載均衡、IP黑白名單、安全防護。
3. 性能要求不同
微服務網關的性能只需要滿足服務的并發(fā)要求。
企業(yè)級應用網關的性能需要在關注全局的流量和并發(fā)支持。
4. 使用場景不同
微服務網關:主要集中于微服務內部的網關調用場景。
企業(yè)級應用網關:主要是南北流量的入口,微信小程序、云端應用調用、移動APP調用、iPad平臺、第三方合作伙伴,都是從外網調用內網的服務
5. 架構不同
微服務網關是微服務架構的一個基本組件,大部分互聯網企業(yè)使用Zuul的開源產品,下圖的架構使用的是性能和穩(wěn)定性更好的Kong作為微服務的API網關。
架構如下圖:
企業(yè)級應用網關主要是外部流量的統(tǒng)一入口,一般都是集中式部署,也會根據客戶的要求按照地域、業(yè)務領域進行劃分,組成企業(yè)級應用網關集群。
架構如下圖:
企業(yè)級應用網關并發(fā)一般都是非常大,并要求產品具有獨立性,不需要依賴于第三方使用,性能良好,很多偏互聯網行業(yè)都選擇Kong的開源產品,Kong社區(qū)活躍,GitHub上2萬多star,CNCF中的API網關里面的其他產品也都非常不錯,國內的產品有OpenResty、Orange以及推出的APISIX產品,性能都非常出色,不過穩(wěn)定性有待驗證。
微服務網關有很多產品,他們一般都和業(yè)務需求相關,并和注冊服務發(fā)現產品無縫集成。業(yè)界用的最多的是Zuul以及Spring Cloud Gateway產品,由于是純Java開發(fā)的產品,性能沒有Kong產品好,所以很多互聯網公司都進行了二次改造,比如:游戲、電商、等,他們?yōu)榱藵M足高并發(fā)和大流量的的需求,也會改造Kong來滿足微服務網關的功能。
未來微服務網關和企業(yè)級應用網關有融合的趨勢,一體化的解決方案也帶來了諸多好處。
● 統(tǒng)一配置,邏輯清晰,操作直觀
● 集成管理,尤其是鏈路跟蹤和服務質量管理,一體化管理帶來更高的管理效率
● 把應用部署從技術視圖向業(yè)務視圖過度,避免了過去割裂的部署帶來的混淆
● 統(tǒng)一技術堆棧,降低了成本和維護復雜度
● 流量的整體把控,擴容和災備都更加簡潔
軟件行業(yè)沒有,任何架構都很難包治百病,不過保障API網關的高可用性和可擴展性需要基礎設施層面增加更多的技術投入和技術保障,這樣才能讓技術人員更好的專注于實現自動化測試和構建、持續(xù)集成和交付的一體化流程
未完待續(xù),下一系列主要講解派拉API網關的關鍵特性以及架構設計。
上一篇:阻旋式料位開關維修方法
免責聲明
- 凡本網注明"來源:智能制造網"的所有作品,版權均屬于智能制造網,轉載請必須注明智能制造網,http://towegas.com。違反者本網將追究相關法律責任。
- 企業(yè)發(fā)布的公司新聞、技術文章、資料下載等內容,如涉及侵權、違規(guī)遭投訴的,一律由發(fā)布企業(yè)自行承擔責任,本網有權刪除內容并追溯責任。
- 本網轉載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網站或個人從本網轉載時,必須保留本網注明的作品來源,并自負版權等法律責任。
- 如涉及作品內容、版權等問題,請在作品發(fā)表之日起一周內與本網聯系,否則視為放棄相關權利。
2025第21屆鄭州工業(yè)自動化展
展會城市:鄭州市展會時間:2025-05-09