最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

elasticsearch集群cluster主要功能詳細分析

 更新時間:2022年04月21日 15:17:46   投稿:ychy  
這篇文章主要為大家介紹了elasticsearch集群cluster主要功能詳細分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

在源碼概述中我們分析過,elasticsearch源碼從功能上可以分為分布式功能和數(shù)據(jù)功能,接下來這幾篇會就分布式功能展開。這里首先會對cluster作簡單概述,然后對cluster所涉及的主要功能詳細分析。

 elasticsearch的集群功能代碼在cluster包中,通過ClusterService接口對外暴露。

cluster主要包括以下功能:

發(fā)現(xiàn)(Discovery),路由(routing),傳送功能(transport),集群狀態(tài)(clusterstates)等。

發(fā)現(xiàn)功能功能主要用于節(jié)點啟動后發(fā)現(xiàn)集群,master向所有節(jié)點發(fā)布集群狀態(tài),選舉master節(jié)點并引發(fā)集群節(jié)點變得事件;

routing記錄了集群中各個shard的位置,為節(jié)點提供數(shù)據(jù)信息;

transport是節(jié)點間交流的主要通道,elasticsearch應用了netty框架實現(xiàn)了功能強大的transport功能;

集群狀態(tài)(clusterstates)實現(xiàn)了一些集群狀態(tài),同時提供了一些方法,在集群每次變得時,master節(jié)點都會重新構建clusterstates,并將集群狀態(tài)發(fā)送給每個節(jié)點。

節(jié)點根據(jù)cluster狀態(tài)來確定某些操作是否能執(zhí)行。

下圖是顯示了clusterstate的主要Fields

clusterstate的version是clusterstate的版本每次被更新它都會增加,routingTables包含了集群中所有索引的位置信息,nodes是當前集群中的所有節(jié)點,metaData是索引的一些元數(shù)據(jù),blocks包含了集群的阻塞狀態(tài),

集群一共有三種阻塞級別:read,write和matedata;

status集群的狀態(tài)有四種:unknown,RECEIVED,BEING_APPLIED,APPLIED。

集群功能的接口clusterservice的繼承關系如下所示:

所有實現(xiàn)都在InternalClusterService中,它同時繼承了AutoCloseAble接口和LifecycleComponent接口。

上圖為clusterservice的方法,這些方法包括集群的啟動與關閉,集群狀態(tài)修改和發(fā)布及節(jié)點間ping通信等,這些方法只是從從內(nèi)部看集群是不存在實體的,它的功能是由一個個節(jié)點實現(xiàn)的。因此對于集群的操作最終還是對每個節(jié)點的操作。單有些操作只能由master來進行,有些則是所有節(jié)點都需要進行的操作。每個加入集群后就會增加clusterstatelistener及l(fā)ocalmasterlisener,但是clusterstate的發(fā)布則只能由master節(jié)點來實現(xiàn)。

以上就是對clusterservice的概述,限于篇幅。下一篇會對其進行詳細分析,希望大家以后多多支持腳本之家!

相關文章

  • Slf4j+logback實現(xiàn)JSON格式日志輸出方式

    Slf4j+logback實現(xiàn)JSON格式日志輸出方式

    這篇文章主要介紹了Slf4j+logback實現(xiàn)JSON格式日志輸出方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • servlet重定向詳解(八)

    servlet重定向詳解(八)

    這篇文章主要為大家詳細介紹了servlet重定向的相關資料,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • MyBatis-Plus自定義SQL的詳細過程記錄

    MyBatis-Plus自定義SQL的詳細過程記錄

    Java開發(fā)使用mybatis-plus來執(zhí)行sql操作,往往比mybatis能夠省時省力,下面這篇文章主要給大家介紹了關于MyBatis-Plus自定義SQL的相關資料,需要的朋友可以參考下
    2022-02-02
  • java如何獲取兩個日期的時間差

    java如何獲取兩個日期的時間差

    這篇文章主要為大家詳細介紹了java獲取兩個日期時間差的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • 解決使用mybatis-plus時,生成的SQL大寫變小寫加下劃線問題

    解決使用mybatis-plus時,生成的SQL大寫變小寫加下劃線問題

    這篇文章主要介紹了解決使用mybatis-plus時,生成的SQL大寫變小寫加下劃線問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • Tomcat+Eclipse亂碼問題解決方法與步驟

    Tomcat+Eclipse亂碼問題解決方法與步驟

    亂碼問題是大家在日常開發(fā)過程中經(jīng)常會遇到的問題,由于各自環(huán)境的不同,解決起來也費時費力,本文主要介紹一般性亂碼問題的解決方法與步驟,開發(fā)工具采用Eclipse+Tomcat,統(tǒng)一設置項目編碼UTF-8為例,感興趣的朋友跟隨小編一起看看吧
    2023-08-08
  • springboot脫敏控件升級支持深度脫敏

    springboot脫敏控件升級支持深度脫敏

    這篇文章主要為大家介紹了springboot脫敏控件升級支持深度脫敏,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • Java多線程局域網(wǎng)聊天室的實現(xiàn)

    Java多線程局域網(wǎng)聊天室的實現(xiàn)

    在學習了一個學期的java以后,搞了一個多線程的聊天室,熟悉了一下服務器和客戶機的操作。感興趣的小伙伴們可以參考一下
    2021-06-06
  • 解決myBatis返回integer值的問題

    解決myBatis返回integer值的問題

    這篇文章主要介紹了解決myBatis返回integer值的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • Springboot加載所有Bean之后運行方式

    Springboot加載所有Bean之后運行方式

    這篇文章主要介紹了Springboot加載所有Bean之后運行方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07

最新評論

柳州市| 和田县| 龙州县| 通河县| 九龙坡区| 措勤县| 来凤县| 舟曲县| 大邑县| 吴忠市| 满城县| 休宁县| 淮南市| 海阳市| 泰兴市| 大足县| 广州市| 阳城县| 屯门区| 闸北区| 和顺县| 柘城县| 突泉县| 巴林左旗| 和龙市| 南部县| 遂溪县| 双桥区| 谢通门县| 富锦市| 策勒县| 北京市| 革吉县| 陆良县| 长汀县| 苗栗市| 商都县| 元阳县| 岱山县| 景宁| 财经|