zoukankan      html  css  js  c++  java
  • 30.es增删改内部分发原理

    当客户端发送一次请求时,大致会经过以下几个步骤

       

    1)客户端发送一个请求过去,es的一个node接收到这个请求(随机的),这个node就被es内部分配成coordinating node(协调节点)

    2coordinating node对这次请求的document进行路由分发(由上一节的路由算法),将请求转发给对应的nodeprimary shard

    3)实际的nodeprimary shard)接收到coordinating node所分发的请求后,在该primary shard上处理请求,处理完毕后将数据同步到相对应的replica node中。

    4)当实际node处理完所有请求后,就会发消息给coordinating nodecoordinating node发现primary node和所有replica node都处理完毕之后,就返回响应结果给客户端。

       

    其他几个注意点

    1、因为是增删除改请求,所以只能是在primary shard中进行,不能在replic shard中进行。

    2、因为任意node都知道每个document在那个node上,所以对客户端来说,可以选择任意节点,所以在进行请求时并未指定节点,由es随机分配。

  • 相关阅读:
    Java IO流-NIO简介
    Java IO流-Properties
    Java IO流-序列化流和反序列化流
    Codeforces Round #371 (Div. 1) C
    bzoj 2326 矩阵快速幂
    IndiaHacks 2016
    HDU
    Educational Codeforces Round 51 (Rated for Div. 2) F
    Codeforces Round #345 (Div. 1) D
    Codeforces Round #300 E
  • 原文地址:https://www.cnblogs.com/liuqianli/p/8464428.html
Copyright © 2011-2022 走看看