声明:本教程不收取任何费用,欢迎转载,尊重作者劳动成果,不得用于商业用途,侵权必究!!!
目录
那接下来我就给大家来演示一下我们这个项目,我们这个项目呢,分为三篇开发
一、分布式基础篇(谷粒商城后台系统)
第一篇基础篇,我们呢会围绕我们后台管理系统,这是我们的后台管理系统来登录进来,
围绕我们电商的管理系统,来做一个整套的增删改查逻辑,我们来点进来,比如我们这个商品系统,我们整个都会来教大家来编写,
这一块儿呢,我们用的前后分离的方式,使用vue来进行开发,所以这一块儿呢,我们通过商品管理系统的编写,
我们可以让大家来掌握我们基础的增删改查开发,包括我们这一块儿呢,也会使用远程调用微服务的一些功能,
所以我们这个基础业务里边,来围绕整个商品系统的所有的增删改查,那编码完了以后,那大家就应该会掌握,具备我们进入公司的基本开发能力。
这块儿的详细我们就不演示了,编写呢,我们边给大家说,然后这是我们的基础篇,我们主要呢,会围绕这个管理系统,来掌握我们所有基础开发要用的一些技巧。
二、分布式高级篇(整个前端流程系统)
那接下来我们这个分布式高级篇,高级篇呢,主要是围绕我们商城的整个前端流程系统,比如我们这个商城的首页,
ElasticSearch检索
以及我们现在商城的商品检索页,包括我们要根据各种不同条件检索,要用到各种技术,ElasticSearch等等,
你要检索完了以后,整套的其他逻辑,加入购物车、结算、登陆等等逻辑,这是我们这个前端商城系统我们要写的这个功能。
--->加入购物车
--->去结算
比如来去结算,结算呢没有登录,它还需要我们来进行登录,这登录呢,
我们还可以使用微博社交登录,后面呢,都会给大家说。
Feign
这是我们高级里面。我们整个呢,都是一个分布式的架构,我们都是微服务之间的调用,所以大家会看到我们这个微服务里边儿。
比如有 feign,如果有人熟悉的话,那么这呢是一个远程调用失败,所以呢,经常会有这些问题。
Sentinel 流程控制
我们在高级篇呢,就会帮大家去来解决,在微服务开发里边的所有技术问题,以及我们的一些方案,
特别是在高级篇里,它的一些周边治理方案,我们也都会给大家来详细解释。
比如我们这个流量控制。所以网站压力过大,我们要控制他的流量,我们可以使用阿里巴巴的 Sentinel,来给大家演示一下,我们的流量控制,
来登录进 Sentinel,我们的这个系统里边儿,这个账号密码呢,都叫Sentinel,
我们登录进来以后呢,我们可以对我们后来的每一个微服务,都来进行流量控制,
比如说这个商品服务,这呢,他能监控到我们这个商品服务调了多少个链路,这个链路里边呢,比如我们想要进行流量控制这个 /(杠),
那就是访问我们根目录的,我如果来点击一个流控,QPS 意思:每秒你访问我这个 /(杠),这个请求只能有几个?
比如我写一个,只能有1个来点击新增,
那么来到这个商品详情页,我来刷新,那么这个刷快了,就会变成请求量过大。
只有正常一秒一个,那么在这一块儿呢,才是可以,
但我们一般没人去来限制这个首页,这里我们把刚刚设置的删除掉!
这是我们说的限流,我们回头也会教给大家,
周边治理设施的注册中心 nacos
然后呢,加上我们的周边治理设施的注册中心 nacos,但这一块呢,大家可能还不是很清楚,大家就看一下演示我们将会有哪些功能就行了。
那所有的后来上线的,所有微服务,我们全部呢,在注册中心里边儿都会有上线。我们注册中心呢,动态的来调动我们哪个服务呢?
该应该去哪个地方调用另外一个服务,这都是我们后来在高级篇里边,要研究的所有东西,
链路追踪技术
以及我们的链路追踪。
比如我们这个微服务,整个链路,我们这个调完了以后,我们线上为了定位问题,包括哪一块儿请求太慢了,
我们可以使用链路追踪技术,我点查找,可以查到我们之前调用过的,所有请求的链路,
比如我们随便来点击一个进来,他这一块儿从网关,下次呢又调到网关,这是一个空的请求,
我们可以看复杂请求的,比如我来点查找,那么真正有复杂请求的,比如我们这个商品服务,我们还有购物车的这一类服务,
我们就可以来点进他的整个链路,能看到从网关调到我们这个商品服务,包括呢什么情况,花了多长时间,我们这儿呢都会有。这是我们说的链路追踪,
所以我们在高级篇,开发的时候。无论是我们高级篇的一些知识,我们整个分布式里边的,所有要用到的知识,还是我们周边的这些治理设施,
我们呢,全部都会给大家加上,这是我们说的这个分布式高级篇。
三、高可用集群片
高级篇开发完了以后呢,大家一定会对我们整个分布式开发,有一个非常熟的掌握。那去做任何的高级开发都没有任何问题,
只需要来熟悉你的业务就行了,技术肯定没问题。
咱们最后一篇是高可用集群片,在集群篇里边呢,我们还会给大家来搭建一个K8S集群。比如来看我的远程主机,我呢给我的这个远程电脑,
我准备了第二台电脑,当然大家要学集群篇的内容,也推荐大家再来准备一台电脑,我第二台电脑的内存都要32G,
K8S集群、控制台KubeSphere
好,这个电脑呢,我们现在搭建了一个K8S集群,这个集群呢,将会为我们整个分布式,提供我们的集群服务,包括我们还会结合,我们的整个管理控制台,
比如我们这个控制台呢,是一个 KubeSphere (库珀色粉),来打开给大家看一下,我们来通过这个控制台,我们可以登录进来,掌控我们整个K8S的集群。
好,来进来看一下,我们这个集群里边,我们可以监控到我们整个集群的所有状态,我们现在呢有三台机器,然后呢,
他们的内存占用,cpu等等,我们都会来监控我们的集群状态。
持续集成、持续部署的功能
包括我们这个项目呢,在我们的部署篇里边,除了给我们来讲每一种技术的集群,放在我们的 K8S 里边儿,来发布我们的微服务外。
我们还会给大家带来CI/CD,就是我们说的持续集成、持续部署的功能。当然这块儿呢,大家可能第一次听这个概念,稍微呢比较不清楚,
来说一下持续集成的作用,就是我们最终,只要我们开发人员敲完代码。
那么接下来呢,会一个流水线全部自动化的,将我们这个代码打包,发布,测试,运行,一直最终上线到我们的环境。
全部呢,是一个自动化的流水,我们也可以来给大家看一下这个自动化的流水,我们来登录到我们的这个平台,然后后边这些东西呢,全部都会教大家一一来搭建。
那在我们的这个 DevOps 工程里边儿,我们也会后来说什么是 DevOps,
就会有我们的流水,是我们称的流水线,这个流水线呢,就能帮我们来自动的去来拉取代码,拉取完以后打包镜像,并且把我们这个代码部署上来。
大家注意我们现在这些流水线呢,已经有很多运行成功的,来随便点一个,大家体会一下,
就是只要我们开发人员敲完代码以后,我们这儿还是一个可视化的流水线,敲完代码以后呢,
1、我们这个流水线会自动的把代码,从github等一些我们代码仓库里边拉取过来,
2、然后呢,并且对代码的质量进行一个分析,
3、分析完以后会把我们的这个推送成镜像。镜像呢,相当于是我们后来要结合 docker,因为我们整个K8S集群就要用到docker,
4、然后呢,最后把我们的这个服务再来构建,部署到我们整个K8S集群里边,
5、然后呢,我们服务的整个版本就会发布出去。
这都是我们一个可视化的流水线,后面我们都会教大家一一的来做这些事情。
四、小结
那这个就是我们将电商项目分为三篇开发
那第一个基础篇
对飙的就是大家能拥有我们这个基础开发技术的掌握,去任何公司干最基础的活儿,包括稍微难一点的活是没有任何问题的,
就是正常过试用期啦,我们来拿个一万五六的薪资,没有任何问题。
咱们这个高级篇
那就对标我们更多的高级技术,如果大家全部能将分布式系统里边儿,整体的高级技术全部都学会呢,后来也会给大家说一下我们整个电商项目的架构,
它里面的所有高级技术都学会,我们自己也会架构,那我们的技术就非常厉害了,只要有足够多的工作经验,我们也可以去来匹配一些架构师或者项目经理。
但我们的这个集群篇
集群篇里边呢,都是我们现在非常流行的K8S集群,加上我们现在,给大家推出的,KubeSphere(库珀斯菲尔) 整个一站式平台,那通过这个平台呢,
我们全部教大家,在我们的整个集群篇,如何去运维、部署、包括项目发布、包括搭建集群、包括K8S的所有操作,
如果我们这个集群篇,也能掌握的话,那加上我们自己的项目经验、工作经验,去来对标一个架构师,如果你有足够多的工作经验,在技术程度上来说,
去来做一个架构师也是可以的。
最终希望
那我们最终希望通过我们整个电商的项目,我们做出的整套流程,无论是我们的后台管理系统、前台的整体业务、周边的治理设施、还是我们后边的 K8S集群。
当然能呢,站在一个上帝视角,来看到我们整个 JAVA EE 开发的全貌,那我们最终希望我们的电商项目,能达到这么一个效果。
推荐如何学习
当然我们最终呢,电商项目肯定呢,会非常大、非常长,那我们推荐大家有基础的同学你可以去来。
觉得基础篇的增删改查不想开发了,你可以去来跳过,
如果你的高级篇儿也没问题了,你也可以去来跳过,
然后如果你的集群篇也没问题了,你也可以来跳过。
我们每一篇呢,其实都是单独成篇,那这样呢,我们大家学习起来就像查字典一样,那最终呢,学习自己感兴趣的也是没问题的。
特别是对于集群篇,我们也推荐非常多,有工作经验的同学,然后呢,我们只来单看集群片,
这样的话呢,我们就是通过一个真实的项目架构案例,我们整个电商项目,将我们这个项目呢,自动化的全部部署到我们的 K8S 集群里边,
从这一块起步也是没问题的。
好,那这就是我们整个电商项目的演示和我们的这些介绍。