博客
关于我
轻课系统设计
阅读量:415 次
发布时间:2019-03-06

本文共 1178 字,大约阅读时间需要 3 分钟。

在家隔离两个月,生活确实发生了变化。胖了一圈虽然不太愿意承认,但也带来了新的关注点。通过这段时间的在家办公经历,我深刻体会到了内容电商的潜力。内容电商不仅仅是电商的下一个风口,更是连接消费者与价值的桥梁。

业务需求

电子商务行业正经历着前所未有的变革。购物便利性和消费民主化带来的改变,让电子商务迎来了新的发展机遇。内容电商作为下一个风口,正在重新定义电商的未来。

教育领域一直是稳健的投资领域。猿辅导、学而思等品牌的成功证明了教育内容的市场价值。如何在内容电商时代把握教育行业的机遇,是我们需要深入思考的问题。

技术实现

系统架构设计是技术实现的基础。我们采用了以下方案:

  • 数据存储

    • 基本数据存储于MySQL。
    • 不规则数据(如题目、楼层数据)存储于MongoDB。
    • 记录类型数据存储于ES(Elasticsearch)。
  • 缓存机制

    • 使用Redis分布式缓存和内存缓存。
    • 定时从Redis刷新内存缓存。
    • 更新方式支持MQ异步刷新和直接方法调用同步刷新。
    • Redis连接池参数优化至关重要。
  • 服务调用

    • 使用Dubbo进行服务调用。
    • 注意设置合理的超时时间和重试次数。
  • 网关设计

    • 业务网关负责身份认证、统一日志处理和异常处理。
  • 配置管理

    • 采用携程Apollo或阿里Nacos。
  • 框架选择

    • MyBatis Plus提供了极大的便利性,自动生成和简化SQL编写。
  • 第三方服务

    • 使用阿里云CND、OSS、MQ等服务。
    • 腾讯云提供语音识别和环信等工具。
  • 数据库设计

    数据库设计需要根据业务特点进行优化:

  • 音视频处理

    • 音视频需加密,上传前按要求压缩。
    • 文档和音视频资源文件较多,建议客户端提前下载。
  • 课程订单

    • 两种订单类型:虚拟商品订单和实物商品订单。
    • 实物订单需考虑运费和物流信息。
  • 题目数据

    • 题目类型众多,答案固定,适合存储于MongoDB。
  • 首页数据

    • 楼层数据推荐使用MongoDB。
  • 用户行为数据

    • 答题记录、课程学习记录存储于ElasticSearch,支持快速检索。
  • 数据处理

    • 单元小结、学习报告等数据可通过实时计算平台处理。
  • 性能优化

    • 维护好缓存关系,避免长调用链。
    • 使用Pinpoint分析调用链路。
  • 工具与协作

    选择合适的工具对项目进展至关重要:

  • 协作平台

    • 钉钉必备,语雀适合知识库管理。
    • Worktile适合敏捷开发,替代Jira。
  • 文档管理

    • 石墨文档和MindLinker适合协作和会议。
  • 接口管理

    • Yapi提供可视化接口管理,替代Swagger。
  • 开发建议

    在开发过程中需要注意:

  • 数据埋点

    • 及时埋点,避免上线后才发现数据收集问题。
  • 版本管理

    • 接口要有明确的版本标识。
  • 问题处理

    • 及时发现并解决阻塞性问题。
  • 最后,多次压测是确保系统稳定性的重要手段。

    以上内容只是我的个人理解和实践经验,欢迎大家交流和讨论。

    转载地址:http://umqkz.baihongyu.com/

    你可能感兴趣的文章
    NHibernate学习[1]
    查看>>
    NIFI1.21.0_Mysql到Mysql增量CDC同步中_日期类型_以及null数据同步处理补充---大数据之Nifi工作笔记0057
    查看>>
    NIFI1.21.0_NIFI和hadoop蹦了_200G集群磁盘又满了_Jps看不到进程了_Unable to write in /tmp. Aborting----大数据之Nifi工作笔记0052
    查看>>
    NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_增删改数据分发及删除数据实时同步_通过分页解决变更记录过大问题_02----大数据之Nifi工作笔记0054
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置binlog_使用处理器抓取binlog数据_实际操作01---大数据之Nifi工作笔记0040
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置数据路由_实现数据插入数据到目标数据库_实际操作03---大数据之Nifi工作笔记0042
    查看>>
    NIFI同步MySql数据_到SqlServer_错误_驱动程序无法通过使用安全套接字层(SSL)加密与SQL Server_Navicat连接SqlServer---大数据之Nifi工作笔记0047
    查看>>
    Nifi同步过程中报错create_time字段找不到_实际目标表和源表中没有这个字段---大数据之Nifi工作笔记0066
    查看>>
    NIFI大数据进阶_离线同步MySql数据到HDFS_02_实际操作_splitjson处理器_puthdfs处理器_querydatabasetable处理器---大数据之Nifi工作笔记0030
    查看>>
    NIFI大数据进阶_连接与关系_设置数据流负载均衡_设置背压_设置展现弯曲_介绍以及实际操作---大数据之Nifi工作笔记0027
    查看>>
    NIFI数据库同步_多表_特定表同时同步_实际操作_MySqlToMysql_可推广到其他数据库_Postgresql_Hbase_SqlServer等----大数据之Nifi工作笔记0053
    查看>>
    NIFI汉化_替换logo_二次开发_Idea编译NIFI最新源码_详细过程记录_全解析_Maven编译NIFI避坑指南001---大数据之Nifi工作笔记0068
    查看>>
    NIFI集群_内存溢出_CPU占用100%修复_GC overhead limit exceeded_NIFI: out of memory error ---大数据之Nifi工作笔记0017
    查看>>
    NIFI集群_队列Queue中数据无法清空_清除队列数据报错_无法删除queue_解决_集群中机器交替重启删除---大数据之Nifi工作笔记0061
    查看>>
    NIH发布包含10600张CT图像数据库 为AI算法测试铺路
    查看>>
    Nim教程【十二】
    查看>>
    Nim游戏
    查看>>
    NIO ByteBuffer实现原理
    查看>>
    Nio ByteBuffer组件读写指针切换原理与常用方法
    查看>>
    NIO Selector实现原理
    查看>>