不吹不黑!GitHub上都没这么吊炸天的项目

民工哥技术之路 2020-11-22 23:13

推荐一个不错的网约车项目!!!



啥也不说了,上图...

项目介绍

该项目是一款标准且已上线的“网约车”应用。符合我国交通部对网约车监管的技术要求。通过了交通部对网约车线上和线下能力认定。项目原型曾在杭州上线运行。


项目中核心功能包括:账户系统,订单系统,支付系统,地图引擎,派单引擎,消息系统等 网约车核心解决方案


项目中完全采用微服务架构设计,应用了成熟的接口安全设计方案,采用分布式锁保证了分布式环境中的数据同步,用分布式事务解决了分布式环境中的数据一致性等。


前置技能

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是规定了网约车的系统架构,接口技术要求,系统安全要求,功能要求,数据交换接口协议等。



可以通过以下方式获得

获得方式:

1. 扫描下方二维码
2. 回复 【111 即可。

👆长按上方二维码 2 秒

回复「111」即可获取资料