欢迎关注公众号 《小姐姐味道》 ,一起进步!

# 一个吃货来说明Spring Boot与Spring cloud 是什么关系

虽然知道用交通管理来说明更加符合实际,但我还是要拿做一桌菜来说明。谁让我是个吃货呢哈哈。

昨天晚上,家里来了客人,我想亲自做一桌菜。比如欧阳茄子、诸葛萝卜、令狐鲤鱼之类的。

# 爆炒流程的封装

做饭也是要流程的:

  • 首先要用我白皙的双手把菜洗好
  • 然后用我锋利的瑞士军刀把菜切的整整齐齐。我是练家子,所以切的很6
  • 开油,这次咱用花生油
  • 加葱花,加调料,哈哈这是鲁菜的做法么
  • 将菜爆炒
  • 盛在盘中,进行美化
  • 开吃

这些步骤中,都有具体的细节。比如调料,可能就有几十种。我家的厨房很大,于是我就将常吃的几种菜,各种配料给搅和在一起,分门别类。

这样,如果我想吃干煸豆角,只需要从麻辣味标签的小瓶子里倒出一小勺,就OK了。

想想未来,机器人按照配方可以做饭了。我们启动的命令就是...,谁管它背后有什么骚操作。

SpringApplication.run(cooking)

将这些细节进行分类封装,能够快速生产的工具,就是Spring Boot

那么,假如川菜是MyBatis,那么我将川菜配方给封装一下,就是一个模块。这就是Spring Boot Starter。将需要的功能能够快速集成进来,就是starter干的事情。

# 一桌菜,一生情

对啦,上面的做菜流程,做出来的,只是一道菜而已。也就是说SpringBoot作出来的也就是单体应用,也就是一道菜而已。

一菜不成席。

你吃了,只会有好吃和不好吃两种评价。但我做一桌菜就不一样了。它能喂饱一群吃货,还会让人产生点人生感悟。

我的一桌菜,包括我的桌子,以及这次吃饭的主题,就是Spring Cloud,里面的每一个个体,就是一个组件。整个就是大杂烩。

  • 我的菜单,以及我的配方,就叫做配置中心
  • 所有的菜都要摆在桌子上。我的桌子,就是注册中心
  • 有的菜非常好吃,我就多做了一盘,这就是负载均衡
  • 菜吃的太快,来点酒助助兴,这就叫限流
  • 今晚的目的是让大家常常我的新菜辣椒炒芥末,其他的菜一会儿再吃,这叫熔断
  • 吃的菜有的用筷子,有的像印度佬一样直接下手抓,筷子和手,就叫做网关
  • 黄瓜要蘸酱才好吃,但它们是两道菜,这就叫分布式事务

每一道菜,都代表不同的意义。比如鲤鱼,寓意鲤鱼跃龙门;鸡翅寓意展翅高飞;春笋意味着节节高升等。这就是应用,也就是SpringBoot写的工程。

# 综上所述

SpringBoot 是一个抽象的工具集,做出来的东西是一个应用或者组件。

SpringCloud 以一种叫做微服务的方式组织的,应用的集合,是个虚拟概念。

所以,学习SpringCloud,不仅仅是写代码的问题,还要处理服务治理和一些周边。

# End

别和我较真,五一了,乐呵乐呵而已! 不知道去哪玩,桑心。

逼乎地址: https://www.zhihu.com/question/ 47304987/answer/627831450

高阶介绍: 《微服务不是全部,只是特定领域的子集 》 (opens new window)


关注回复 技术 关键字 ,即可 获取 海量资源

鲁ICP备2020043359号-1