软件实践中心 (Centre for Software Practice,CSP) 是西澳大学 (UWA) 工程、计算和数学学院的一个研发机构。该中心成立于 2006 年,旨在为在 UWA 学习软件工程的学生创造实践性学习机会,并研究技术对在线社区、开源开发和健康信息学的影响。

2012 年,与斯坦福大学携手打造大型开放式在线课程 (MOOC) 平台后,CSP 构建了 Class2Go,以期通过 Web 提供多门在线课程及相关考核。之后,该中心需要一个基础设施来为数以千计的在线学员管理和提供课程资产,其中包括流媒体视频、在线测验和实践性编码考核。该基础设施必须可以进行扩展,以便该中心能够交付新课程并实现学员互动。此外,CSP 需要在不寻求第三方资金帮助的情况下构建 Class2Go,这意味着他们能投入到基础设施上的预算有限。

CSP 之所以选择 Amazon Web Services (AWS),是因为 AWS 云的可扩展性、成本、功能和先进性使其非常适合 Class2Go。“我们没有考虑其他任何提供商。”Glance 教授说,“而且 AWS 简单易用,我们只用一个下午就构建好了 Class2Go 基础设施。”

CSP 将 Class2Go 解决方案部署到在九个 Amazon Elastic Compute Cloud (Amazon EC2) 实例上运行的 Web 服务器中。Amazon Simple Queue Service (Amazon SQS) 会将数据发送到 Web 服务器,而 Elastic Load Balancing 将负责管理软件平台与每个 Amazon EC2 实例之间的数据流。CSP 将该基础设施设置为在一个实例上运行 Amazon Simple Email Service (Amazon SES) 来管理学生邮件,使用另一个实例来处理编码作业。“学生输入编码后,系统会将该编码发送到评分实例中,该实例则会执行评分任务并发送反馈。”Glance 教授说。

该平台将使用 Amazon Relational Database Service (Amazon RDS) 上的 MySQL 数据库来索引课程信息。如此一来,Class2Go 可以在学生学习每个课程的过程中记录他们的成绩和互动情况,并为所有学生数据自动创建备份快照和只读副本。该中心还将使用 Amazon Simple Storage Service (Amazon S3) 来存储视频和在线测验等课程资产。

CSP 快速、高效地启动了 Class2Go 的第一个生产环境,其成本仅相当于先前在线平台的一小部分。之前,CSP 曾与澳大利亚政府部门合作创建了 MMEx,这是一个支持整个澳大利亚的医疗专业人员安全、高效地共享患者信息的在线平台。“交付 MMEx 电子健康平台花费了 30 万美元,而且我们花了三四个月的时间才将第一个生产环境投入运行。”Glance 教授说,“使用 AWS,Class2Go 第一个月的成本约为 200 美元,我们当前每个月的运营成本大约仅为 1500 美元。”

AWS 还帮助 CSP 快速、高效地适应其生产环境,以满足 Class2Go 不断变化的要求。“我们在正常运行时间、响应速度和功能方面获得了巨大的成功,比如,我们能在一个 Amazon EC2 实例耗尽内存时无缝升级为一个更大的实例。”Glance 教授说,“在日常运营方面,构建好基础设施后便可以将其弃置一旁,几乎不需要任何后续操作。”

“对高等教育而言,MOOC 平台是一项极其重大的进展。”Glance 教授说,“所有这些之所以能够实现,其中一个原因在于,AWS 之类的云平台始终在提供支持。”AWS in Education 计划会评估各认证院校提供的学术研究资助提案,在评估该中心的提案后,为该中心资助了 10000 美元,用于完善 MOOC 项目。CSP 利用该项资助分别为 130 名学生提供了 Amazon EC2 实例,供他们进行实践练习。“我们将这一概念称为‘自带服务器’。”Glance 教授说,“我们认为,学生在获取软件工程学位的过程中有机会亲自实践云技术,这很重要。”如果实验成功,这种模式将会在 UWA 的其他课程中予以推行。

AWS 的可扩展性帮助 CSP 为未来的发展奠定了基础。“开始构建各门课程时,我们预计学生数量会从 2500 名增长到 20000 到 30000 名之间。”Glance 教授说,“唯一要做的就是构建一门颇受欢迎的课程,我们预计届时会有 10 万多人访问该系统。借助 AWS,我们已经准备好迎接这一增长。”

要详细了解 AWS 如何帮助您快速、经济高效地部署应用程序,请访问业务应用程序详情页面:http://aws.amazon.com/business-applications/