升级后的领课教育系统架构更新了哪些内容?
2020-09-22 15:28:19
领课教育致力于打造一个全行业都适用的在线教育系统。除了商业版,团队也积极地推进教育系统的开源项目,希望能给做开发的朋友们带来一些帮助:
开源项目链接:https://gitee.com/roncoocom/roncoo-education
领课教育系统-商业版-最新架构如下
注册中心
早期领课教育系统(以下简称为:系统)使用的就是Eureka,Netflix 出品用于实现服务注册和发现的工具,目前该组件已经进入维护阶段不再更新。现在系统使用了Nacos,阿里巴巴出品一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。
配置中心
早期系统使用的是Spring Cloud Config,无界面管理,需要使用消息队列才能实现配置更新,目前系统使用Nacos既可以当注册中心又可以当配置中心,采用Netty保持TCP长连接实现配置刷新,拥有方便快捷的管理界面。
服务网关
早期系统使用是的Zuul,同样是Netflix 出品,用的是1.x的版本,Zuul 2.x 在底层上有了很大的改变,使用了异步无阻塞式的 API,性能改善明显,不过现在 Spring Cloud 没集成 Zuul 2.x。目前系统使用的是Spring Cloud Gateway,构建于 Spring 5+基于 Spring Boot 2.x 响应式的、非阻塞式的 API,同时它支持 websockets,和 Spring 框架紧密集成。
分布式调度
开源版采用的是传统的调度方案,较为简单,商业版采用了XXL-JOB作为分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。
分布式事务
分布式事务是分布式系统中一个永远绕不过去的话题,也是一个棘手的问题。目前领课教育系统采用了Seata作为解决方案,Seata 是一款Alibaba开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。
限流控制
早期系统使用的是Hystrix,同样是Netflix 出品,但是目前官方声明不再开发新功能。Spring官方不在推荐在后面的版本继续使用,目前领课教育系统采用Sentinle作为解决方案,Sentinel 是面向分布式服务架构的流量控制组件,主要以流量为切入点,从流量控制、熔断降级、系统自适应保护等多个维度来帮助您保障微服务的稳定性。
搭建一个完善的在线网校系统需要具备哪些功能
领课教育开源系统-MySQL的安装和使用
领课在线教育系统(商业版)官方文档-社区管理
企业在线培训系统有哪些优势?
影响在线教育系统报价因素都有哪些?
网校系统搭建要注意什么?有哪些功能优势?
在线网校系统平台 哪些特点是符合教学场景需求的功能?
在线教育的盈利模式有哪些?
好的网校系统开发方案有哪些 他们的优缺点是什么
在线教育系统源码开发要多少钱
教育在线网校系统应当具备的五大功能,你知道几个
在线教育直播系统开发都有哪些核心功能?
在线学习系统打造属于学生自己的学习方式
创建在线教育系统平台 在线教育系统功能包含哪些
开发在线网校系统要考虑什么?搭建方式有哪些?
怎样才能开发出一款在线网校系统软件?还要懂测试?
在线网校系统开发要经历哪些阶段
在线教育考试系统是否能够克服在线考试的不足
网校教育软件开发有哪些困难
在线网校系统开发时需要注意什么