Github上都没有的“网约车”项目,终于有人给写出来了!
共 2396字,需浏览 5分钟
·
2020-11-24 00:51
点击“开发者技术前线”,选择“星标?”
让一部分开发者看到未来
推荐一个不错的网约车项目!!!
啥也不说了,上图...
项目介绍
该项目是一款标准且已上线的“网约车”应用。符合我国交通部对网约车监管的技术要求。通过了交通部对网约车线上和线下能力认定。项目原型曾在杭州上线运行。
项目中核心功能包括:账户系统,订单系统,支付系统,地图引擎,派单引擎,消息系统等 网约车核心解决方案。
项目中完全采用微服务架构设计,应用了成熟的接口安全设计方案,采用分布式锁保证了分布式环境中的数据同步,用分布式事务解决了分布式环境中的数据一致性等。
前置技能
Git,Maven,Spring Boot,Spring Cloud,Redis,MySql ,RabbitMQ,ActiveMQ等。
项目架构图
好了,到这里,整个项目介绍的也差不多了,感兴趣的同学可以下载一波白皮书!
资源获取方法,老规矩啦!
识别下方二维码,关注后回复【111】
即可获取下载白皮书
资料1:【项目白皮书】
资料2:【网络预约出租汽车开发手册】
资料2是规定了网约车的系统架构,接口技术要求,系统安全要求,功能要求,数据交换接口协议等。
可以通过上方式二维码获得
同时还请到整个项目的负责人,用【4h】给大家把整个项目从零到落地串联起来!
内容很干,学完都可以写到【简历】里哦!!!
说明:通过学习该项目,巩固大家原来学过的Spring Cloud微服务相关的知识,并学会如何在实际项目中落地应用。
直播内容
01.项目概述 | |
学习目标 | 对项目有整体认识。了解公司中项目管理的方式,及项目开发的整体流程。 |
学习内容 | 介绍项目当时的市场背景,及项目的特色。 |
演示项目demo:项目的乘客端和司机端,让大家对项目有个直观的认识。 | |
介绍项目组织方式,人员配置,开发模式。 | |
学习如何制定项目计划。 | |
介绍项目整体的开发流程。 | |
02.项目Kick Off | |
学习目标 | 了解公司项目启动会。 |
学习内容 | 确定做什么? |
确定谁做?明确各方(产品,开发,测试,运维,运营,市场)责任。 | |
确定里程碑,各方的联调时间点。 | |
03.需求评审 | |
学习目标 | 了解项目需求,知道我们课程最终要实现的需求有哪些? |
学习内容 | 需求宣讲。 |
需求确认。 | |
明确各方开发边界(Android,iOS,H5,后端,运维)。 | |
04.架构设计 | |
学习目标 | 了解设计的原则,能应用原则指导软件产品的设计。 |
学习内容 | 微服务设计原则介绍,并落地应用。 |
介绍项目整体设计。 | |
画整体架构图。 | |
进行业务分层:业务层,能力层,基础层,通用层。 | |
进行微服务拆分。 | |
介绍微服务常用组件,在网约车中的应用。 | |
05.接口设计 | |
学习目标 | 学习如何进行好的接口设计。 |
学习内容 | 接口设计原则。 |
接口安全设计。接口遇到的安全问题,及解决方案。 | |
接口功能设计。 | |
画交互时序图。 | |
06.工程设计 | |
学习目标 | 学习如何组织项目整体结构,设计单个项目结构。 |
学习内容 | 阿里规约中对工程设计的约束。 |
包结构的组织。 | |
依赖关系管理。 | |
07.DB设计 | |
学习目标 | 根据产品需求和网约车国家标准,设计数据结构。 |
学习内容 | 数据库设计原则。 |
数据库设计中的问题。 | |
数据库设计小技巧。 | |
阿里规约中对数据库设计的要求 | |
数据库设计。 | |
08.开发编码 | |
学习目标 | 能手敲代码,完成功能实现。从源码级别学习,能按需进行自定义扩展。 |
业务内容 | 乘客注册/登录。单点登录,服务端无状态认证,JWT。 |
乘客预估价格。预估起点和终点的价格。 | |
乘客叫车。根据起点和终点,进行叫车,下单。 | |
系统派单。系统根据派单规则,进行订单派发。 | |
司机听单。司机实时监控有没有乘客下单。 | |
司机抢单。司机抢单,涉及分布式锁的实现。 | |
行程状态变更。在订单行进中,订单状态的变更。 | |
司机发起收款。司机向乘客发起收款请求。 | |
乘客支付订单。乘客支付订单。涉及分布式事务的实现。 | |
监管平台上报。将网约车业务信息,上报给国家。涉及消息队列的应用。 | |
09.测试 | |
学习目标 | 如何编写测试用例 |
学习内容 | 单元测试基本原则 |
单元测试覆盖率 | |
junit单元测试用例编写。 | |
常用测试工具的使用。 | |
10.部署 | |
学习目标 | 能熟练通过Docker和K8S,进行项目部署。实现微服务动态伸缩。 |
学习内容 | Docker部署集群服务。 |
K8S实现微服务的弹性伸缩。 | |
阿里内部开发和运维的恩怨情仇。 | |
11.出师面试 | |
学习目标 | 如何用项目进行面试。 |
学习内容 | 项目面试要点 |
真实面试场景回放 | |
12. Spring Cloud Alibaba 改造 | |
学习目标 | 将Spring Cloud Netflix 向 Spring Cloud Alibaba 迁移 |
学习内容 | 将 Netflix 技术栈 改造成 Alibaba技术栈 |
改造项目过程中的坑 | |
13. 传统单体服务向微服务改造 | |
学习目标 | 如何从传统服务改造成微服务 |
学习内容 | 传统服务向微服务改造的切入点 |
传统项目向微服务改造中的坑,及解决思路分析 | |
实战落地填坑(原敏感信息如何安全无缝迁移,兼容老app接口等) | |
13. 日常服务升级的思路 | |
学习目标 | 新旧服务升级的常用方式 |
学习内容 | 介绍常用的发布方式:蓝绿发布、滚动发布、灰度发布 |
灰度发布的几种设计思路 | |
手敲代码,带学生进行服务升级落地。 | |
14. 第二代微服务Service Mesh | |
学习目标 | 学习使用服务网格 |
学习内容 | 服务网格 Service Mesh 学习 |
服务网格 Service Mesh 和第一代微服务的异同 | |
如何将传统微服务向 服务网格迁移 | |
实战落地 服务网格 |
资料1:【项目白皮书】
资料2:【网络预约出租汽车开发手册】
资料2是规定了网约车的系统架构,接口技术要求,系统安全要求,功能要求,数据交换接口协议等。
可以通过以下方式获得 识别下方二维码,关注后回复【111】
即可获取
?长按上方二维码 2 秒 回复「111」即可获取资料