云计算课程实验
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

102 lines
3.7 KiB

  1. # 期末大作业指南
  2. ## 1、总体要求
  3. #### 基于公有云的IaaS和PaaS服务,开发一个SaaS应用。你可以使用UCloud,也可以自己购买阿里云,Google Cloud,AWS等。SaaS应用可以是Web,小程序或者App。
  4. #### `**************注意节省资源消耗,必要时务必保存镜像并删除资源,下次从镜像重建******************`
  5. ## `**************尽早开始,充分调研,发挥想象***************`
  6. ## 2、组队要求
  7. #### 1~3人一组,自由组队。组员越多,完成质量要求越高。
  8. ## 3、提交内容
  9. #### 3.1、项目开题报告,不超过500字,必须包含小组成员信息、项目简介、代码来源(或原创)、预计使用平台和云资源、预期效果。命名为`学号-云计算开题.pdf`,上传到 http://113.31.104.68:3389/index.htm。
  10. #### 3.2、项目源代码上传到水杉码园,并编写详细README,说明代码部署和运行方式、SaaS应用效果截图。
  11. #### 3.3、演示ppt,演示内容包括SaaS应用前后端实现细节、原创和二次开发情况(如有)、云上实际部署情况,SaaS应用功能演示,项目的水杉码园URL。ppt转成pdf,命名为`学号-云计算演示.pdf`,上传到 http://113.31.104.68:3389/index.htm。
  12. #### `**************如果有多名组员,开题报告和ppt命名时只需使用其中一名同学的学号,否则会无法上传!******************`
  13. ## 4、重要时间
  14. #### 开题报告:`2020年12月20日`(10分)
  15. #### ppt演示和demo:`2020年1月12日`、`2020年1月15日`课上(40分)
  16. #### 演示ppt上传:`2021年1月15日`(10分)
  17. #### 码园上传:`2021年1月17日`(40分)
  18. ## 5、示例SaaS应用:水杉校场
  19. #### 水杉校场是部署在UCloud平台上的在线判题SaaS系统,整个系统由三个容器构成,分别是前后端容器、判题沙盒和模型容器,如下图所示。
  20. <kbd>
  21. <img src="img/FP.png">
  22. </kbd>
  23. #### 其中前后端分别使用了Vue.js和Django框架,学生在前端提交代码后,后端会把代码发送给判题沙盒,判题沙盒再将判题结果返回给后端。如果点击了代码错误预测等功能,后端会把代码发送给模型容器,通过调用Flask API来运行相应的模型,并得到预测结果。
  24. #### 详细信息可以参考:https://github.com/QingdaoU/OnlineJudge
  25. #### 部署效果:http://jf.shuishan.net.cn/
  26. ## 6、参考项目
  27. #### 电商平台
  28. > https://github.com/justdjango/django-ecommerce
  29. > https://github.com/mohsinenur/E-Commerce-Website-Using-PHP
  30. #### 视频分享网站
  31. > https://github.com/nabilfarhann/Vidhub
  32. > https://github.com/arslancb/clipbucket
  33. #### 在线IDE
  34. > https://github.com/cdr/code-server
  35. > https://github.com/judge0/ide/blob/master/README.md
  36. #### 文件共享
  37. > https://github.com/eikek/sharry
  38. > https://github.com/wewxd/file-sharing-website
  39. #### 在线协作
  40. > https://github.com/CollaboraOnline/online
  41. > https://github.com/presentator/presentator
  42. #### 其他项目,自由propose
  43. #### `**************优先选择多星、比较近期的、或者还在更新中的git仓库,否则你可能要自己改bug******************` :stuck_out_tongue_winking_eye: :stuck_out_tongue_winking_eye:
  44. ## 7、参考资源
  45. #### Flask:基于Python的轻量级网页应用开发框架。https://www.tutorialspoint.com/flask/index.htm
  46. #### Django:基于Python的全栈式网页应用开发框架。https://www.tutorialspoint.com/django/index.htm
  47. #### VueJS:开发网页前端的JavaScript框架。https://www.tutorialspoint.com/vuejs/index.htm
  48. #### Node.js:基于JavaScript的服务器端环境,包括众多可选择的后端框架。https://www.tutorialspoint.com/nodejs/index.htm
  49. #### [UCloud产品文档和API](https://docs.ucloud.cn/)