学成在线
介绍
学成在线项目是本公司自研的一个专门针对成人职业技能教育的网络课堂系统,网站提供了成人职业技能培训的相关课程,如:软件开发培训、职业资格证书培训、成人学历教育培训等课程。项目基于B2B2C的业务模式,培训机构可以在平台入驻、发布课程,运营人员对发布的课程进行审核,审核通过后课程才可以发布成功,课程包括免费和收费两种形式,对于免费课程可以直接选课学习,对于收费课程在选课后需要支付成功才可以继续学习。B2B2C是一种电子商务类型的网络购物商业模式,B是Business的简称,C是Consumer的简称,第一个B指的是商品或服务的供应商,第二个B指的是从事电子商务的企业,C则是表示消费者。
软件架构
采用前后端分离架构,后端采用SpringBoot、SpringCloud技术栈开发,数据库使用了MySQL,还使用的Redis、消息队列、分布式文件系统、Elasticsearch等中间件系统。
划分的微服务包括:内容管理服务、媒资管理服务、搜索服务、订单支付服务、学习中心服务、系统管理服务、认证授权服务、网关服务、注册中心服务、配置中心服务等。
岗位职责
负责项目需求分析,参与项目立项初期准备工作
负责项目的编码实现,配合测试、产品推进项目的落地
负责线上问题的维护,bug的处理
不断迭代,打磨本项目
技术描述
接口层提供与前端的HTTP接口实现,模型层提供PO类、DTO类统一管理,业务层包括业务Service与MyBatis Mapper,使用MyBatis-Plus框架实现Mapper开发,业务Service调用Mapper完成数据持久化。
全部bean被Spring进行管理,基于Spring进行本地数据库事务控制。
配置文件和服务注册由Nacos统一管理,微服务远程调用使用Feign实现,使用Spring Cloud Gateway实现网关统一路由。
使用Nginx完成静态资源部署、反向代理、负载均衡,使用Freemarker实现页面静态化,实现门户首页、课程详情页的页面静态化。
使用Minio完成媒资系统的大文件断点续传,使用分布式调度组件XXL-Job完成视频处理,RabbitTemplate和消息队列通信,搜索服务基于Elasticsearch构建。
使用SpringSecurity,整合OAuth2.0、JWT完成分布式统一认证。
使用DevOps完成项目的自动化交付与部署。
|