一、松江区空中课堂
1. 项目描述:该项目为松江学子提供在线学习平台,包含视频点播、在线作业、在线互动三大模块。曾抗住了全松江区30多万师生的并发访问压力。
2. 技术标准:SpringBoot + Oracle(集群)+ Wowza(流媒体服务器) + CDN分发 + Redis + k8s
3. 个人职责:主要负责视频点播与在线互动模块。
4. 负责功能:视频点播抛弃了之前RTMP+Flash+JW Player的方案,主要由Wowza流媒体服务器提供基于HLS协议的视频地址,前端采用基于H5的Video.js插件进行视频播放。在线互动主要功能为班内聊天,采用Redis缓存进行处理。
5. 项目总结:该项目是松江区第一个针对全区师生同时开放的平台,主要技术难点为请求资源并发过大,曾因此问题差点拖垮Wowza流媒体服务器,为解决此问题采用了华为的CDN缓存,最多访问量的时候,CDN资源大约在2T/天。项目部署采用apache的k8s自动化部署,大大减轻了运维人员的工作量。
二、丹阳市教育局智慧教育一体化平台
1. 项目内容:该项目主要为加快丹阳市教育局信息化发展,为其提供一整套信息化解决方案,包括统一身份认证平台、统一门户、基础信息平台、网上阅卷系统、成绩分析系统、云题库系统、资源中心平台,合称为智慧教育一体化平台。
2. 技术标准:SpringBoot + PostgreSQL + MinIO + OpenCV + k8s
3. 个人职责:主要负责资源中心平台的开发建设,包括资源上传、资源转换、资源预览等模块。
4. 负责功能:负责资源相关模块的开发,具体技术选型如下:采用WebUploader进行分片上传资源,采用OpenOffice进行office资源转换,采用FFMPEG对图片、视频进行处理,采用MinIO存储资源。
5. 项目总结:该项目开发过程中,遇到上传资源后资源大小为0的情况,经排查发现是未等待资源合成便开始进入下一线程,为解决此问题,加入了分片校验与合成校验。经过此项目后,对线程、IO有了更深入的了解与体验。