雖然知道用交通管理來說明更加符合實際,但我還是要拿做一桌菜來說明。誰讓我是個吃貨呢哈哈。
昨天晚上,家裡來了客人,我想親自做一桌菜。比如歐陽茄子、諸葛蘿蔔、令狐鯉魚之類的。
爆炒流程的封裝
做飯也是要流程的:
- 首先要用我白皙的雙手把菜洗好
- 然後用我鋒利的瑞士軍刀把菜切的整整齊齊。我是練家子,所以切的很6
- 開油,這次我們用花生油
- 加蔥花,加調料,哈哈這是魯菜的做法麼
- 將菜爆炒
- 盛在盤中,進行美化
- 開吃
這些步驟中,都有具體的細節。比如調料,可能就有幾十種。我家的廚房很大,於是我就將常吃的幾種菜,各種配料給攪和在一起,分門別類。
這樣,如果我想吃乾煸豆角,只需要從麻辣味
標籤的小瓶子裡倒出一小勺,就OK了。
想想未來,機器人按照配方可以做飯了。我們啟動的命令就是...,誰管它背後有什麼騷操作。
SpringApplication.run(cooking)
複製程式碼
將這些細節進行分類封裝,能夠快速生產的工具,就是Spring Boot
。
那麼,假如川菜是MyBatis
,那麼我將川菜配方給封裝一下,就是一個模組。這就是Spring Boot Starter
。將需要的功能能夠快速整合進來,就是starter乾的事情。
一桌菜,一生情
對啦,上面的做菜流程,做出來的,只是一道菜而已。也就是說SpringBoot作出來的也就是單體應用,也就是一道菜而已。
一菜不成席。
你吃了,只會有好吃和不好吃兩種評價。但我做一桌菜就不一樣了。它能餵飽一群吃貨,還會讓人產生點人生感悟。
我的一桌菜,包括我的桌子,以及這次吃飯的主題,就是Spring Cloud
,裡面的每一個個體,就是一個元件。整個就是大雜燴。
- 我的選單,以及我的配方,就叫做配置中心
- 所有的菜都要擺在桌子上。我的桌子,就是註冊中心。
- 有的菜非常好吃,我就多做了一盤,這就是負載均衡。
- 菜吃的太快,來點酒助助興,這就叫限流。
- 今晚的目的是讓大家常常我的新菜辣椒炒芥末,其他的菜一會兒再吃,這叫熔斷。
- 吃的菜有的用筷子,有的像印度佬一樣直接下手抓,筷子和手,就叫做閘道器。
- 黃瓜要蘸醬才好吃,但它們是兩道菜,這就叫分散式事務。
每一道菜,都代表不同的意義。比如鯉魚,寓意鯉魚躍龍門;雞翅寓意展翅高飛;春筍意味著節節高升等。這就是應用,也就是SpringBoot寫的工程。
綜上所述
SpringBoot 是一個抽象的工具集,做出來的東西是一個應用或者元件。
SpringCloud 以一種叫做微服務的方式組織的,應用的集合,是個虛擬概念。
所以,學習SpringCloud
,不僅僅是寫程式碼的問題,還要處理服務治理和一些周邊。
End
別和我較真,五一了,樂呵樂呵而已!
不知道去哪玩,桑心。