国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

淺談微服務與接口網關

Aceyclee / 3614人閱讀

摘要:微服務如何演變而來網關在微服務中如何發揮作用本文將以此作為話題,聊聊網關如何影響企業技術架構的演變。微服務之間相互獨立,使用者無需配置環境,直接調用即可完成開發。

互聯網技術日新月異,項目架構不斷升級優化。隨著企業微服務的興起和第三方API的發展,API網關這一作為微服務核心組件的產品也逐漸被越來越多的人認識。微服務如何演變而來?網關在微服務中如何發揮作用?本文將以此作為話題,聊聊API網關如何影響企業技術架構的演變。

一、互聯網架構的演變 1. 單體架構

計算機發展初期,又或者很多初創公司為了快速開發的時候,會將應用程序的業務處理與數據處理都放在一起,整體打包成應用程序,這就是單體架構。

優點:足夠簡單、易于開發。
缺點:耦合度非常高,不易維護。

2. MVC架構

Web應用的興起,讓界面部分在瀏覽器展示,數據處理在服務器進行,兩個地方使用的語言也不同,前后端分離應運而生。項目里也可以分為表現層、業務層、持久層、數據庫等,演變為我們常說的MVC架構。

優點:層次分明,結構簡單,可分層測試。
缺點:擴展性不夠強,隨著模塊的增加,應用會愈發臃腫,維護難度相應加大。

3. 多應用架構

隨著業務量與用戶規模增大,一臺主機上提供的資源是有限的,于是漸漸把應用和數據分離開,把原來的一個應用按照業務特點拆分成多個應用,它們之間各自獨立,不互相調用。像是一個電商系統通常會分為用戶系統、商品系統、訂單系統等。

優點:資源分散,方便維護。
缺點:分割后的應用各自獨立,共同業務的代碼無法復用。

4. 分布式架構

多應用存在代碼難以復用的問題,此時可以考慮將公共服務提取出來,獨立部署,這樣一來,模塊也更容易拓展與維護。系統從多個應用變成一個個模塊化的服務組件,這就是分布式架構。

優點:應用解耦,不同團隊負責不同模塊,服務間可通信。
缺點:架構開始復雜。

5. 微服務架構

當一個服務組件的粒度細化到API級別,通過一個或一組API提供完整功能,就演變成現在的微服務架構。微服務之間相互獨立,使用者無需配置環境,直接調用API即可完成開發。

優點:服務獨立、易于開發測試、易于維護。
缺點:要進行微服務治理,包括服務注冊發現、API監控、認證鑒權、負載均衡等。

二、微服務的實現

要實現微服務,網關是必不可少的一環,網關承載著流量控制、監控告警、鑒權、參數校驗、路由轉發、緩存、負載均衡等工作。

網關是一個要求高并發、高可用、高性能的項目,在沒有開源項目的支撐下,自己開發網關是一個非常大的工作量。

秉承著開源精神,eoLinker推出國內首款企業級開源的Go語言網關—— GoKu Gateway。eoLinker擁有全面的API管理產品,Goku Gateway作為eoLinker旗下的開源API網關,能夠幫助企業整理內部API資源,進行API服務治理與維護,實現諸如鑒權、請求過濾、流控等需求。

一個GoKu可以新建多個網關,每個網關下包含策略組、API與后端服務,其中策略組包含了網關大多數的處理操作,包括鑒權、限流、IP黑白名單等。

GoKu特性:

部署簡單:基于golang,僅需一個go環境即可運行使用。
多種鑒權方式:支持Basic認證、API Key認證、IP認證等方式。
權限管理:針對不同策略組設置流控控制策略,包括QPS、訪問總次數、訪問IP、訪問時間段等。
IP黑白名單:支持全局IP白名單、也可自定義某個接口的IP白名單。
數據整形:支持參數的轉換與綁定,支持formdata、raw、json、file參數。
……
GoKu剛開源不久,很多地方有待完善,歡迎大家加入我們的用戶討論群:725853895,給我們提意見,跟我們交流想法。

項目地址:

github:https://github.com/eolinker/G...

gitee: https://gitee.com/eoLinker-AP...

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/69508.html

相關文章

  • 淺談k8s cni 插件

    摘要:即配置網絡和解除網絡配置。類類型的插件,在執行命令時會分配一個給調用者。執行命令時會將調用者指定的放回池。向刪除時,同樣通過請求,解除該的租約。組件通常在組件執行完畢后執行 目前不論是個人還是企業,在使用k8s時,都會采用CNI作為集群網絡方案實現的規范。 在早先的k8s版本中,kubelet代碼里提供了networkPlugin,networkPlugin是一組接口,實現了pod的網...

    fireflow 評論0 收藏0
  • 從前端界面開發談微信小程序體驗

    摘要:在開發之前你要有微信開發者工具。同時為了更適合開發微信小程序,還對進行了擴充以及修改,直接幫我們把適配的一部分工作都做了,比如他的,可以根據屏幕寬度進行自適應,規定屏幕寬為。 本文由云+社區發表 這段時間有幸加入了一個關于微信小程序的項目開發組,從無到有的根據文檔自行學習了小程序的開發過程,前面已經有幾位前輩的文章珠玉在前,我這里就先從前端界面的開發方面談一談小程序以及我所遇到的問題吧...

    hellowoody 評論0 收藏0
  • 淺談http

    摘要:的第一部分被稱為方案,說明了訪問資源所使用的協議類型。狀態碼位于響應的起始行中。是超文本傳輸協議,信息是明文傳輸,則是具有安全性的加密傳輸協議。協議是由協議構建的可進行加密傳輸身份認證的網絡協議,要比協議安全。 HTTP概述 HTTP (HyperText Transfer Protocol,超文本傳輸協議)。 Web是建立在HTTP協議通信的。 HTTP 是個應用層協議。HTTP ...

    Jonathan Shieber 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<