一个吃货来说明Spring Boot与Spring cloud 是什么关系
虽然知道用交通管理来说明更加符合实际,但我还是要拿做一桌菜来说明。谁让我是个吃货呢哈哈。
昨天晚上,家里来了客人,我想亲自做一桌菜。比如欧阳茄子、诸葛萝卜、令狐鲤鱼之类的。
爆炒流程的封装
做饭也是要流程的:
首先要用我白皙的双手把菜洗好
然后用我锋利的瑞士军刀把菜切的整整齐齐。我是练家子,所以切的很6
开油,这次咱用花生油
加葱花,加调料,哈哈这是鲁菜的做法么
将菜爆炒
盛在盘中,进行美化
开吃
这些步骤中,都有具体的细节。比如调料,可能就有几十种。我家的厨房很大,于是我就将常吃的几种菜,各种配料给搅和在一起,分门别类。
这样,如果我想吃干煸豆角,只需要从麻辣味
标签的小瓶子里倒出一小勺,就OK了。
想想未来,机器人按照配方可以做饭了。我们启动的命令就是…,谁管它背后有什么骚操作。
SpringApplication.run(cooking)
将这些细节进行分类封装,能够快速生产的工具,就是Spring Boot
。
那么,假如川菜是MyBatis
,那么我将川菜配方给封装一下,就是一个模块。这就是Spring Boot Starter
。将需要的功能能够快速集成进来,就是starter干的事情。
一桌菜,一生情
对啦,上面的做菜流程,做出来的,只是一道菜而已。也就是说SpringBoot作出来的也就是单体应用,也就是一道菜而已。
一菜不成席。
你吃了,只会有好吃和不好吃两种评价。但我做一桌菜就不一样了。它能喂饱一群吃货,还会让人产生点人生感悟。
我的一桌菜,包括我的桌子,以及这次吃饭的主题,就是Spring Cloud
,里面的每一个个体,就是一个组件。整个就是大杂烩。
我的菜单,以及我的配方,就叫做配置中心
所有的菜都要摆在桌子上。我的桌子,就是注册中心。
有的菜非常好吃,我就多做了一盘,这就是负载均衡。
菜吃的太快,来点酒助助兴,这就叫限流。
今晚的目的是让大家常常我的新菜辣椒炒芥末,其他的菜一会儿再吃,这叫熔断。
吃的菜有的用筷子,有的像印度佬一样直接下手抓,筷子和手,就叫做网关。
黄瓜要蘸酱才好吃,但它们是两道菜,这就叫分布式事务。
每一道菜,都代表不同的意义。比如鲤鱼,寓意鲤鱼跃龙门;鸡翅寓意展翅高飞;春笋意味着节节高升等。这就是应用,也就是SpringBoot写的工程。
综上所述
SpringBoot 是一个抽象的工具集,做出来的东西是一个应用或者组件。
SpringCloud 以一种叫做微服务的方式组织的,应用的集合,是个虚拟概念。
所以,学习SpringCloud
,不仅仅是写代码的问题,还要处理服务治理和一些周边。
End
别和我较真,五一了,乐呵乐呵而已!
不知道去哪玩,桑心。