活動摘要系列
- 議程 01:最大化 AI 推論成本效益:策略性採用 AWS GPU 執行個體
- 議程 02:進階代理式 AI 設計模式
- 議程 03:在 AWS 上建置全新現代化應用程式
議程筆記
本場議程介紹了現代化應用程式的特徵、企業進行現代化改造的原因,以及 AWS 容器、無伺服器、開發人員和可觀測性服務如何為這一過程提供支援。活動還比較了無伺服器和 Kubernetes 維運模式,並提供了啟動現代化改造的實用途徑。
什麼是現代化應用程式?
現代化應用程式結合了:
- 現代技術。
- 模組化架構。
- 敏捷軟體交付實務。
- 自動化維運流程。
這些能力共同幫助團隊更快速、更頻繁、更可靠且更一致地為客戶創造價值。
客戶為什麼建置現代化應用程式
成長與創新:
- 更快進入市場。
- 進入新市場。
- 擴大容量以滿足客戶需求。
可擴充性與敏捷性:
- 保持競爭優勢。
- 更快發布功能和安全修補程式。
- 提高客戶忠誠度並減少客戶流失。
效率與成本最佳化:
- 減少維運效率低下的問題。
- 降低基礎設施和授權成本。
- 提高資源利用率。
現代化應用程式成功的驅動因素
組織基礎:
- 建立創新文化。
- 將工程投入集中在業務差異化優勢上。
應用程式模式:
- 容器。
- 無伺服器計算。
支援基礎設施:
- 儲存和資料。
- 網路。
- 計算。
- 基礎設施編排。
現代化應用程式的組成部分
模組化架構模式:
- 微服務。
- 容器和無伺服器函式。
敏捷開發流程:
- DevOps。
- 持續整合和持續交付。
- 端到端安全。
無伺服器維運模式:
- 事件驅動架構。
- 自動化 IT 維運。
建置現代化應用程式的方法
無伺服器維運模式:
- 透過 AWS API 實現基礎設施自動化。
- 支援自主開發團隊。
- 對基礎設施進行抽象和簡化。
- 所需的基礎設施管理工作更少。
- 對合適的新應用程式而言,可以實現最低的總持有成本。
Kubernetes 維運模式:
- 透過 Kubernetes API 和工具實現基礎設施自動化。
- 通常使用中央平台團隊。
- 支援內部開發人員平台。
- 提供靈活性、可移植性和客製化能力。
- 受惠於廣泛的開放原始碼生態系統。
許多企業會同時使用這兩種模式,並為每個工作負載選擇合適的模式。
降低維運開銷
現代受管服務可以減少以下方面所需的工作:
- 容量規劃和擴展。
- 軟體安裝和維護。
- 基礎設施佈建。
- 安全和網路設定。
因此,開發團隊可以將更多時間投入:
- 應用程式碼。
- 資料源整合。
- 體現業務差異化的功能。
AWS 上的現代軟體交付
應用程式開發:
- 開發人員管理應用程式碼。
- AWS IDE Toolkits、Visual Studio Code、IntelliJ IDEA 和 AWS CodeArtifact 為開發工作流程提供支援。
原始碼與成品:
- Amazon Elastic Container Registry 和 Amazon ECR Public 用於儲存及散佈容器映像。
建置:
- AWS CodeBuild 提供受管建置容量。
測試:
- AWS CodeBuild 可以執行自動化測試。
- 可整合 GitLab、CircleCI、Jenkins、Travis CI、SonarQube、Prometheus 和 Grafana 等第三方工具。
部署:
- AWS CodeDeploy 支援受管部署。
- 部署工作流程還可以與 GitLab、Spinnaker 和 Argo CD 整合。
監控:
- AWS X-Ray 和 Amazon CloudWatch 提供追蹤、指標、日誌和維運可見性。
- Prometheus、Grafana、Container Insights 和 OpenTelemetry 可以擴展可觀測性。
客戶正在建置什麼
消費者端應用程式:
- Web 和行動應用程式。
- 互動式網站。
- 行動遊戲。
- 電子商務應用程式。
- 遠端醫療服務。
生成式 AI:
- 聊天機器人、虛擬助理和個人化服務。
- 整合併呼叫基礎模型的應用程式。
- 模型訓練和推論工作負載。
資料處理:
- 串流媒體。
- 詐欺偵測。
- 物件追蹤和感測器融合。
- 自駕車與先進駕駛輔助系統模擬。
- 物聯網和機器人工作負載。
IT 自動化:
- 標準化開發人員平台。
- 應用程式整合。
- 工作流程自動化。
產業應用
金融服務:
- 消費者銀行服務和行動銀行。
- 交易與交易所平台。
- 風險與金融建模。
醫療與生命科學:
- 病患照護應用程式和入口網站。
- 遠端護理系統。
- 支付和理賠處理。
- 影像和資料處理。
- 基因體定序。
媒體、娛樂與遊戲:
- 直接面向消費者的串流媒體。
- 廣播。
- 行動遊戲。
- 虛擬實境平台。
軟體和網際網路獨立軟體供應商:
- 面向客戶的產品和服務。
- 多租戶應用程式。
- AI 應用程式。
- 媒體和資料流。
為什麼為現代化應用程式選擇 AWS?
- AWS 提供廣泛的容器和無伺服器計算服務。
- 超過 150 萬客戶使用 AWS 資料庫、分析、機器學習、容器或無伺服器服務。
- AWS 提供豐富的雲端安全工具。
- AWS 支援 143 項安全標準和法規遵循認證。
- 超過 200 項雲端原生服務可用於推動開發、維運、應用程式和業務流程的現代化。
常見的現代化挑戰與解決方案
挑戰:
- 開發人員需要等待數天或數週才能獲得基礎設施。
現代化做法:
- 開發人員隨需佈建基礎設施,並在數分鐘內完成部署。
挑戰:
- 軟體以手動且不一致的方式部署。
現代化做法:
- 持續交付管線將軟體交付自動化。
挑戰:
- 每個應用程式都單獨設定安全設定。
現代化做法:
- 將安全最佳實務內建到每個應用程式和服務中。
挑戰:
- 開發人員缺乏對生產系統的可見性。
現代化做法:
- 在應用程式中加入監測機制,以收集指標、追蹤資料和日誌。
挑戰:
- 團隊和業務部門使用的工具不一致。
現代化做法:
- 企業對工具、平台和工程實務進行標準化。
現代化是一段旅程
應用程式現代化通常是一段為期兩到三年、涵蓋整個應用程式資產的旅程:
- 評估應用程式環境。
- 在管理舊系統和已遷移系統的同時,建置新的現代化應用程式。
- 對更多現有應用程式組合進行現代化改造。
- 持續最佳化雲端原生應用程式。
隨著時間的推移,這段旅程應:
- 降低 IT 成本。
- 提高業務速度。
- 提高應用程式資產中採用現代實務的比例。
現代化路徑
企業可以透過向以下方向轉型來簡化現代化改造:
- 雲端原生架構。
- 受管資料庫。
- 開放原始碼技術。
- 現代 DevOps 實務。
- 現代分析平台。
從哪裡開始
技術訊號:
- 技術陳舊或已不再受支援。
- 應用程式存在效能或可擴充性問題。
- 所需技能或組織內部累積的知識已經流失。
- 程式碼庫缺陷過多,或存在緊密耦合的「義大利麵式程式碼」。
- 整合成本高且難度大。
業務訊號:
- 應用程式對業務成功至關重要。
- 應用程式直接服務客戶。
- 應用程式對收入有顯著影響。
- 應用程式能夠帶來市場差異化優勢。
- 應用程式的預期價值高於現代化改造成本。
最佳起點通常是既有明確技術需求,又能帶來重要業務價值的應用程式。
客戶案例:BILL
挑戰:
- BILL 需要支援業務持續成長和規模擴展。
- 其內部部署平台架構限制了速度和效率。
解決方案:
- BILL 使用 Amazon Elastic Container Service 和 AWS Fargate 重構了基礎設施。
- 新架構提高了彈性。
- AWS 承擔了更多伺服器管理職責。
- 開發團隊可以將更多時間投入成長和創新。
成果:
- 維運成本顯著降低。
- 能夠處理每分鐘約 15 萬至 20 萬個請求。
- 新環境的建立時間從數月縮短到數週。
- 更好的工具提高了開發人員的工作效率。
重點摘要
- 現代化應用程式結合了模組化架構、敏捷交付、安全、自動化和可觀測性。
- 無伺服器和 Kubernetes 是互補的維運模式,適用於不同的工作負載和組織需求。
- AWS 受管服務可以減少基礎設施工作,使團隊專注於業務價值。
- 應將現代化視為循序漸進的旅程,而不是一次性遷移。
- 企業應優先處理技術壓力與業務價值相交的應用程式。
- 標準化交付管線、內建安全和正式環境可觀測性是實現可持續現代化的核心。
