javascript
Spring boot starter
1:Spring boot starter及項(xiàng)目中的類似運(yùn)用
1:Spring boot starter的兩種方式
spring boot約定大于配置理念在這里有體現(xiàn)。
2:項(xiàng)目中用到的類似spring boot starter的機(jī)制
各種中間件,統(tǒng)一使用common包引入,需要使用哪個(gè)中間件,就在springboot啟動(dòng)類上@import一下對(duì)應(yīng)的configuration文件(此文件里去定義各種bean,也可以使用注解@Value("${redis.timeout}")引入配置)。
不需要的中間件,不引入configuration文件即可。
很好的實(shí)現(xiàn)了依賴管理。
2:基于zookeeper的分布式調(diào)度
用到了zookeeper的leader選舉算法
2.1 分布式任務(wù)服務(wù)(sts)啟動(dòng)時(shí),創(chuàng)建永久性的業(yè)務(wù)根節(jié)點(diǎn),然后創(chuàng)建臨時(shí)的,自增的節(jié)點(diǎn)
/*** The znode will not be automatically deleted upon client's disconnect,* and its name will be appended with a monotonically increasing number.*/PERSISTENT_SEQUENTIAL (2, false, true),2.2 任務(wù)調(diào)度時(shí),獲取業(yè)務(wù)根節(jié)點(diǎn)下的所有子節(jié)點(diǎn),排序看是否是最小的節(jié)點(diǎn)(默認(rèn)為leader)
2.3 如果是,則進(jìn)行調(diào)度(根據(jù)任務(wù)配置,反射調(diào)用),否則返回(只有l(wèi)eader有權(quán)限進(jìn)行調(diào)度)
總結(jié)
以上是生活随笔為你收集整理的Spring boot starter的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 莲藕绿豆汤的功效与作用、禁忌和食用方法
- 下一篇: Spring boot 启动过程