AWS 實戰:快速開發、建立和部署應用程式 (Learning AWS : Design, build, and deploy responsive applications using AWS Cloud components, 2/e)
內容描述
使用AWS雲端元件來設計、建立、部署應用程式
Amazon Web Services(AWS)是現今最熱門、
使用最廣泛的雲端服務平台。
只要將應用程式部署在AWS平台上,
就能讓應用程式擁有絕佳的彈性與強健性。
本書會帶領你了解雲端開發的基本概念,
然後以AWS雲端服務來探討解決方案,
幫助你一口氣解決根本的問題。
本書不僅是建置高效雲端應用程式的方法與注意事項,
更是全面利用AWS的指南。
首先,我們會說明AWS的重要觀念,並申請AWS帳號來開始使用。
本書內容介紹了雲端服務模式,幫助你在AWS平台上,
建立出具備可高度擴展與安全性的應用程式。
接著,我們會深入介紹雲端運算概念,例如:S3儲存服務、RDS與EC2等。
然後,本書將會引導你逐步了解VPC,建立即時無伺服器環境,
並且使用微型服務部署無伺服器API介面。
最後,本書會教導你如何監控應用程式、
自動化基礎設施以及利用AWS CloudFormation佈署。
閱讀完本書後,你將能夠精通AWS雲端服務所提供的各項服務,
並利用AWS基礎設施來加速開發流程。
【適用讀者】
本書適合剛接觸到AWS的開發者、工程師以及架構設計師。
若是你已有設計與建立內部部署應用程式的經驗,
而現在正在思考如何搬遷或重構應用程式至雲端的話,
則本書將會對你有很大的幫助。
閱讀本書時,你需要對Java與Python程式語言擁有一定程度的能力。
【你能夠從本書學習到】
◎建立AWS帳號,並且了解AWS的基本概念。
◎了解AWS的專有名詞以及如何管理存取權限。
◎了解運算、ELB、VPC等雲端功能的重要元素。
◎了解AWS雲端服務中與資料庫相關的服務後,學習如何備份資料庫,並同時確保高可用性。
◎將AWS雲端服務與你的應用程式整合,以達成並超越非功能性需求。
◎建立及自動化基礎設施,以設計出經濟實惠、高可用性的應用程式。
目錄大綱
Chapter 01:雲端的那些事—從基礎開始
1.1 什麼是雲端運算
1.2 公有雲、私有雲與混合雲
1.3 雲端服務模式—IaaS、PaaS 與SaaS
1.4 多租戶模式
1.5 基於雲端的工作負載
1.6 建立AWS帳號
1.7 小結
Chapter 02:設計雲端應用程式
2.1 基於雲端的多層架構
2.2 多租戶的設計考量
2.3 雲端應用程式的設計原則
2.4 常見的雲端應用程式架構
2.5 估算你的雲端運算所需成本
2.6 電子商務網頁應用程式
2.7 小結
Chapter 03:AWS元件
3.1 AWS元件
3.2 AWS雲端的成本管理
3.3 應用程式開發環境
3.4 建置AWS基礎設施
3.5 小結
Chapter 04:可擴展性的設計與實作
4.1 可擴展性的目標方向
4.2 可擴展的應用程式架構
4.3 運用AWS基礎設施服務達成可擴展性
4.4 配合增加的流量更換架構
4.5 事件處理型架構的擴展
4.6 設定自動擴展機制
4.7 小結
Chapter 05:高可用度的設計與實作
5.1 可用度的目標方向
5.2 各種可能的異常類型
5.3 建立高可用度
5.4 小結
Chapter 06:安全性的設計與實作
6.1 安全性的目標方向
6.2 安全性的責任歸屬
6.3 AWS雲端安全性的最佳實務原則
6.4 建立安全性
6.5 小結
Chapter 07:正式環境部署與上線規劃
7.1 管理基礎設施、進行部署、有效率地服務客戶
7.2 以CloudFormation建立與管理AWS雲端環境
7.3 用CloudWatch進行監控
7.4 AWS提供的備份還原方案
7.5 規劃正式環境的上線準備
7.6 建立正式的線上環境
7.7 小結
Chapter 08:設計大數據應用程式
8.1 什麼是大數據應用程式
8.2 以Amazon Kinesis分析串流資料
8.3 無伺服器大數據應用程式的最佳實務指引
8.4 在Amazon EMR服務使用上的最佳實務指引
8.5 分散式機器學習與預測分析的最佳實務原則
8.6 大數據應用程式的安全性議題
8.7 EMR-Spark叢集的設定與使用
8.8 小結
Chapter 09:實作大數據應用程式
9.1 建立Amazon Kinesis資料串流
9.2 建立AWS Lambda程式服務
9.3 利用Amazon Kinesis Firehose資料交付串流
9.4 利用Amazon Glue與Amazon Athena
9.5 利用Amazon SageMaker
9.6 小結
Chapter 10:部署大數據系統
10.1 利用CloudFormation模板
10.2 開發與部署無伺服器應用程式
10.3 利用AWS的無伺服器應用程式儲存庫
10.4 小結
作者介紹
Aurobindo Sarkar
Aurobindo Sarkar目前擔任ZineOne Inc.在印度研發中心的地區主管。
他在此業界的經歷超過25年,於印度、美國、
英國以及加拿大的許多領先企業中擔任過顧問職。
其專長為即時架構、機器學習、雲端系統開發以及大數據分析等領域。
Aurobindo在多家科技新創企業中擔任技術長職位已逾八年,
並同時在企業訓練所與公司內部開設機器學習相關課程。
Amit Shah
Amit Shah擁有電機領域的學士學位,並在Global Eagle任職總監。
從80年代早期,也就是第一波個人電腦熱潮開始他便從事與程式設計相關的工作,
起初純粹作為個人興趣,而後發展為專業技術。
他接觸過的領域包括嵌入式系統、IoT物聯網、類比與數位硬體設計、
系統程式、雲端運算以及企業架構等。過去七年內,
他一直廣泛在雲端運算以及企業架構等領域從業。