SpringCloud神领物流学习笔记:项目概述(一)

SpringCloud神领物流学习笔记:项目概述(一)

文章目录

1、项目介绍

​ 神领物流是一个基于微服务架构体系的【生产级】物流项目系统,接近企业真实场景的项目,,它涵盖了物流领域的各个方面,包括货物信息管理、订单管理、运输管理、仓储管理、人员管理等多个方面。这个系统的设计完全基于微服务架构,每个功能模块都是一个独立的微服务,每个微服务都有自己的数据库和独立的服务接口。这种设计方式使得神领物流系统具有高度的业务完整度、真实度和复杂度,让学生感受到真实企业开发的挑战和难度。通过这个项目,可以学习到微服务架构的实际应用和开发技能。

2、基本业务流程

流程说明:

  • 客户在【神领物流微信小程序】中填写收、发件人地址,以及物品信息,提交订单
  • 下单成功后,【快递员上门取件】,并要求用户进行【在线支付】
  • 快递员取件成功后,会将快件送回到【营业网点】
  • 快件到达营业网点后,司机开始运输,将快件交由【转运中心】进行一系列的转运
  • 最后,快件会到达收件人所在的【营业网点】,再由【快递员】进行【派件】操作
  • 收件人可以进行【签收】或【拒收】操作
3、系统架构

这张架构图分为多个层次和模块:

  1. 平台终端层

    • 包括用户端(小程序)、司机端(APP)、快递员端(APP)和后台管理系统(PC端)。
    • 这些终端用于不同角色的使用和管理。
  2. 统一网关

    • 作为所有终端和后端服务之间的接口,负责请求的路由和安全。
  3. 业务平台

    • 微服务平台

      :包含调度和运输管理。

      • 调度(dispatch):负责智能调度、实时调度任务调整、延时取件任务调整等。
      • 运输(transport):负责路线规划、网点管理、时间/成本优化路线规划等。
      • 运营/任务管理(work):包括运单管理、取件任务管理、派件任务管理等。
    • 微服务体系:提供基础服务、快递微服务、订单微服务等。

  4. 支撑平台

    • 自研组件服务

      • 权限系统:用户管理、组织管理、权限管理。
      • EagleMap:提供路线规划、距离计算、坐标转化等功能。
    • 服务平台

      • 包括阿里云、美团Leaf、Seata、RabbitMQ、xxl-job、skywalking、支付宝、微信等服务,用于支持消息中间件、任务调度、分布式事务、链路追踪等功能。
  5. 数据平台

    • 使用Neo4j、MySQL、MongoDB、Redis、Elasticsearch等数据库和缓存技术,支持数据存储和查询。

整个架构旨在通过不同模块的协同工作,实现高效的物流和运营管理。

4、技术架构

下图展现了神领物流项目使用的主要的技术:

这张技术架构图展示了神领物流项目的主要技术组件和框架,分为多个层次:

  1. 前端技术
    • 使用 ReactVue 作为前端框架,用于构建用户界面。
    • TypeScript 提供了静态类型支持,提高代码的可维护性和可读性。
  2. 后端技术
    • Spring BootSpring Cloud 用于微服务架构,提供服务治理、配置管理等功能。
    • MyBatis 作为持久层框架,简化数据库操作。
    • Redis 用于缓存,提高数据访问速度。
    • RabbitMQ 作为消息中间件,实现异步通信。
    • Elasticsearch 用于全文检索和分析。
  3. 数据库
    • 使用 MySQL 作为主要关系型数据库,存储业务数据。
    • MongoDB 用于存储非结构化数据。
  4. 运维与监控
    • Docker 用于容器化部署,简化应用的分发和管理。
    • Kubernetes 负责容器编排,提供自动化部署、扩展和管理。
    • PrometheusGrafana 用于监控和可视化系统性能。
    • SkyWalking 进行分布式链路追踪,帮助分析和诊断系统性能问题。

这个技术架构结合了前后端、数据库、消息中间件、运维监控等多个方面的技术,旨在构建一个高效、可扩展、可维护的物流系统。

相关推荐
来了就未晚9 分钟前
Python基础 学习代码存储与命名规范
开发语言·python·学习
GHL28427109012 分钟前
用codex做一个简单技能学习
学习·ai
呆萌很19 分钟前
英语 1‑12 月单词联想记忆
笔记
西西弗Sisyphus1 小时前
模型训练 不同批次大小与学习率下的训练损失对比(2)
学习·batchsize·lr·learning rate
软件开发技术深度爱好者2 小时前
在线学习实践 TypeScript 的官方Playground(演练场)使用介绍
javascript·学习·typescript
我想我不够好。2 小时前
豹女q w e r衔接闪现
学习
金立基包装胶水2 小时前
纸袋热封频繁不良,先排查胶料这一堆问题
大数据·笔记·其他
常驻客栈2 小时前
B-深入理解计算机系统第3版之第11章:网络编程
开发语言·笔记·学习笔记·常驻客栈·深入理解计算机系统
血小板要健康3 小时前
网格 dfs 与 FloodFill:从岛屿、区域到搜索路径
笔记·算法·leetcode·深度优先
NoteDeep 深度笔记3 小时前
Observer: 思维 ≠ 自己
笔记