image.png
對于服務(wù)調(diào)用者來說:
- (1)服務(wù)框架獲得服務(wù)調(diào)用者提供的服務(wù)信息(服務(wù)唯一標(biāo)識:接口全限定名+版本號蝇摸;方法怖竭;調(diào)用參數(shù))碘耳;
- (2)框架根據(jù)服務(wù)信息通過服務(wù)注冊查找中心查找到該服務(wù)提供者的地址列表抱既;
- (3)可根據(jù)(服務(wù)剪返、接口迫卢、方法倚搬、參數(shù))進(jìn)行路由,確定服務(wù)提供者的地址乾蛤;
- (4)拼裝請求參數(shù)對象Request每界,并序列化成二進(jìn)制流;
- (5)與服務(wù)端建立連接家卖,發(fā)送序列化二進(jìn)制結(jié)果眨层;
- (6)得到服務(wù)端響應(yīng),反序列化上荡,得到最終調(diào)用結(jié)果
對于服務(wù)提供者來說:
- (1)發(fā)布服務(wù)趴樱,監(jiān)聽端口;
- (2)服務(wù)發(fā)布成功后,將服務(wù)信息(服務(wù)唯一標(biāo)識:接口全限定名+版本號伊佃;服務(wù)實(shí)現(xiàn)類全限定名)注冊到服務(wù)注冊查找中心窜司;
- (3)接收客戶端請求,將請求數(shù)據(jù)反序列化為Request對象航揉;
- (4)解析Request對象塞祈,根據(jù)服務(wù)標(biāo)識從服務(wù)注冊查找中心獲取該服務(wù)信息,例如服務(wù)接口的實(shí)現(xiàn)類帅涂;
- (5)利用反射創(chuàng)建類實(shí)例對象议薪,調(diào)用方法(多采用線程池的方式);
- (6)將調(diào)用結(jié)果序列化成二進(jìn)制數(shù)據(jù)媳友;
-(7)發(fā)送響應(yīng)數(shù)據(jù)到客戶端斯议;