一個軟件系統(tǒng)最基礎(chǔ)的幾要素無外乎披粟,計算,存儲冷冗,通信守屉,可視化。
計算涉及到系統(tǒng)的業(yè)務(wù)邏輯蒿辙,線程模型拇泛,性能優(yōu)化。
存儲涉及到系統(tǒng)數(shù)據(jù)的存儲方式思灌,持久化
通信設(shè)計到數(shù)據(jù)的傳輸俺叭,交互,通信
可視化設(shè)計到人機交互泰偿,數(shù)據(jù)的可視化等等
對于SOA架構(gòu)來講熄守,通信是非常重要的一環(huán),涉及到rpc框架的選擇耗跛。目前高性能的rpc框架有g(shù)rpc裕照,阿里的dubbo,阿里的dubbo是基于netty實現(xiàn)的调塌,grpc則是基于http2實現(xiàn)晋南。兩者性能其實相差不了多少。流計算flink這種則基于akka實現(xiàn)羔砾。歸根到底大家都是基于jdk的nio不表负间。互聯(lián)網(wǎng)時代通信層是很重要的蜒茄,沒有通信層就沒有分布式跟微服務(wù)一說唉擂,就沒有service mesh,沒有通信就沒有現(xiàn)代的軟件架構(gòu)檀葛。