采用cms对页面进行管理,主要是那些由于运营需要而经常变动的页面进行管理,基于freemarker模板引擎,采用页面模板+数据的格式输出html页面,从而实现页面静态化
为教学机构提供课程管理功能,教学机构可以添加属于自己的课程,供用户在线学习,课程管理分为如下几个部分:课程基本管理、课程预览、课程发布。基于freemarker模本引擎实现页面静态化,通过RabbitMQ发送消息,将课程信息中的课程文件存储到FastDFS,用nginx进行前台显示,然后该文件的路径和课程信息存储到MySQL
课程管理服务将课程相关信息写到MySQL数据库,使用logstash将MySQL的数据写到ElasticSearch索引库,用户在前端搜索课程信息,请求到搜索服务,搜索服务请求ElasticSearch搜索课程信息。
SpringSecurity实现用户单点登录,配置网关校验身份进行授权。