黎雪 王芳

我國云計算市場正處于高速發展的階段,而容器、微服務等技術的不斷成熟又推動著云計算的變革。在此過程中,由云計算產業發展帶來的人才需求也在大幅激增,在《云計算發展趨勢發展報告》中表示,云計算人才缺口已經高達到170 余萬。本文針對計算人才缺乏的問題,提出了開設云計算開發的課程,結合產學研合作為實踐教學的指導模式, 通過亞馬遜云(AWS)提供的學習管理系統(LMS),有效地整合教學資源,以培養出更多優秀的云計算人才,滿足就業和發展需要。
云開發技術將是未來開發模式的一種變革,它將省去傳統模式的諸多問題,如負載均衡、自動伸縮和網關等組件。開發者在運用云函數時,只需要關心核心的業務邏輯,無需手動配置,讓開發更高效、運維更省事且開發成本更低。同時前后端分離的開發模式,使開發出的產品質量和開發速度大幅提升。不僅如此,云開發也可大幅減少 IT 成本,提升 IT 運行效率,減少 IT 運維工作量并提升開發的安全性,有助于企業快速實現數字化轉型。
伴隨著云計算行業的迅速發展,云計算人才需求的也迅速增長,預計 2023 年,我國云計算產業面臨高達 150 萬的人才需求。《AWS 云計算開發》課程則剛好能為社會培養云計算技術人才,學生可從事云平臺規劃、部署、開發、服務以及運維等崗位。
AWS Educate 教育計劃對加入的院校提供了課程、課件和實驗環境等資源。通過 AWS Educate 計劃,院校教師可以受到 AWS 云計算開發培訓,并在獲取云開發資格證書后,開設 AWS 云開發課程。為學生提供 AWS Academy LMS 賬戶,學生在該學習管理系統(LMS)上,可免費獲取課程和云資源,并且能夠在 AWS 云提供實驗課程中學習各種技能。
云計算開發課程是以 AWS 云計算基礎、AWS 云計算框架和多門計算機、網絡相關技術的課程為基礎,從云端開發出發,全面、系統地介紹云計算開發的理念、方法和工具。通過本課程的學習,學生可學到使用編碼的方式調用 AWS 提供的云服務,全面提高學生對云計算的認識和使用。學習相關知識后,只需要一個能聯網的瀏覽器,就能通過 Internet 使用 AWS 開發工具包,對云服務進行 API 調用來獲取多項服務的配合,這樣學生可以更加快速、方便且低成本地開發應用程序。
云計算開發課程涉及到的內容有:虛擬化技術、海量數據存儲技術、數據中心管理技術、資源管理與調度以及安全與隱私保護等,如圖 1 所示。
AWS 云計算開發課程講授內容,包含以下模塊:
云開發概念和 AWS Cloud 9 集成開發環境
云開發是一套綜合類服務的技術產品,通常開發一個完整的應用需要數據庫、存儲、CDN、后端函數、靜態托管和服務器等,但是云開發將這些服務都集成到了一起,應用的開發流程都可以在云端完成。學生通過 SDK 開發工具包,在云環境 AWS Cloud 9 開發的應用程序代碼,并在云中測試、部署和運行。
創建 AWS IAM 身份和授權
了解 AWS IAM 身份和授權管理,該服務可幫助學生管理外界對 AWS 資源的訪問。借助 IAM,學生可以管理哪些人可以訪問自己的 AWS 資源(身份驗證)以及可以使用哪些資源和使用方式(授權)。
調用 Amazon S3 托管靜態網頁
了解 Amazon S3 存儲桶訪問策略和授權,使用 Python 和Boto 3(適用于 Python 的 AWS 開發工具包)與 Amazon S3API 進行交互創建一個存儲桶,并將網站的靜態內容,包括HTML 和圖像托管在 Amazon S3 存儲桶上。
Amazon DynamoDB
學習 DynamoDB 這種非關系數據庫與傳統關系數據庫的幾個關鍵區別,使用 SDK 與 DynamoDB API 進行交互,創建一個 DynamoDB 表并使用該表來存儲和檢索數據。
使用 Amazon CloudFront 和 Amazon ElastiCache 進行緩存
學習使用 SDK 與 Amazon CloudFront 和 Amazon ElastiCache API 交互進行緩存,以及可用于優化應用程序性能的各種云上緩存策略。
微服務架構
學習 Docker 容器的關鍵概念、它們在微服務架構中的使用以及通過編碼的方式使用 AWS 容器服務來托管基本網站的方法。
消息隊列與資源調度
了解 Amazon SQS 和 Amazon SNS 相關的關鍵概念和其API 操作,以及這些服務在解耦應用程序中的作用。
無服務架構
學習 AWS Lambda 在無服務器架構中的作用,以及用開發工具包開發、配置和部署 Lambda 函數的方法。
微服務中的 API 網關
學習 Amazon API Gateway 創建 RESTful API,并搭配使用 Lambda 函數創建一個無服務器網站。
分布式應用程序中的工作流
學習使用 AWS Step Functions 來協調分布式應用程序中的工作流,確保應用程序中的各個步驟根據業務邏輯定義的順序執行。
開發安全應用程序中的高級安全概念
學習在 AWS 上開發安全應用程序,了解有關開發安全應用程序的高級安全概念,包括與 AWS Certificate Manager 之間的網絡連接的安全、使用 AWS Secrets Manager 管理應用程序密鑰,以及使用 AWS Security Token Service(AWS STS)和Amazon Cognito 對聯合身份用戶進行身份驗證。
DevOps
了解在 AWS 上應用程序的開發運維和部署策略,并了解使用 AWS Code Services 實施持續集成和持續開發(CI/CD)。同時學習使用 AWS Elastic Beanstalk、AWS CloudFormation 和 AWS 無服務器應用程序模型(AWS SAM)部署應用程序的方法。
通過本課程的學習,讓學生熟悉使用云計算集成開發環境 AWS Cloud,并能用編程的方式訪問并配置各項云服務完成應用程序的開發,讓學生具備云上開發的思想,結合之前的云框架課程,通過亞馬遜云提供的云原生一體化開發環境和工具平臺,更高效地實現應用的開發、部署和運維,為學生畢業后的就業提供更多選擇。