大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 職業指南 2023年IT企業攻略,Java分布式架構面試題

2023年IT企業攻略,Java分布式架構面試題

更新時間:2023-02-15 16:22:18 來源:動力節點 瀏覽2807次

1.Dubbo 有哪些特性?

答:Dubbo 特性如下:

面向接口代理的高性能 RPC 調用:提供高性能的基于代理的遠程調用能力,服務以接口為粒度,為開發者屏蔽遠程調用底層細節;

智能負載均衡:內置多種負載均衡策略,智能感知下游節點健康狀況,顯著減少調用延遲,提高系統吞吐量;

服務自動注冊與發現:支持多種注冊中心服務,服務實例上下線實時感知;

高度可擴展能力:遵循微內核+插件的設計原則,所有核心能力如 Protocol、Transport、Serialization 被設計為擴展點,平等對待內置實現和第三方實現;

運行期流量調度:內置條件、腳本等路由策略,通過配置不同的路由規則,輕松實現灰度發布,同機房優先等功能;

可視化的服務治理與運維:提供豐富服務治理、運維工具:隨時查詢服務元數據、服務健康狀態及調用統計,實時下發路由策略、調整配置參數。

2.Dubbo 有哪些核心組件?

答:Dubbo 核心組件如下:

Provider:服務提供方

Consumer:服務消費方

Registry:服務注冊與發現的注冊中心

Monitor:主要用來統計服務的調用次數和調用時間

Container:服務的運行容器

3.Dubbo 有哪些負載均衡策略?

答:Dubbo 負責均衡策略如下:

隨機負載均衡(Random LoadBalance):按權重設置隨機概率,在一個截面上碰撞的概率高,但調用量越大分布越均勻,而且按概率使用權重后也比較均勻,有利于動態調整提供者權重;

輪詢負載均衡(RoundRobin LoadBalance):按公約后的權重設置輪詢比率,存在慢的提供者累積請求的問題,比如:第二臺機器很慢,但沒掛,當請求調到第二臺時就卡在那,久而久之,所有請求都卡在調到第二臺上;

最少活躍調用數負載均衡(LeastActive LoadBalance):使用最少活躍調用數,活躍數指調用前后計數差;

哈希負載均衡(ConsistentHash LoadBalance):使用哈希值轉發,相同參數的請求總是發到同一提供者。

負載均衡配置如下 :

服務端服務級別

<dubbo:service interface="xxx" loadbalance="roundrobin" />

客戶端服務級別

<dubbo:reference interface="xxx" loadbalance="roundrobin" />

服務端方法級別

<dubbo:service interface="xxx">
   <dubbo:method name="xxx" loadbalance="roundrobin"/>
</dubbo:service>

客戶端方法級別

<dubbo:reference interface="xxx">
   <dubbo:method name="xxx" loadbalance="roundrobin"/>
</dubbo:reference>

4.Dubbo 不支持以下哪種協議?

A:dubbo://

B:rmi://

C:redis://

D:restful://

答:D

題目解析:restful 一直編程規范,并不是一種傳輸協議,也不被 Dubbo 支持。

5.Dubbo 默認使用什么注冊中心,還有別的選擇嗎?

答:推薦使用 ZooKeeper 作為注冊中心,還有 Nacos、Redis、Simple 注冊中心(普通的 Dubbo 服務)。

6.Dubbo 支持多注冊中心嗎?

答:Dubbo 支持同一服務向多注冊中心同時注冊,或者不同服務分別注冊到不同的注冊中心上去,甚至可以同時引用注冊在不同注冊中心上的同名服務。

多注冊中心注冊:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd http://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd">
    <dubbo:application name="world"  />
    <!-- 多注冊中心配置 -->
    <dubbo:registry id="hangzhouRegistry" address="10.20.141.150:9090" />
    <dubbo:registry id="qingdaoRegistry" address="10.20.141.151:9010" default="false" />
    <!-- 向多個注冊中心注冊 -->
    <dubbo:service interface="com.alibaba.hello.api.HelloService" version="1.0.0" ref="helloService" registry="hangzhouRegistry,qingdaoRegistry" />
</beans>

7.Dubbo 支持的連接方式有哪些?

答:Dubbo 支持的主要連接方式有:組播、直連和 ZooKeeper 等注冊中心。

① 組播方式 ,不需要啟動任何中心節點,只要廣播地址一樣,就可以互相發現。

java分布式架構面試題

 

  1. 提供方啟動時廣播自己的地址
  2. 消費方啟動時廣播訂閱請求
  3. 提供方收到訂閱請求時,單播自己的地址給訂閱者,如果設置了 unicast=false,則廣播給訂閱者
  4. 消費方收到提供方地址時,連接該地址進行 RPC 調用

組播受網絡結構限制,只適合小規模應用或開發階段使用。組播地址段:224.0.0.0 ~ 239.255.255.255

配置

<dubbo:registry address="multicast://224.5.6.7:1234" />

<dubbo:registry protocol="multicast" address="224.5.6.7:1234" />

為了減少廣播量,Dubbo 缺省使用單播發送提供者地址信息給消費者,如果一個機器上同時啟了多個消費者進程,消費者需聲明 unicast=false,否則只會有一個消費者能收到消息;當服務者和消費者運行在同一臺機器上,消費者同樣需要聲明 unicast=false,否則消費者無法收到消息,導致 No provider available for the service 異常:

<dubbo:registry address="multicast://224.5.6.7:1234?unicast=false" />

<dubbo:registry protocol="multicast" address="224.5.6.7:1234">
    <dubbo:parameter key="unicast" value="false" />
</dubbo:registry>

② 直連方式 ,注冊中心本身就是一個普通的 Dubbo 服務,可以減少第三方依賴,使整體通訊方式一致。

<dubbo:registry protocol="zookeeper" address="N/A"  file="./.dubbo-platform"/>

將 Simple 注冊中心暴露成 Dubbo 服務:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd http://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd">
    <!-- 當前應用信息配置 -->
    <dubbo:application name="simple-registry" />
    <!-- 暴露服務協議配置 -->
    <dubbo:protocol port="9090" />
    <!-- 暴露服務配置 -->
    <dubbo:service interface="org.apache.dubbo.registry.RegistryService" ref="registryService" registry="N/A" ondisconnect="disconnect" callbacks="1000">
        <dubbo:method name="subscribe"><dubbo:argument index="1" callback="true" /></dubbo:method>
        <dubbo:method name="unsubscribe"><dubbo:argument index="1" callback="false" /></dubbo:method>
    </dubbo:service>
    <!-- 簡單注冊中心實現,可自行擴展實現集群和狀態同步 -->
    <bean id="registryService" class="org.apache.dubbo.registry.simple.SimpleRegistryService" />
</beans>

引用 Simple Registry 服務:

<dubbo:registry address="127.0.0.1:9090" />

或者:

<dubbo:service interface="org.apache.dubbo.registry.RegistryService" group="simple" version="1.0.0" ... >

或者:

<dubbo:registry address="127.0.0.1:9090" group="simple" version="1.0.0" />

適用性說明:此 SimpleRegistryService 只是簡單實現,不支持集群,可作為自定義注冊中心的參考,但不適合直接用于生產環境。

③ ZooKeeper 注冊中心 ,Zookeeper 是 Apacahe Hadoop 的子項目,是一個樹型的目錄服務,支持變更推送,適合作為 Dubbo 服務的注冊中心,工業強度較高,可用于生產環境,并推薦使用。

以上就是“2023年IT企業攻略,Java分布式架構面試題”,你能回答上來嗎?如果想要了解更多的Java面試題相關內容,可以關注動力節點Java官網。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 尤物黄色 | 久久艹免费视频 | 国产精品天天影视久久综合网 | 国产精品一区二区手机看片 | 欧美交换乱理伦片120秒 | 欧美人成在线 | www.99爱| 免费一级欧美片片线观看 | 色天使色婷婷在线影院亚洲 | 国产毛片在线高清视频 | 在线综合色 | 色狠狠狠色噜噜噜综合网 | 国产福利视频在线 | 日韩日b视频 | 中文字字幕在线 | 毛茸茸bbw亚洲人 | 九热爱视频精品视频 | 国产一级毛片视频在线! | 日韩一级黄色影片 | 日韩av片免费播放 | 欧美久久久久 | 欧美va亚洲va在线观看蝴蝶网 | 精品国产乱码一区二区三区麻豆 | 国产一区二区三区精品视频 | 精品视频 九九九 | 4hu影院最新地址www | 色综合久久综合欧美综合网 | 中文精品久久久久中文 | 日本免费一区二区三区 | 久久精品首页 | 亚洲精品国产v片在线观看 亚洲精品国产啊女成拍色拍 | 亚洲精品香蕉一区二区 | 99热久久精品首页 | 伊人一级 | 97色综合| 美国一级毛片片aa成人 | 国产精品一区二区在线观看 | 国产亚洲欧美日韩综合综合二区 | 草久在线观看视频 | 五月婷婷综合在线视频 | 亚洲永久精品ww47 |