跳到正文FIT5225 个人见解 · Jimmy Huang's BlogFIT5225 个人见解
本页目录· 23 条
⚠️ 免责声明
以下内容纯属个人经验分享,本人与任何个人或者机构无利益相关
对于课程的感受因人而异,学习课程的目各不相同
且每个学期课程都有可能进行不同程度的课改,所以内容仅供参考
以下内容为26S1版本的个人感受
课程概览
🧱 这门课的先修课程要求为
✅ 至少完成一门编程基础课:FIT9131 / FIT9133 / FIT9136 之一
✅ FIT9137 Introduction to computer architecture and networks
且仅在S1提供,为MIT选修三选一之一
📘 课程主要内容涉及
Cloud Computing + Docker + Kubernetes + IaC + AWS + Serverless + Cloud Security
前半学期学 云计算基础、虚拟化、Docker、Kubernetes、RESTful API、Infrastructure-as-Code;
中后期学 AWS、Serverless / FaaS、VPC、Cognito、IAM、Cloud Security;
Assignment 里需要真的把东西部署到云上跑,包括 FastAPI、Docker、K8s、Locust 压测、AWS Cognito、Lambda / Serverless、云存储、数据库、多云集成
两个Assignment今年新增了Interview,A1问的很难,A2相对简单很多,感觉是放水了
课程内容
1. Cloud Computing 基础与分布式系统
Week 1 会先讲云计算为什么成为现代 IT 应用的后端解决方案,包括:
pay-as-you-go / on-demand resource
subscription-based service
cloud delivery model 和 service model
distributed system 的挑战
cloud 如何简化计算、存储、部署、维护和管理
Nectar / OpenStack / parallel computing 等入门实践
2. Virtualisation、Containers 与 Kubernetes
hardware virtualisation
CPU、memory、I/O virtualisation
Xen、KVM 等虚拟化技术示例
VM 和 container 的区别
Docker Engine、Docker image、Dockerfile、image registry、layers
Docker container、Docker Swarm、Kubernetes 的应用执行、更新与扩展
Kubernetes Deployment、Service、pods、namespace、resource requests / limits
container orchestration、load balancing、scaling、network management
3. Web Services、RESTful API 与 Infrastructure-as-Code
Week 5-6 开始进入 Web Service 和自动化部署,包括:
SOAP / REST
Service-Oriented Architecture(SOA)
Flask / FastAPI
RESTful API 设计
Infrastructure-as-Code(IaC)
Pulumi / Terraform / Ansible / Chef
云资源自动化配置
版本控制与配置自动化
4. AWS、Serverless 与 Multi-Cloud
Week 7-9 主要围绕 AWS 和 Serverless,包括:
AWS compute and storage services
RDS、Load Balancing、Autoscaling
Lambda / Function-as-a-Service
Serverless architecture
云存储桶触发函数
serverless function 调用 ML model
database / metadata storage
RESTful API endpoint
多云服务之间的身份认证和授权
5. Cloud Security、VPC、Cognito、IAM 与合规
课程平台:使用Moodle,所有课程资料都在Moodle里
上课形式
评分构成
关于 Quiz 1 - 15%
Quiz 1 安排在 Week 6 左右,不在普通 Seminar 或 Lab 时间段内,而是单独安排远程监考 eAssessment。
考试范围主要覆盖 Week 1-5 Seminar 内容,包括:
45 分钟
约 20 道选择题,选择题总分约 5 分
2 道简答题,简答题总分约 10 分
简答题偏架构设计、技术选型或场景论证
没有 mock exam
关于 Assignment 1 - CloudEco Individual Project - 30%
CloudEco: An Environmental Machine Learning-Based Cloud Application in Container Orchestration
不是训练 AI 模型,而是把老师提供的 YOLO 环境目标检测模型,做成一个可以在云上运行的在线识别服务
用户通过 HTTP POST 上传一张 base64 编码图片;
FastAPI 服务接收请求;
系统调用分配给 YOLO 模型进行推理;
/api/predict 返回结构化 JSON,比如类别、数量、bounding box、confidence、推理时间等;
/api/annotate 返回画好框和标签的图片,同样以 base64 格式返回;
将应用打包成 Docker image;
部署到 Kubernetes 集群;
配置 Deployment、Service、LoadBalancer、resource requests / limits;
使用 Terraform / Ansible / Chef 等 IaC 工具自动化配置基础设施;
使用 Locust 对不同 pod 数量进行压测;
写一份约 500 字的 benchmark report;
参加 Interview / Demo,解释自己的系统。
关于 Quiz 2 - 15%
Quiz 2 安排在 Week 12 左右,同样是单独安排的远程 eAssessment,不在普通 Lecture / Lab 时间内
考试范围主要覆盖 Week 6-11 Seminar 内容,包括:
Infrastructure-as-Code
AWS compute / storage
RDS、Load Balancing、Autoscaling
Serverless / Lambda / FaaS
AWS VPC
Cognito
authentication / authorisation
IAM / permissions
Cloud Security
data security、audit、compliance
security threats and mitigation
45 分钟
约 20 道选择题
2 道架构设计 / 技术选型 / 场景论证简答题
远程监考
随机题库
可能会有 1-2 道和 Lab 内容相关的选择题
关于 Assignment 2 - Aussie EcoLens Group Project - 40%
主题是:Aussie EcoLens: A Multi-Cloud Serverless Wildlife Observation Platform
简单说,需要要做一个多云 Serverless 平台,让用户上传图片 / 视频,系统自动识别野生动物标签,存到数据库里,并允许用户通过 API / UI 查询和管理这些文件。
1. Authentication and Authorisation - 10%
A2 明确要求使用 AWS Cognito 做用户身份认证与授权,包括:
sign-up
sign-in
sign-out
email verification
access control
endpoint redirection
IAM roles / policies
跨云环境下 token 的安全传递
2. Core Functionalities - 50%
文件上传
checksum 去重
图片 thumbnail 生成
视频按 1 frame / sec 提取帧
serverless function 自动触发
ML model 自动识别物种标签
将文件类型、标签、URL、thumbnail URL 等写入数据库
按 tags / counts / species 查询
按 thumbnail URL 找 full-size image URL
上传一个查询文件,识别它的 tags,再返回数据库中匹配文件
手动批量添加 / 删除 tags
删除文件和数据库记录
基于 watched tags 的 email notification
3. User Interface - 20%
4. Demo and Final Reports - 20%
最后还需要提交 report / demo,并参加 Interview / Demo。我的 A2 Interview 主要流程是:
介绍架构图;
查看 team report;
查看个人贡献表;
按 Tutor 要求测试系统;
打开 AWS 后台给 Tutor 看;
跑一遍核心流程。
关于 Optional Case Study - 最高额外 5 分
26S1 还有一个可选的 case study / design task,最高可以额外加 5 分。任务是提交一个架构设计,包括一张完整页面的 architecture diagram,以及相关计划 / 讨论内容。字数没有硬性限制,但要求简洁。
这个任务不会提供 feedback,只会给分。获得的分数会加到其他 assessment 分数上,但最终总分最高不会超过 100。
个人主观评分 ⭐️ ⭐️ ⭐️ ⭐️ ⭐️
这门课不是最轻松的,但我觉得它是 MIT 里比较值得选的一门技术课。原因很简单:它教的东西比较接近真实工程:Docker、Kubernetes、FastAPI、IaC、AWS、Serverless、Cognito、Cloud Security,这些内容比很多纯报告课更有实际价值
从拿分角度看,它也不是特别坑,Quiz可能会难一些,Assignment 认真做的话,给分还是可观的,但是新增的Interview确实比较折磨,需要花很多时间研究完成的内容,并且还不一定会被提问到
本人分数
优点
缺点
并非水课,需要消耗大量时间
Quiz 难度偏高
Interview 压力不低,还有Hurdle