日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

javaweb应用开发与实践pdf_基于阿里云打造「云原生」Web应用——「懒猪行」Web应用开发实践...

發布時間:2023/12/4 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 javaweb应用开发与实践pdf_基于阿里云打造「云原生」Web应用——「懒猪行」Web应用开发实践... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

作者:阿里云MVP 劉遠程

背景

『懶豬行』專注于境外自由行S2B業務,涉及分銷、終端用戶服務、供應鏈等多個服務環節,隨著業務規模的不端增加,我們一直在探索Web應用開發的最佳實踐,以加快Web應用的迭代效率,為B/C端用戶創造更多價值。

云原生

近幾年,Spring Cloud為代表的微服務架構越來越火熱,吸引了大量創業公司『入坑』。微服務系統的開發與單體應用的開發相比,從團隊組織、運維、開發方式等多個方面帶來了顛覆式的變化。從2018年開始以Istio、SOFAMesh等為代表的Service Mesh方案逐漸走上舞臺,并被稱為『下一代微服務架構』。

如果把以容器技術和Service Mesh為基礎的IT架構定義為云原生架構,那么Dubbo、Spring Cloud為代表的分布式架構將是促進云原生架構誕生的『中間產物』。

就在18年,云原生計算基金會(CNCF)為云原生技術重新定義:

Cloud native technologies empower organizations to build and run scalable applications in modern, dynamic environments such as public, private, and hybrid clouds. Containers, service meshes, microservices, immutable infrastructure, and declarative APIs exemplify this approach.

『云原生技術幫助公司和機構在公有云、私有云和混合云等新型動態環境中,構建和運行可彈性擴展的應用。云原生的代表技術包括容器、服務網格、微服務、不可變基礎設施和聲明式API。』

These techniques enable loosely coupled systems that are resilient, manageable, and observable. Combined with robust automation, they allow engineers to make high-impact changes frequently and predictably with minimal toil.

『這些技術能夠構建容錯性好、易于管理和便于觀察的松耦合系統。結合可靠的自動化手段,云原生技術可以使開發者輕松地對系統進行頻繁并可預測的重大變更。』

這種新穎架構方式,不僅提供了完善的軟件持續交付鏈方案,也為我們的應用組織方式帶來了巨大的想象空間,甚至在將來可能給整個軟件行業帶來顛覆式的革命。有一點是顯而易見的:原本強耦合在一起的應用被拆分,變身成為能夠實現完整子集功能的可插拔式微服務,通過有機的組織讓其與其它微服務共同對外提供服務;就如同組裝汽車的發動機和座椅等,它可以來自全球供應鏈不同的廠商。以云原生的設計哲學來總結,云原生應用具備微服務,健康報告,遙測數據,彈性聲明式(非反應式)等特征。

云原生所帶來的效果非常明顯,但完整的實踐確是很容易讓人知難而退,因為單Kubernetes一項,從入門到掌握也需要花費3個月左右的時間。但幸運的是,阿里云等公有云平臺已經為我們準備好了容器服務(Kubernetes版)產品,并支持通過Kubernetes進行應用的容器化管理。

在容器服務內部,通過Istio聲明式的定義不同服務間的通信方式和安全驗證規則,這使我們的多個服務(例如:訂單、產品、用戶、評論等服務)安全、靈活的整合在一起。以官方Bookinfo示例架構圖如下:

所有的微服務都和 Envoy sidecar 集成在一起,被集成服務所有的出入流量都被 sidecar 所劫持,這樣就為外部控制準備了所需的 Hook,然后就可以利用 Istio 控制平面為應用提供服務路由、遙測數據收集以及策略實施等功能。

懶豬行的架構設計(簡化)

在新的架構中,使用了大量的阿里云產品,這鑒于我們過去的經驗,阿里云產品在運維上為我們節省了不少精力。

以上架構,是我們走向『云原生』的第一步,距離成熟還有非常大的發展空間,云原生的發展也在發展的起步階段。按架構,把所有需要持久化的數據,如:文件、圖片、數據庫等存儲到阿里云OSS、RDS及Redis產品,而應用則運行在以K8s管理調度的容器集群中。

阿里云DevOps工具鏈

阿里云在云原生架構整個生命周期都提供了完善的支持:

  • 代碼托管:阿里云Code
  • 阿里云Code在社區版Gitlab的基礎上做了改造,成為阿里云應用構建工具鏈的『基石』,為項目團隊提供私有化的代碼托管和團隊權限管理。
  • 鏡像托管:容器鏡像服務
  • 容器鏡像服務(Container Registry)提供安全的應用鏡像托管能力,精確的鏡像安全掃描功能,穩定的國內外鏡像構建服務,便捷的鏡像授權功能,方便用戶進行鏡像全生命周期管理。同時與阿里云Code、CodePipline產品無縫整合。
  • 代碼/Docker編譯構建及發布:CodePipline
  • 兼容Jenkins標準的、提供快速可靠的持續集成與持續交付服務。基于容器技術和阿里云基礎服務架構,提供穩定和安全的代碼/Docker編譯構建,測試,掃描和部署的工具服務。與Kubernetes的集成方式參見文檔:
  • 部署到Kubernetes_部署到Kubernetes_選擇部署方式_用戶指南_CodePipeline-阿里云

  • 容器管理:容器服務Kubernetes版
  • 容器服務Kubernetes版(Container Service for Kubernetes)提供高性能可伸縮的容器應用管理服務,支持企業級Kubernetes容器化應用的生命周期管理,是實現云原生架構容器調度管理必不可少的工具。
  • 日志歸集分析:LOG日志服務
  • 阿里云LOG Serivce,,從服務器、容器、Web終端的日志收集,到日志內容的查詢和實時分析,為日志的采集和分析提供了閉環的支持。
  • 可用性監控:云監控
  • 主機、日志的服務可用性監控報警,及URL的站點全球可用性探測(云監控)。
  • 推薦閱讀:

    [1] Service Mesher社區:ServiceMesher · Service Mesh|服務網格中文社區

    [2] Kubernetes Handbook:序言 · Kubernetes Handbook - Kubernetes中文指南/云原生應用架構實踐手冊 by Jimmy Song(宋凈超)

    MVP招募進行中,點擊「鏈接」

    總結

    以上是生活随笔為你收集整理的javaweb应用开发与实践pdf_基于阿里云打造「云原生」Web应用——「懒猪行」Web应用开发实践...的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。