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