更新時間:2020-11-30 來源:黑馬程序員 瀏覽量:
(1)問題分析:
考官主要想考核dubbo的原理,還有dubbo在項目中的使用。
(2)核心答案講解:
dubbo服務開發(fā)流程:
maven工程中pom文件先導入dubbo依賴jar包
搭建zookeeper注冊中心
寫好服務端工程并配置dubbo服務端配置,并關聯上zookeeper注冊中心
服務端的實現類上添加@Service注解,此注解來自阿里巴巴的
寫好客戶端工程并配置dubbo客戶端配置,并關聯上zookeeper注冊中心
在注入的服務的接口上添加@Reference注解
dubbo運行流程:
1)服務容器負責啟動,加載,運行服務提供者。
2)服務提供者在啟動時,向注冊中心注冊自己提供的服務。
3)服務消費者在啟動時,向注冊中心訂閱自己所需的服務。
4)注冊中心返回服務提供者地址列表給消費者,如果有變更,注冊中心將基于長連接推送變更數據給消費者。
5)服務消費者,從提供者地址列表中,基于軟負載均衡算法,選一臺提供者進行調用,如果調用失敗,再選另一臺調用。
6)服務消費者和提供者,在內存中累計調用次數和調用時間,定時每分鐘發(fā)送一次統(tǒng)計數據到監(jiān)控中心。
(3)問題擴展:
RPC協議:
RPC(Remote Procedure Call)—遠程過程調用,它是一種通過網絡從遠程計算機程序上請求服務,而不需要了解底層網絡技術的協議。RPC協議假定某些傳輸協議的存在,如TCP或UDP,為通信程序之間攜帶信息數據。在OSI網絡通信模型中,RPC跨越了傳輸層和應用層。RPC使得開發(fā)包括網絡分布式多程序在內的應用程序更加容易。
說得通俗點,使用RPC協議使得服務器和服務器之間通信效率更高,更方便。
(4)結合項目中使用:
在分布式架構項目中,可以使用dubbo做接口暴露跟調用。
猜你喜歡:
【AI設計】北京143期畢業(yè)僅36天,全員拿下高薪offer!黑馬AI設計連續(xù)6期100%高薪就業(yè)
2025-09-19【跨境電商運營】深圳跨境電商運營畢業(yè)22個工作日,就業(yè)率91%+,最高薪資達13500元
2025-09-19【AI運維】鄭州運維1期就業(yè)班,畢業(yè)14個工作日,班級93%同學已拿到Offer, 一線均薪資 1W+
2025-09-19【AI鴻蒙開發(fā)】上海校區(qū)AI鴻蒙開發(fā)4期5期,距離畢業(yè)21天,就業(yè)率91%,平均薪資14046元
2025-09-19【AI大模型開發(fā)-Python】畢業(yè)33個工作日,就業(yè)率已達到94.55%,班均薪資20763元
2025-09-19【AI智能應用開發(fā)-Java】畢業(yè)5個工作日就業(yè)率98.18%,最高薪資 17.5k*13薪,全班平均薪資9244元
2025-09-19