博客
关于我
轻课系统设计
阅读量: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/

    你可能感兴趣的文章
    POSIX与程序可移植性
    查看>>
    posix多线程有感--自旋锁
    查看>>
    SpringBoot中集成海康威视SDK实现布防报警数据上传/交通违章图片上传并在linux上部署(附示例代码资源)
    查看>>
    POSIX标准和XSI扩展
    查看>>
    post install error,please remove node_moules before retry
    查看>>
    postcss-pxtorem 参数之selectorBlackList、exclude的用法
    查看>>
    Postek博思得标签打印机更换电脑,打印出来标签空白
    查看>>
    postfix+ dovecot搭建邮件服务器
    查看>>
    postfix在邮件服务器中的使用
    查看>>
    PostGIS 3.1.2软件安装详细教程(地图工具篇.8)
    查看>>
    PostGIS中获取所有EPSG的编码以及对应Proj4字符串
    查看>>
    SpringBoot中集成海康威视SDK实现布防报警数据上传/交通违章图片上传并在linux上部署(附示例代码资源)
    查看>>
    PostGIS在Windows上的下载与安装
    查看>>
    Qt开发——网络编程之UDP客户端
    查看>>
    postgis数据库优化_postgresql 性能优化
    查看>>
    postgis求面积、交集等相关函数
    查看>>
    postgis相关函数
    查看>>
    Postgres Docker版本安装mysql_fdw 插件
    查看>>
    Postgres invalid command \N数据恢复处理
    查看>>
    Postgres like 模糊查询匹配集合
    查看>>