RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛

╨Т рд╢реЗрд╡рдЯрдЪрд╛ рд▓реЗрдЦ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддреЗрд╕рд╛рдареА рдЖрдореНрд╣реА RabbitMQ рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧрдХрдбреЗ рдкрд╛рд╣рд┐рд▓реЗ. рдЖрддрд╛ рдЕрдкрд╛рдЪреЗ рдХрд╛рдлреНрдХрд╛рдордзреНрдпреЗ рдЦреЛрд▓рд╡рд░ рдЬрд╛рдКрдпрд╛.

рдпреЗрдереЗ рдкреНрд░рддрд┐рдХреГрддреАрдЪреЗ рдПрдХрдХ рд╡рд┐рднрд╛рдЬрди рдЖрд╣реЗ. рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рд╖рдпрд╛рдордзреНрдпреЗ рдПрдХ рдХрд┐рдВрд╡рд╛ рдЕрдзрд┐рдХ рд╡рд┐рднрд╛рдЧ рдЕрд╕рддрд╛рдд. рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рднрд╛рдЧрд╛рдд рдЕрдиреБрдпрд╛рдпрд╛рдВрд╕рд╣ рдХрд┐рдВрд╡рд╛ рдирд╕рд▓реЗрд▓рд╛ рдиреЗрддрд╛ рдЕрд╕рддреЛ. рд╡рд┐рд╖рдп рддрдпрд╛рд░ рдХрд░рддрд╛рдирд╛, рддреБрдореНрд╣реА рд╡рд┐рднрд╛рдЬрдирд╛рдВрдЪреА рд╕рдВрдЦреНрдпрд╛ рдЖрдгрд┐ рдкреНрд░рддрд┐рдХреГрддреА рдЧреБрдгрд╛рдВрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛. рдиреЗрд╣рдореАрдЪреЗ рдореВрд▓реНрдп 3 рдЖрд╣реЗ, рдореНрд╣рдгрдЬреЗ рддреАрди рдкреНрд░рддрд┐рдХреГрддреА: рдПрдХ рдиреЗрддрд╛ рдЖрдгрд┐ рджреЛрди рдЕрдиреБрдпрд╛рдпреА.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 1. рддреАрди рджрд▓рд╛рд▓рд╛рдВрдордзреНрдпреЗ рдЪрд╛рд░ рд╡рд┐рднрд╛рдЧ рд╡рд┐рддрд░реАрдд рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд

рд╕рд░реНрд╡ рд╡рд╛рдЪрд╛ рдЖрдгрд┐ рд▓рд┐рд╣рд╛ рд╡рд┐рдирдВрддреНрдпрд╛ рдиреЗрддреНрдпрд╛рдХрдбреЗ рдЬрд╛рддрд╛рдд. рдЕрдиреБрдпрд╛рдпреА рд╡реЗрд│реЛрд╡реЗрд│реА рдиреЗрддреНрдпрд╛рд▓рд╛ рдирд╡реАрдирддрдо рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд┐рдирдВрддреНрдпрд╛ рдкрд╛рдард╡рддрд╛рдд. рдЧреНрд░рд╛рд╣рдХ рдХрдзреАрд╣реА рдЕрдиреБрдпрд╛рдпрд╛рдВрдХрдбреЗ рд╡рд│рдд рдирд╛рд╣реАрдд; рдирдВрддрд░рдЪреЗ рдХреЗрд╡рд│ рдЕрдирд╛рд╡рд╢реНрдпрдХрддрд╛ рдЖрдгрд┐ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддреЗрд╕рд╛рдареА рдЕрд╕реНрддрд┐рддреНрд╡рд╛рдд рдЖрд╣реЗрдд.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛

рд╡рд┐рднрд╛рдЬрди рдЕрдпрд╢рд╕реНрд╡реА

рдЬреЗрд╡реНрд╣рд╛ рдПрдЦрд╛рджрд╛ рджрд▓рд╛рд▓ рдЕрдкрдпрд╢реА рдард░рддреЛ рддреЗрд╡реНрд╣рд╛ рдЕрдиреЗрдХ рд╡рд┐рднрд╛рдЧрд╛рдВрдЪреЗ рдиреЗрддреЗ рдЕрдкрдпрд╢реА рдард░рддрд╛рдд. рддреНрдпрд╛ рдкреНрд░рддреНрдпреЗрдХрд╛рдордзреНрдпреЗ, рджреБрд╕рд░реНтАНрдпрд╛ рдиреЛрдбрдЪрд╛ рдЕрдиреБрдпрд╛рдпреА рдиреЗрддрд╛ рдмрдирддреЛ. рдЦрд░рдВ рддрд░, рд╣реЗ рдиреЗрд╣рдореАрдЪ рд╣реЛрдд рдирд╛рд╣реА, рдХрд╛рд░рдг рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рдШрдЯрдХ рджреЗрдЦреАрд▓ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреЛ: рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭ рдХреЗрд▓реЗрд▓реЗ рдЕрдиреБрдпрд╛рдпреА рдЖрд╣реЗрдд рдХреА рдирд╛рд╣реА, рдЖрдгрд┐ рдирд╕рд▓реНрдпрд╛рд╕, рдирдВрддрд░ рдЕрд╕рдВрдХрд╛рд▓рд┐рдХ рди рдХреЗрд▓реЗрд▓реНрдпрд╛ рдкреНрд░рддрд┐рдХреГрддреАрд╡рд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рдЖрд╣реЗ рдХреА рдирд╛рд╣реА. рдкрдг рдЖрддреНрддрд╛рд╕рд╛рдареА рдЧреЛрд╖реНрдЯреА рдЧреБрдВрддрд╛рдЧреБрдВрддреА рдХрд░реВ рдирдХрд╛.

рдмреНрд░реЛрдХрд░ 3 рдиреЗ рдиреЗрдЯрд╡рд░реНрдХ рд╕реЛрдбрд▓реЗ, рдЖрдгрд┐ рдмреНрд░реЛрдХрд░ 2 рдпреЗрдереЗ рд╕реЗрдХреНрд╢рди 2 рд╕рд╛рдареА рдирд╡реАрди рдиреЗрддрд╛ рдирд┐рд╡рдбрд▓рд╛ рдЬрд╛рддреЛ.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 2. рдмреНрд░реЛрдХрд░ 3 рдорд░рдг рдкрд╛рд╡рд▓рд╛ рдЖрдгрд┐ рджрд▓рд╛рд▓ 2 рд╡рд░ рддреНрдпрд╛рдЪрд╛ рдЕрдиреБрдпрд╛рдпреА рд╡рд┐рднрд╛рдЬрди 2 рдЪрд╛ рдирд╡реАрди рдиреЗрддрд╛ рдореНрд╣рдгреВрди рдирд┐рд╡рдбрд▓рд╛ рдЧреЗрд▓рд╛

рдордЧ рдмреНрд░реЛрдХрд░ 1 рд╕реЛрдбрддреЛ рдЖрдгрд┐ рдХрд▓рдо 1 рджреЗрдЦреАрд▓ рддреНрдпрд╛рдЪрд╛ рдиреЗрддрд╛ рдЧрдорд╛рд╡рддреЛ, рдЬреНрдпрд╛рдЪреА рднреВрдорд┐рдХрд╛ рдмреНрд░реЛрдХрд░ 2 рдХрдбреЗ рдЬрд╛рддреЗ.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 3. рдПрдХ рджрд▓рд╛рд▓ рд╢рд┐рд▓реНрд▓рдХ рдЖрд╣реЗ. рд╢реВрдиреНрдп рд░рд┐рдбрдВрдбрдВрд╕реАрд╕рд╣ рд╕рд░реНрд╡ рдиреЗрддреЗ рдПрдХрд╛рдЪ рджрд▓рд╛рд▓рд╛рд╡рд░ рдЖрд╣реЗрдд

рдЬреЗрд╡реНрд╣рд╛ рдмреНрд░реЛрдХрд░ 1 рдкреБрдиреНрд╣рд╛ рдСрдирд▓рд╛рдЗрди рдпреЗрддреЛ, рддреЗрд╡реНрд╣рд╛ рддреЗ рдЪрд╛рд░ рдлреЙрд▓реЛрдЕрд░реНрд╕ рдЬреЛрдбрддреЗ, рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рднрд╛рдЬрдирд╛рд▓рд╛ рдХрд╛рд╣реА рд░рд┐рдбрдВрдбрдВрд╕реА рдкреНрд░рджрд╛рди рдХрд░рддреЗ. рдкрдг рддрд░реАрд╣реА рд╕рд░реНрд╡ рдиреЗрддреЗ рджрд▓рд╛рд▓ реи рд╡рд░рдЪ рд░рд╛рд╣рд┐рд▓реЗ.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 4. рдиреЗрддреЗ рджрд▓рд╛рд▓ 2 рд╡рд░ рд░рд╛рд╣рддрд╛рдд

рдЬреЗрд╡реНрд╣рд╛ рдмреНрд░реЛрдХрд░ 3 рдпреЗрддреЛ, рддреЗрд╡реНрд╣рд╛ рдЖрдореНрд╣реА рдкреНрд░рддрд┐ рд╡рд┐рднрд╛рдЬрди рддреАрди рдкреНрд░рддрд┐рдХреГрддреАрдВрд╡рд░ рдкрд░рдд рдпреЗрддреЛ. рдкрдг рддрд░реАрд╣реА рд╕рд░реНрд╡ рдиреЗрддреЗ рджрд▓рд╛рд▓ реи рд╡рд░ рдЖрд╣реЗрдд.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 5. рджрд▓рд╛рд▓ 1 рдЖрдгрд┐ 3 рдЪреНрдпрд╛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрдиреЗрдирдВрддрд░ рдиреЗрддреНрдпрд╛рдВрдЪреА рдЕрд╕рдВрддреБрд▓рд┐рдд рдирд┐рдпреБрдХреНрддреА

рдХрд╛рдлреНрдХрд╛рдХрдбреЗ RabbitMQ рдкреЗрдХреНрд╖рд╛ рдЪрд╛рдВрдЧрд▓реЗ рдиреЗрддреЗ рдкреБрдирд░реНрд╕рдВрддреБрд▓рдирд╛рдЪреЗ рд╕рд╛рдзрди рдЖрд╣реЗ. рддреЗрдереЗ, рддреБрдореНрд╣рд╛рд▓рд╛ рддреГрддреАрдп-рдкрдХреНрд╖ рдкреНрд▓рдЧрдЗрди рдХрд┐рдВрд╡рд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд╛рдкрд░рд╛рд╡реЗ рд▓рд╛рдЧрд▓реЗ рдЬреНрдпрд╛рдиреЗ рд╕реНрдерд▓рд╛рдВрддрд░ рдХрд░рддрд╛рдирд╛ рд░рд┐рдбрдВрдбрдиреНрд╕реА рдХрдореА рдХрд░реВрди рдорд╛рд╕реНрдЯрд░ рдиреЛрдб рд╕реНрдерд▓рд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдзреЛрд░рдгреЗ рдмрджрд▓рд▓реА. рдпрд╛рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, рдореЛрдареНрдпрд╛ рд░рд╛рдВрдЧрд╛рдВрд╕рд╛рдареА рдЖрдореНрд╣рд╛рд▓рд╛ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рджрд░рдореНрдпрд╛рди рдЕрдиреБрдкрд▓рдмреНрдзрддрд╛ рд╕реНрд╡реАрдХрд╛рд░рд╛рд╡реА рд▓рд╛рдЧрд▓реА.

рдиреЗрддреНрдпрд╛рдЪреНрдпрд╛ рднреВрдорд┐рдХреЗрд╕рд╛рдареА рдХрд╛рдлреНрдХрд╛рдЪреА "рдкреНрд░рд╛рдзрд╛рдиреНрдп рдкреНрд░рддрд┐рдХреГрддреА" рд╣реА рд╕рдВрдХрд▓реНрдкрдирд╛ рдЖрд╣реЗ. рдЬреЗрд╡реНрд╣рд╛ рд╡рд┐рд╖рдп рд╡рд┐рднрд╛рдЬрдиреЗ рддрдпрд╛рд░ рдХреЗрд▓реА рдЬрд╛рддрд╛рдд, рддреЗрд╡реНрд╣рд╛ рдХрд╛рдлреНрдХрд╛ рдиреЛрдбреНрд╕рдордзреНрдпреЗ рд╕рдорд╛рди рд░реАрддреАрдиреЗ рдиреЗрддреНрдпрд╛рдВрдЪреЗ рд╡рд┐рддрд░рдг рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░рддреЛ рдЖрдгрд┐ рддреНрдпрд╛ рдкрд╣рд┐рд▓реНрдпрд╛ рдиреЗрддреНрдпрд╛рдВрдирд╛ рдкреНрд░рд╛рдзрд╛рдиреНрдп рдореНрд╣рдгреВрди рдЪрд┐рдиреНрд╣рд╛рдВрдХрд┐рдд рдХрд░рддреЛ. рдХрд╛рд▓рд╛рдВрддрд░рд╛рдиреЗ, рд╕рд░реНрд╡реНрд╣рд░ рд░реАрдмреВрдЯ, рдЕрдпрд╢рд╕реНрд╡реА рдЖрдгрд┐ рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рдмреНрд░реЗрдХрдбрд╛рдЙрдирдореБрд│реЗ, рд╡рд░ рд╡рд░реНрдгрди рдХреЗрд▓реНрдпрд╛рдкреНрд░рдорд╛рдгреЗ, рдиреЗрддреЗ рдЗрддрд░ рдиреЛрдбреНрд╕рд╡рд░ рдпреЗрдК рд╢рдХрддрд╛рдд.

рдпрд╛рдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдХрд╛рдлреНрдХрд╛ рджреЛрди рдкрд░реНрдпрд╛рдп рдСрдлрд░ рдХрд░рддреЛ:

  • рдкрд░реНрдпрд╛рдп auto.leader.rebalance.enable=true рдХрдВрдЯреНрд░реЛрд▓рд░ рдиреЛрдбрд▓рд╛ рдЖрдкреЛрдЖрдк рд▓реАрдбрд░реНрд╕рдирд╛ рдкрд╕рдВрддреАрдЪреНрдпрд╛ рдкреНрд░рддрд┐рдХреГрддреАрдВрд╡рд░ рдкрд░рдд рдирд┐рдпреБрдХреНрдд рдХрд░рдгреНрдпрд╛рдЪреА рдЖрдгрд┐ рддреНрдпрд╛рджреНрд╡рд╛рд░реЗ рдПрдХрд╕рдорд╛рди рд╡рд┐рддрд░рдг рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдЕрдиреБрдорддреА рджреЗрддреЗ.
  • рдкреНрд░рд╢рд╛рд╕рдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд╛рд▓рд╡реВ рд╢рдХрддреЛ kafka-preferred-replica-election.sh рдореЕрдиреНрдпреБрдЕрд▓ рдкреБрдирд░реНрдирд┐рдпреБрдХреНрддреАрд╕рд╛рдареА.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 6. рдкреБрдирд░реНрд╕рдВрддреБрд▓рдирд╛рдирдВрддрд░ рдкреНрд░рддрд┐рдХреГрддреА

рд╣реА рдЕрдкрдпрд╢рд╛рдЪреА рдПрдХ рд╕рд░рд▓реАрдХреГрдд рдЖрд╡реГрддреНрддреА рд╣реЛрддреА, рдкрд░рдВрддреБ рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдЖрд╣реЗ, рдЬрд░реА рдпреЗрдереЗ рдХрд╛рд╣реАрд╣реА рдХреНрд▓рд┐рд╖реНрдЯ рдирд╛рд╣реА. рд╣реЗ рд╕рд░реНрд╡ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдкреНрд░рддрд┐рдХреГрддреАрдВрд╡рд░ рдпреЗрддреЗ (рдЗрди-рд╕рд┐рдВрдХ рдкреНрд░рддрд┐рдХреГрддреА, ISR).

рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭ рдкреНрд░рддрд┐рдХреГрддреА (ISR)

ISR рд╣рд╛ рд╡рд┐рднрд╛рдЬрдирд╛рдЪреНрдпрд╛ рдкреНрд░рддрд┐рдХреГрддреАрдВрдЪрд╛ рдПрдХ рд╕рдВрдЪ рдЖрд╣реЗ рдЬреНрдпрд╛рд▓рд╛ "рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭ" (рдЗрди-рд╕рд┐рдВрдХ) рдорд╛рдирд▓реЗ рдЬрд╛рддреЗ. рдиреЗрддрд╛ рдЖрд╣реЗ, рдкрдг рдЕрдиреБрдпрд╛рдпреА рдирд╕реВ рд╢рдХрддрд╛рдд. рдЬрд░ рдЕрдиреБрдпрд╛рдпреАрдиреЗ рдордзреНрдпрд╛рдВрддрд░ рд╕рдВрдкрдгреНрдпрд╛рдкреВрд░реНрд╡реА рд╕рд░реНрд╡ рдиреЗрддреНрдпрд╛рдЪреНрдпрд╛ рд╕рдВрджреЗрд╢рд╛рдВрдЪреНрдпрд╛ рдЕрдЪреВрдХ рдкреНрд░рддреА рддрдпрд╛рд░ рдХреЗрд▓реНрдпрд╛ рдЕрд╕рддреАрд▓ рддрд░ рддреЛ рд╕рдордХреНрд░рдорд┐рдд рдорд╛рдирд▓рд╛ рдЬрд╛рддреЛ. replica.lag.time.max.ms.

рдлреЙрд▓реЛрдЕрд░рд▓рд╛ ISR рд╕реЗрдЯрдордзреВрди рдХрд╛рдвреВрди рдЯрд╛рдХрд▓реЗ рдЬрд╛рддреЗ рдЬрд░ рддреЗ:

  • рдордзреНрдпрд╛рдВрддрд░рд╛рд╕рд╛рдареА рдирд┐рд╡рдб рдХрд░рдгреНрдпрд╛рдЪреА рд╡рд┐рдирдВрддреА рдХреЗрд▓реА рдирд╛рд╣реА replica.lag.time.max.ms (рдореГрдд рдЧреГрд╣реАрдд)
  • рдордзреНрдпрд╛рдВрддрд░ рджрд░рдореНрдпрд╛рди рдЕрджреНрдпрддрдирд┐рдд рдХрд░рдгреНрдпрд╛рдд рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗ рдирд╛рд╣реА replica.lag.time.max.ms (рдзреАрдореЗ рдорд╛рдирд▓реЗ рдЬрд╛рддреЗ)

рдЕрдиреБрдпрд╛рдпреА рдордзреНрдпрд╛рдВрддрд░рд╛рдд рдирдореБрдирд╛ рд╡рд┐рдирдВрддреНрдпрд╛ рдХрд░рддрд╛рдд replica.fetch.wait.max.ms, рдЬреЗ рдбреАрдлреЙрд▓реНрдЯ 500ms рдЖрд╣реЗ.

ISR рдЪрд╛ рдЙрджреНрджреЗрд╢ рд╕реНрдкрд╖реНрдЯрдкрдгреЗ рд╕реНрдкрд╖реНрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣рд╛рд▓рд╛ рдирд┐рд░реНрдорд╛рддреНрдпрд╛рдХрдбреВрди рдкреБрд╖реНрдЯреАрдХрд░рдгреЗ рдЖрдгрд┐ рдХрд╛рд╣реА рдЕрдкрдпрд╢реА рдкрд░рд┐рд╕реНрдерд┐рддреА рдкрд╛рд╣рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдмреНрд░реЛрдХрд░ рдкреБрд╖реНрдЯреАрдХрд░рдг рдкрд╛рдард╡рддреЛ рддреЗрд╡реНрд╣рд╛ рдЙрддреНрдкрд╛рджрдХ рдирд┐рд╡рдбреВ рд╢рдХрддрд╛рдд:

  • acks=0, рдкреБрд╖реНрдЯреАрдХрд░рдг рдкрд╛рдард╡рд▓реЗ рдЬрд╛рдд рдирд╛рд╣реА
  • acks=1, рдиреЗрддреНрдпрд╛рдиреЗ рддреНрдпрд╛рдЪреНрдпрд╛ рд╕реНрдерд╛рдирд┐рдХ рд▓реЙрдЧрд╡рд░ рд╕рдВрджреЗрд╢ рд▓рд┐рд╣рд┐рд▓реНрдпрд╛рдирдВрддрд░ рдкреБрд╖реНрдЯреАрдХрд░рдг рдкрд╛рдард╡рд▓реЗ рдЬрд╛рддреЗ
  • acks=all, ISR рдордзреАрд▓ рд╕рд░реНрд╡ рдкреНрд░рддрд┐рдХреГрддреАрдВрдиреА рд╕реНрдерд╛рдирд┐рдХ рд▓реЙрдЧрд╡рд░ рд╕рдВрджреЗрд╢ рд▓рд┐рд╣рд┐рд▓реНрдпрд╛рдирдВрддрд░ рдкреБрд╖реНрдЯреАрдХрд░рдг рдкрд╛рдард╡рд▓реЗ рдЬрд╛рддреЗ

рдХрд╛рдлреНрдХрд╛ рд╢рдмреНрджрд╛рд╡рд▓реАрдд, рдЬрд░ ISR рдиреЗ рд╕рдВрджреЗрд╢ рдЬрддрди рдХреЗрд▓рд╛ рдЕрд╕реЗрд▓ рддрд░ рддреЛ "рдХрд┐рдЯреЗрдб" рдЖрд╣реЗ. Acks=all рд╣рд╛ рд╕рд░реНрд╡рд╛рдд рд╕реБрд░рдХреНрд╖рд┐рдд рдкрд░реНрдпрд╛рдп рдЖрд╣реЗ, рдкрд░рдВрддреБ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рд▓рдВрдм рджреЗрдЦреАрд▓ рдЬреЛрдбрддреЛ. рджреЛрди рдЕрдпрд╢рд╕реНрд╡реА рдЙрджрд╛рд╣рд░рдгреЗ рдкрд╛рд╣реВ рдЖрдгрд┐ рд╡рд┐рд╡рд┐рдз 'рдЕреЕрдХреНрд╕' рдкрд░реНрдпрд╛рдп ISR рд╕рдВрдХрд▓реНрдкрдиреЗрд╢реА рдХрд╕рд╛ рд╕рдВрд╡рд╛рдж рд╕рд╛рдзрддрд╛рдд.

Acks=1 рдЖрдгрд┐ ISR

рдпрд╛ рдЙрджрд╛рд╣рд░рдгрд╛рдд, рдЖрдкрдг рдкрд╛рд╣рдгрд╛рд░ рдЖрд╣реЛрдд рдХреА рдЬрд░ рдиреЗрддреНрдпрд╛рдиреЗ рд╕рд░реНрд╡ рдЕрдиреБрдпрд╛рдпрд╛рдВрдХрдбреВрди рдпреЗрдгрд╛рд░рд╛ рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрджреЗрд╢ рдЬрддрди рд╣реЛрдгреНрдпрд╛рдЪреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХреЗрд▓реА рдирд╛рд╣реА, рддрд░ рдиреЗрддрд╛ рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реНрдпрд╛рд╕ рдбреЗрдЯрд╛ рдЧрдорд╛рд╡рдгреЗ рд╢рдХреНрдп рдЖрд╣реЗ. рд╕рд┐рдВрдХ рди рдХреЗрд▓реЗрд▓реНрдпрд╛ рдЕрдиреБрдпрд╛рдпрд╛рдХрдбреЗ рдиреЗрд╡реНрд╣рд┐рдЧреЗрдЯ рдХрд░рдгреЗ рд╕реЗрдЯрд┐рдВрдЧрджреНрд╡рд╛рд░реЗ рд╕рдХреНрд╖рдо рдХрд┐рдВрд╡рд╛ рдЕрдХреНрд╖рдо рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ unclean.leader.election.enable.

рдпрд╛ рдЙрджрд╛рд╣рд░рдгрд╛рдд, рдирд┐рд░реНрдорд╛рддреНрдпрд╛рдХрдбреЗ acks=1 рдореВрд▓реНрдп рдЖрд╣реЗ. рд╡рд┐рднрд╛рдЧ рд╕рд░реНрд╡ рддреАрди рджрд▓рд╛рд▓рд╛рдВрдордзреНрдпреЗ рд╡рд┐рддрд░реАрдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рдмреНрд░реЛрдХрд░ 3 рдорд╛рдЧреЗ рдЖрд╣реЗ, рддреЛ рдЖрда рд╕реЗрдХрдВрджрд╛рдВрдкреВрд░реНрд╡реА рд▓реАрдбрд░рд╢реА рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭ рдЭрд╛рд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ рдЖрддрд╛ 7456 рд╕рдВрджреЗрд╢ рдорд╛рдЧреЗ рдЖрд╣реЗ. рдмреНрд░реЛрдХрд░ 1 рдлрдХреНрдд рдПрдХ рд╕реЗрдХрдВрдж рдорд╛рдЧреЗ рд╣реЛрддрд╛. рдЖрдордЪрд╛ рдирд┐рд░реНрдорд╛рддрд╛ рд╕рдВрджреЗрд╢ рдкрд╛рдард╡рддреЛ рдЖрдгрд┐ рддреНрд╡рд░реАрдд рдПрдХ ack рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЛ, рдЬреНрдпрд╛рдЪреА рдиреЗрддрд╛ рд╡рд╛рдЯ рдкрд╛рд╣рдд рдирд╛рд╣реА рдЕрд╢рд╛ рдордВрдж рдХрд┐рдВрд╡рд╛ рдореГрдд рдЕрдиреБрдпрд╛рдпрд╛рдВрдЪреНрдпрд╛ рдУрд╡реНрд╣рд░рд╣реЗрдбрд╢рд┐рд╡рд╛рдп.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 7. рддреАрди рдкреНрд░рддрд┐рдХреГрддреА рдЕрд╕рд▓реЗрд▓реЗ ISR

рдмреНрд░реЛрдХрд░ 2 рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓рд╛ рдЖрдгрд┐ рдирд┐рд░реНрдорд╛рддреНрдпрд╛рд▓рд╛ рдХрдиреЗрдХреНрд╢рди рддреНрд░реБрдЯреА рдкреНрд░рд╛рдкреНрдд рдЭрд╛рд▓реА. рдиреЗрддреГрддреНрд╡ рдмреНрд░реЛрдХрд░ 1 рдХрдбреЗ рдЧреЗрд▓реНрдпрд╛рдирдВрддрд░, рдЖрдореНрд╣реА 123 рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡рддреЛ. рдмреНрд░реЛрдХрд░ 1 рд╡рд░реАрд▓ рдлреЙрд▓реЛрдЕрд░ рд╣рд╛ ISR рдЪрд╛ рднрд╛рдЧ рд╣реЛрддрд╛, рдкрд░рдВрддреБ рддреЛ рдкрдбрд▓рд╛ рддреЗрд╡реНрд╣рд╛ рд▓реАрдбрд░рд╢реА рдкреВрд░реНрдгрдкрдгреЗ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭ рдЭрд╛рд▓рд╛ рдирд╡реНрд╣рддрд╛.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 8. рддреЛ рдХреНрд░реЕрд╢ рдЭрд╛рд▓реНрдпрд╛рд╡рд░ рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡рд▓реЗ рдЬрд╛рддрд╛рдд

рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирдордзреНрдпреЗ bootstrap.servers рдирд┐рд░реНрдорд╛рддреНрдпрд╛рдХрдбреЗ рдЕрдиреЗрдХ рдмреНрд░реЛрдХрд░ рд╕реВрдЪреАрдмрджреНрдз рдЖрд╣реЗрдд рдЖрдгрд┐ рддреЗ рдирд╡реАрди рд╡рд┐рднрд╛рдЧ рдкреНрд░рдореБрдЦ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рджреБрд╕рд░реНтАНрдпрд╛ рдмреНрд░реЛрдХрд░рд▓рд╛ рд╡рд┐рдЪрд╛рд░реВ рд╢рдХрддрд╛рдд. рддреЗ рдирдВрддрд░ рдмреНрд░реЛрдХрд░ 1 рд╢реА рдХрдиреЗрдХреНрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рдЖрдгрд┐ рд╕рдВрджреЗрд╢ рдкрд╛рдард╡рдгреЗ рд╕реБрд░реВ рдареЗрд╡рддреЗ.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 9. рдереЛрдбреНрдпрд╛ рд╡рд┐рд╢реНрд░рд╛рдВрддреАрдирдВрддрд░ рд╕рдВрджреЗрд╢ рдкрд╛рдард╡рдгреЗ рдкреБрдиреНрд╣рд╛ рд╕реБрд░реВ рд╣реЛрддреЗ

рдмреНрд░реЛрдХрд░ 3 рдЖрдгрдЦреА рдорд╛рдЧреЗ рдЖрд╣реЗ. рддреЗ рд╡рд┐рдирдВрддреНрдпрд╛ рдЖрдгрддреЗ рдкрд░рдВрддреБ рд╕рдордХреНрд░рдорд┐рдд рдХрд░реВ рд╢рдХрдд рдирд╛рд╣реА. рдмреНрд░реЛрдХрд░реНрд╕рдордзреАрд▓ рд╕рдВрде рдиреЗрдЯрд╡рд░реНрдХ рдХрдиреЗрдХреНрд╢рди, рд╕реНрдЯреЛрд░реЗрдЬ рд╕рдорд╕реНрдпрд╛ рдЗрддреНрдпрд╛рджреАрдореБрд│реЗ рд╣реЗ рдЕрд╕реВ рд╢рдХрддреЗ. рддреЗ ISR рдордзреВрди рдХрд╛рдвреВрди рдЯрд╛рдХрд▓реЗ рдЖрд╣реЗ. рдЖрддрд╛ ISR рдордзреНрдпреЗ рдПрдХ рдкреНрд░рддрд┐рдХреГрддреА рдЖрд╣реЗ - рдиреЗрддрд╛! рдирд┐рд░реНрдорд╛рддрд╛ рд╕рдВрджреЗрд╢ рдкрд╛рдард╡рдгреЗ рдЖрдгрд┐ рдкреБрд╖реНрдЯреАрдХрд░рдгреЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдгреЗ рд╕реБрд░реВ рдареЗрд╡рддреЛ.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 10. рдмреНрд░реЛрдХрд░ 3 рд╡рд░реАрд▓ рдлреЙрд▓реЛрдЕрд░ ISR рдордзреВрди рдХрд╛рдвреВрди рдЯрд╛рдХрд▓рд╛ рдЬрд╛рддреЛ

рдмреНрд░реЛрдХрд░ 1 рдЦрд╛рд▓реА рдЬрд╛рддреЛ рдЖрдгрд┐ 3 рдореЗрд╕реЗрдЬреЗрд╕ рдЧрдорд╛рд╡реВрди рд▓реАрдбрд░рд╢рд┐рдк рд░реЛрд▓ рдмреНрд░реЛрдХрд░ 15286 рдХрдбреЗ рдЬрд╛рддреЛ! рдирд┐рд░реНрдорд╛рддреНрдпрд╛рд╕ рдХрдиреЗрдХреНрд╢рди рддреНрд░реБрдЯреА рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреЛ. ISR рдмрд╛рд╣реЗрд░реАрд▓ рдиреЗрддреНрдпрд╛рдЪреЗ рд╕рдВрдХреНрд░рдордг рдХреЗрд╡рд│ рд╕реЗрдЯрд┐рдВрдЧрдореБрд│реЗрдЪ рд╢рдХреНрдп рдЭрд╛рд▓реЗ unclean.leader.election.enable=true. рдордзреНрдпреЗ рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗ рдЕрд╕рд▓реНрдпрд╛рд╕ рдЦреЛрдЯреЗ, рдирдВрддрд░ рд╕рдВрдХреНрд░рдордг рд╣реЛрдгрд╛рд░ рдирд╛рд╣реА рдЖрдгрд┐ рд╕рд░реНрд╡ рд╡рд╛рдЪрди рдЖрдгрд┐ рд▓реЗрдЦрди рд╡рд┐рдирдВрддреНрдпрд╛ рдирд╛рдХрд╛рд░рд▓реНрдпрд╛ рдЬрд╛рддреАрд▓. рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд, рдЖрдореНрд╣реА рдмреНрд░реЛрдХрд░ 1 рдЪреНрдпрд╛ рдкреНрд░рддрд┐рдХреГрддреАрдордзреНрдпреЗ рддреНрдпрд╛рдЪреНрдпрд╛ рдЕрдЦрдВрдб рдбреЗрдЯрд╛рд╕рд╣ рдкрд░рдд рдпреЗрдгреНрдпрд╛рдЪреА рд╡рд╛рдЯ рдкрд╛рд╣рддреЛ, рдЬреЛ рдкреБрдиреНрд╣рд╛ рдиреЗрддреГрддреНрд╡ рдШреЗрдИрд▓.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 11. рдмреНрд░реЛрдХрд░ 1 рдкрдбрддреЛ. рдЬреЗрд╡реНрд╣рд╛ рдЕрдкрдпрд╢ рдпреЗрддреЗ рддреЗрд╡реНрд╣рд╛ рдореЛрдареНрдпрд╛ рд╕рдВрдЦреНрдпреЗрдиреЗ рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡рд▓реЗ рдЬрд╛рддрд╛рдд

рдирд┐рд░реНрдорд╛рддрд╛ рд╢реЗрд╡рдЯрдЪреНрдпрд╛ рдмреНрд░реЛрдХрд░рд╢реА рд╕рдВрдмрдВрдз рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЛ рдЖрдгрд┐ рдкрд╛рд╣рддреЛ рдХреА рддреЛ рдЖрддрд╛ рд╡рд┐рднрд╛рдЧрд╛рдЪрд╛ рдиреЗрддрд╛ рдЖрд╣реЗ. рддреЛ рдмреНрд░реЛрдХрд░ 3 рд▓рд╛ рдореЗрд╕реЗрдЬ рдкрд╛рдард╡реВ рд▓рд╛рдЧрддреЛ.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 12. рдереЛрдбреНрдпрд╛ рд╡рд┐рд╢реНрд░рд╛рдВрддреАрдирдВрддрд░, рд╡рд┐рднрд╛рдЧ 0 рд╡рд░ рд╕рдВрджреЗрд╢ рдкреБрдиреНрд╣рд╛ рдкрд╛рдард╡рд▓реЗ рдЬрд╛рддрд╛рдд

рдЖрдореНрд╣реА рдкрд╛рд╣рд┐рд▓реЗ рдХреА, рдирд╡реАрди рдХрдиреЗрдХреНрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рдирд╡реАрди рдиреЗрддрд╛ рд╢реЛрдзрдгреНрдпрд╛рд╕рд╛рдареА рд▓рд╣рд╛рди рд╡реНрдпрддреНрдпрдп рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, рдирд┐рд░реНрдорд╛рддрд╛ рд╕рддрдд рд╕рдВрджреЗрд╢ рдкрд╛рдард╡рдд рд╣реЛрддрд╛. рд╣реЗ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╕рд╛рддрддреНрдп (рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛) рдЪреНрдпрд╛ рдЦрд░реНрдЪрд╛рд╡рд░ рдЙрдкрд▓рдмреНрдзрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреЗ. рдХрд╛рдлреНрдХрд╛рдиреЗ рд╣рдЬрд╛рд░реЛ рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡рд▓реЗ рдкрдг рдирд╡реАрди рд▓реЗрдЦрди рд╕реНрд╡реАрдХрд╛рд░рдгреЗ рд╕реБрд░реВрдЪ рдареЗрд╡рд▓реЗ.

Acks = рд╕рд░реНрд╡ рдЖрдгрд┐ ISR

рдЪрд▓рд╛ рдпрд╛ рдкрд░рд┐рд╕реНрдерд┐рддреАрдЪреА рдкреБрдирд░рд╛рд╡реГрддреНрддреА рдХрд░реВрдпрд╛, рдкрд░рдВрддреБ рд╕рд╣ acks = рд╕рд░реНрд╡. рдмреНрд░реЛрдХрд░ 3 рдЪреА рд╕рд░рд╛рд╕рд░реА рд╡рд┐рд▓рдВрдмрддрд╛ рдЪрд╛рд░ рд╕реЗрдХрдВрдж рдЖрд╣реЗ. рдирд┐рд░реНрдорд╛рддрд╛ рдпрд╛рд╕рд╣ рдПрдХ рд╕рдВрджреЗрд╢ рдкрд╛рдард╡рддреЛ acks = рд╕рд░реНрд╡, рдЖрдгрд┐ рдЖрддрд╛ рджреНрд░реБрдд рдкреНрд░рддрд┐рд╕рд╛рдж рдорд┐рд│рдд рдирд╛рд╣реА. ISR рдордзреАрд▓ рд╕рд░реНрд╡ рдкреНрд░рддрд┐рдХреГрддреАрдВрджреНрд╡рд╛рд░реЗ рд╕рдВрджреЗрд╢ рдЬрддрди рд╣реЛрдгреНрдпрд╛рдЪреА рдиреЗрддрд╛ рд╡рд╛рдЯ рдкрд╛рд╣рддреЛ.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 13. рддреАрди рдкреНрд░рддрд┐рдХреГрддреА рдЕрд╕рд▓реЗрд▓реЗ ISR. рдПрдХ рдордВрдж рдЖрд╣реЗ, рдкрд░рд┐рдгрд╛рдореА рд░реЗрдХреЙрд░реНрдбрд┐рдВрдЧ рд╡рд┐рд▓рдВрдм рд╣реЛрддреЛ

рдЪрд╛рд░ рд╕реЗрдХрдВрджрд╛рдВрдЪреНрдпрд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рд▓рдВрдмрд╛рдирдВрддрд░, рдмреНрд░реЛрдХрд░ 2 рдПрдХ ack рдкрд╛рдард╡рддреЛ. рд╕рд░реНрд╡ рдкреНрд░рддрд┐рдХреГрддреА рдЖрддрд╛ рдкреВрд░реНрдгрдкрдгреЗ рдЕрджреНрдпрддрдирд┐рдд рдХреЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 14. рд╕рд░реНрд╡ рдкреНрд░рддрд┐рдХреГрддреА рд╕рдВрджреЗрд╢ рдЬрддрди рдХрд░рддрд╛рдд рдЖрдгрд┐ ack рдкрд╛рдард╡рддрд╛рдд

рдмреНрд░реЛрдХрд░ 3 рдЖрддрд╛ рдЖрдгрдЦреА рдорд╛рдЧреЗ рдкрдбрд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ ISR рдордзреВрди рдХрд╛рдвреВрди рдЯрд╛рдХрд▓рд╛ рдЖрд╣реЗ. ISR рдордзреНрдпреЗ рдХреЛрдгрддреАрд╣реА рдзреАрдореА рдкреНрд░рддрд┐рдХреГрддреА рд╢рд┐рд▓реНрд▓рдХ рдирд╕рд▓реНрдпрд╛рдореБрд│реЗ рд╡рд┐рд▓рдВрдм рд▓рдХреНрд╖рдгреАрдпрд░реАрддреНрдпрд╛ рдХрдореА рдЭрд╛рд▓рд╛ рдЖрд╣реЗ. рдмреНрд░реЛрдХрд░ 2 рдЖрддрд╛ рдлрдХреНрдд рдмреНрд░реЛрдХрд░ 1 рдЪреА рд╡рд╛рдЯ рдкрд╛рд╣рдд рдЖрд╣реЗ рдЖрдгрд┐ рддреНрдпрд╛рд▓рд╛ рд╕рд░рд╛рд╕рд░реА 500 ms рдЕрдВрддрд░ рдЖрд╣реЗ.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 15. рдмреНрд░реЛрдХрд░ 3 рд╡рд░реАрд▓ рдкреНрд░рддрд┐рдХреГрддреА ISR рдордзреВрди рдХрд╛рдврд▓реА рдЖрд╣реЗ

рдордЧ рдмреНрд░реЛрдХрд░ 2 рдлреЙрд▓реНрд╕ рдЖрдгрд┐ рд▓реАрдбрд░рд╢рд┐рдк рдмреНрд░реЛрдХрд░ 1 рд▓рд╛ рд╕рдВрджреЗрд╢ рди рдЧрдорд╛рд╡рддрд╛ рдкрд╛рд╕ рдХрд░рддреЗ.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 16. рдмреНрд░реЛрдХрд░ 2 рдкрдбрддреЛ

рдирд┐рд░реНрдорд╛рддрд╛ рдПрдХ рдирд╡реАрди рдиреЗрддрд╛ рд╢реЛрдзрддреЛ рдЖрдгрд┐ рддреНрдпрд╛рд▓рд╛ рд╕рдВрджреЗрд╢ рдкрд╛рдард╡реВ рд▓рд╛рдЧрддреЛ. рд╡рд┐рд▓рдВрдм рдЖрдгрдЦреА рдХрдореА рдЭрд╛рд▓рд╛ рдЖрд╣реЗ рдХрд╛рд░рдг ISR рдордзреНрдпреЗ рдЖрддрд╛ рдПрдХ рдкреНрд░рддрд┐рдХреГрддреА рдЖрд╣реЗ! рддреНрдпрд╛рдореБрд│реЗ рдкрд░реНрдпрд╛рдп acks = рд╕рд░реНрд╡ рд░рд┐рдбрдВрдбрдВрд╕реА рдЬреЛрдбрдд рдирд╛рд╣реА.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 17. рдмреНрд░реЛрдХрд░ 1 рд╡рд░реАрд▓ рдкреНрд░рддрд┐рдХреГрддреА рд╕рдВрджреЗрд╢ рди рдЧрдорд╛рд╡рддрд╛ рдкреБрдврд╛рдХрд╛рд░ рдШреЗрддреЗ

рдордЧ рдмреНрд░реЛрдХрд░ 1 рдХреНрд░реЕрд╢ рд╣реЛрддреЛ рдЖрдгрд┐ рд▓реАрдб рдмреНрд░реЛрдХрд░ 3 рдХрдбреЗ рдЬрд╛рддреЗ рдЖрдгрд┐ 14238 рдореЗрд╕реЗрдЬрдЪреЗ рдиреБрдХрд╕рд╛рди рд╣реЛрддреЗ!

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 18. рдмреНрд░реЛрдХрд░ 1 рдорд░рдг рдкрд╛рд╡рд▓рд╛ рдЖрдгрд┐ рдЕрд╢реБрджреНрдз рд╕реЗрдЯрд┐рдВрдЧрд╕рд╣ рдиреЗрддреГрддреНрд╡ рд╕рдВрдХреНрд░рдордгрд╛рдЪрд╛ рдкрд░рд┐рдгрд╛рдо рдореЛрдареНрдпрд╛ рдкреНрд░рдорд╛рдгрд╛рд╡рд░ рдбреЗрдЯрд╛ рдЧрдорд╛рд╡рд▓рд╛

рдЖрдореНрд╣реА рдкрд░реНрдпрд╛рдп рд╕реНрдерд╛рдкрд┐рдд рдХрд░реВ рд╢рдХрд▓реЛ рдирд╛рд╣реА unclean.leader.election.enable рдЕрд░реНрде рдордзреНрдпреЗ рдЦрд░реЗ. рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рддреЗ рд╕рдорд╛рди рдЖрд╣реЗ рдЦреЛрдЯреЗ. рд╕реЗрдЯрд┐рдВрдЧреНрдЬ acks = рд╕рд░реНрд╡ ╤Б unclean.leader.election.enable=true рдХрд╛рд╣реА рдЕрддрд┐рд░рд┐рдХреНрдд рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рддрддреЗрд╕рд╣ рдкреНрд░рд╡реЗрд╢рдпреЛрдЧреНрдпрддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЗ. рдкрд░рдВрддреБ рдЖрдкрдг рдкрд╛рд╣реВ рд╢рдХрддрд╛ рдХреА, рдЖрдореНрд╣реА рдЕрджреНрдпрд╛рдк рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡реВ рд╢рдХрддреЛ.

рдкрдг рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛ рд╡рд╛рдврд╡рд╛рдпрдЪреА рдЕрд╕реЗрд▓ рддрд░? рддреБрдореНрд╣реА рд▓рд╛рд╡реВ рд╢рдХрддрд╛ unclean.leader.election.enable = рдЦреЛрдЯреЗ, рдкрд░рдВрддреБ рд╣реЗ рдбреЗрдЯрд╛ рдЧрдорд╛рд╡рдгреНрдпрд╛рдкрд╛рд╕реВрди рдЖрдордЪреЗ рд╕рдВрд░рдХреНрд╖рдг рдХрд░реЗрд▓ рдЕрд╕реЗ рдирд╛рд╣реА. рдЬрд░ рдиреЗрддрд╛ рдХрдареЛрд░ рдЭрд╛рд▓рд╛ рдЖрдгрд┐ рддреНрдпрд╛рдЪреНрдпрд╛рд╕реЛрдмрдд рдбреЗрдЯрд╛ рдШреЗрддрд▓рд╛, рддрд░ рд╕рдВрджреЗрд╢ рдЕрджреНрдпрд╛рдк рдЧрдорд╛рд╡рд▓реЗ рдЖрд╣реЗрдд, рддрд╕реЗрдЪ рдкреНрд░рд╢рд╛рд╕рдХрд╛рдиреЗ рдкрд░рд┐рд╕реНрдерд┐рддреА рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░реЗрдкрд░реНрдпрдВрдд рдЙрдкрд▓рдмреНрдзрддрд╛ рдЧрдорд╛рд╡рд▓реА рдЖрд╣реЗ.

рд╕рд░реНрд╡ рд╕рдВрджреЗрд╢ рдирд┐рд░рд░реНрдердХ рдЖрд╣реЗрдд рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░рдгреЗ рдЪрд╛рдВрдЧрд▓реЗ рдЖрд╣реЗ рдЖрдгрд┐ рдЕрдиреНрдпрдерд╛ рд░реЗрдХреЙрд░реНрдбрд┐рдВрдЧ рдЯрд╛рдХреВрди рджреНрдпрд╛. рдордЧ, рдХрд┐рдорд╛рди рдмреНрд░реЛрдХрд░рдЪреНрдпрд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдирд╛рддреВрди, рдбреЗрдЯрд╛ рдЧрдорд╛рд╡рдгреЗ рдХреЗрд╡рд│ рджреЛрди рдХрд┐рдВрд╡рд╛ рдЕрдзрд┐рдХ рдПрдХрд╛рдЪрд╡реЗрд│реА рдЕрдкрдпрд╢реА рдЭрд╛рд▓реНрдпрд╛рд╕рдЪ рд╢рдХреНрдп рдЖрд╣реЗ.

Acks=all, min.insync.replicas рдЖрдгрд┐ ISR

рд╡рд┐рд╖рдп рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд╕рд╣ min.insync.replicas рдЖрдореНрд╣реА рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рддрддреЗрдЪреА рдкрд╛рддрд│реА рд╡рд╛рдврд╡рдд рдЖрд╣реЛрдд. рдЪрд▓рд╛ рдорд╛рдЧреАрд▓ рдкрд░рд┐рд╕реНрдерд┐рддреАрдЪрд╛ рд╢реЗрд╡рдЯрдЪрд╛ рднрд╛рдЧ рдкреБрдиреНрд╣рд╛ рдкрд╛рд╣реВ рдпрд╛, рдкрд░рдВрддреБ рдпрд╛рд╡реЗрд│реА min.insync.replicas=2.

рддреНрдпрд╛рдореБрд│реЗ рдмреНрд░реЛрдХрд░ 2 рдордзреНрдпреЗ рдПрдХ рдкреНрд░рддрд┐рдХреГрддреА рд▓реАрдбрд░ рдЖрд╣реЗ рдЖрдгрд┐ рдмреНрд░реЛрдХрд░ 3 рд╡рд░реАрд▓ рдЕрдиреБрдпрд╛рдпреА ISR рдордзреВрди рдХрд╛рдвреВрди рдЯрд╛рдХрд▓реЗ рдЖрд╣реЗрдд.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 19. рджреЛрди рдкреНрд░рддрд┐рдХреГрддреАрдВрдордзреВрди ISR

рдмреНрд░реЛрдХрд░ 2 рдлреЙрд▓реНрд╕ рдЖрдгрд┐ рд▓реАрдбрд░рд╢рд┐рдк рдмреНрд░реЛрдХрд░ 1 рд▓рд╛ рд╕рдВрджреЗрд╢ рди рдЧрдорд╛рд╡рддрд╛ рдкрд╛рд╕ рдХрд░рддреЗ. рдкрдг рдЖрддрд╛ ISR рдордзреНрдпреЗ рдлрдХреНрдд рдПрдХрдЪ рдкреНрд░рддрд┐рдХреГрддреА рдЖрд╣реЗ. рд╣реЗ рд░реЗрдХреЙрд░реНрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХрд┐рдорд╛рди рд╕рдВрдЦреНрдпреЗрдЪреА рдкреВрд░реНрддрддрд╛ рдХрд░рдд рдирд╛рд╣реА рдЖрдгрд┐ рдореНрд╣рдгреВрди рджрд▓рд╛рд▓ рддреНрд░реБрдЯреАрд╕рд╣ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рдЪреНрдпрд╛ рдкреНрд░рдпрддреНрдирд╛рд╕ рдкреНрд░рддрд┐рд╕рд╛рдж рджреЗрддреЛ NotEnoughReplicas.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 20. ISR рдЪреА рд╕рдВрдЦреНрдпрд╛ min.insync.replicas рдордзреНрдпреЗ рдирдореВрдж рдХреЗрд▓реЗрд▓реНрдпрд╛рдкреЗрдХреНрд╖рд╛ рдПрдХ рдХрдореА рдЖрд╣реЗ

рд╣реЗ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╕реБрд╕рдВрдЧрддрддреЗрд╕рд╛рдареА рдЙрдкрд▓рдмреНрдзрддреЗрдЪрд╛ рддреНрдпрд╛рдЧ рдХрд░рддреЗ. рд╕рдВрджреЗрд╢ рд╕реНрд╡реАрдХрд╛рд░рдгреНрдпрд╛рдкреВрд░реНрд╡реА, рдЖрдореНрд╣реА рдЦрд╛рддреНрд░реА рдХрд░рддреЛ рдХреА рддреЛ рдХрд┐рдорд╛рди рджреЛрди рдкреНрд░рддрд┐рдХреГрддреАрдВрд╡рд░ рд▓рд┐рд╣рд┐рд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ. рд╣реЗ рдирд┐рд░реНрдорд╛рддреНрдпрд╛рд▓рд╛ рдЕрдзрд┐рдХ рдЖрддреНрдорд╡рд┐рд╢реНрд╡рд╛рд╕ рджреЗрддреЗ. рдпреЗрдереЗ, рд╕рдВрджреЗрд╢рд╛рдЪреЗ рдиреБрдХрд╕рд╛рди рдХреЗрд╡рд│ рддреЗрд╡реНрд╣рд╛рдЪ рд╢рдХреНрдп рдЖрд╣реЗ рдЬреЗрд╡реНрд╣рд╛ рд╕рдВрджреЗрд╢рд╛рдЪреА рдкреНрд░рддрд┐рдХреГрддреА рдЕрддрд┐рд░рд┐рдХреНрдд рдЕрдиреБрдпрд╛рдпреАрдХрдбреЗ рдпреЗрдИрдкрд░реНрдпрдВрдд рдереЛрдбреНрдпрд╛ рдЕрдВрддрд░рд╛рдиреЗ рджреЛрди рдкреНрд░рддрд┐рдХреГрддреА рдПрдХрд╛рдЪ рд╡реЗрд│реА рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реНрдпрд╛, рдЬреНрдпрд╛рдЪреА рд╢рдХреНрдпрддрд╛ рдирд╛рд╣реА. рдкрд░рдВрддреБ рдЬрд░ рддреБрдореНрд╣реА рд╕реБрдкрд░ рдкреЕрд░рд╛рдиреЙрдЗрдб рдЕрд╕рд╛рд▓, рддрд░ рддреБрдореНрд╣реА рдкреНрд░рддрд┐рдХреГрддреА рдШрдЯрдХ 5 рд╡рд░ рд╕реЗрдЯ рдХрд░реВ рд╢рдХрддрд╛, рдЖрдгрд┐ min.insync.replicas рджреНрд╡рд╛рд░реЗ 3. рдпреЗрдереЗ рд░реЗрдХреЙрд░реНрдб рдЧрдорд╛рд╡рдгреНрдпрд╛рд╕рд╛рдареА рдПрдХрд╛рдЪ рд╡реЗрд│реА рддреАрди рджрд▓рд╛рд▓ рдкрдбрд▓реЗ рдкрд╛рд╣рд┐рдЬреЗрдд! рдЕрд░реНрдерд╛рдд, рддреБрдореНрд╣реА рдпрд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рд░реНрд╣рддреЗрд╕рд╛рдареА рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рд▓рдВрдмрд╛рдиреЗ рдкреИрд╕реЗ рджреНрдпрд╛рд▓.

рдЬреЗрд╡реНрд╣рд╛ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рддрддреЗрд╕рд╛рдареА рдкреНрд░рд╡реЗрд╢рдпреЛрдЧреНрдпрддрд╛ рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рддреЗ

рдореНрд╣рдгреВрди RabbitMQ рд╕рд╣ рдХреЗрд╕, рдХрдзреАрдХрдзреА рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рддрддреЗрд╕рд╛рдареА рдкреНрд░рд╡реЗрд╢рдпреЛрдЧреНрдпрддрд╛ рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рддреЗ. рддреБрдореНрд╣рд╛рд▓рд╛ рдХрд╛рдп рд╡рд┐рдЪрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ рддреЗ рдпреЗрдереЗ рдЖрд╣реЗ:

  • рдкреНрд░рдХрд╛рд╢рдХ рдлрдХреНрдд рдПрд░рд░ рдкрд░рдд рдХрд░реВ рд╢рдХрддреЛ рдЖрдгрд┐ рдЕрдкрд╕реНрдЯреНрд░реАрдо рд╕реЗрд╡рд╛ рдХрд┐рдВрд╡рд╛ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдиреЗ рдирдВрддрд░ рдкреБрдиреНрд╣рд╛ рдкреНрд░рдпрддреНрди рдХрд░реВ рд╢рдХрддреЛ рдХрд╛?
  • рдирдВрддрд░ рдкреБрдиреНрд╣рд╛ рдкреНрд░рдпрддреНрди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкреНрд░рдХрд╛рд╢рдХ рд╕рдВрджреЗрд╢ рд╕реНрдерд╛рдирд┐рдХрд░рд┐рддреНрдпрд╛ рдХрд┐рдВрд╡рд╛ рдбреЗрдЯрд╛рдмреЗрд╕рдордзреНрдпреЗ рд╕реЗрд╡реНрд╣ рдХрд░реВ рд╢рдХрддреЛ рдХрд╛?

рдЙрддреНрддрд░ рдирд╛рд╣реА рдЕрд╕рд▓реНрдпрд╛рд╕, рдЙрдкрд▓рдмреНрдзрддрд╛ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЭ рдХреЗрд▓реНрдпрд╛рдиреЗ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛ рд╕реБрдзрд╛рд░рддреЗ. рддреБрдореНрд╣реА рд░реЗрдХреЙрд░реНрдбрд┐рдВрдЧ рди рдХрд░рдгреНрдпрд╛рдРрд╡рдЬреА рдЙрдкрд▓рдмреНрдзрддрд╛ рдирд┐рд╡рдбрд▓реНрдпрд╛рд╕ рддреБрдореНрд╣реА рдХрдореА рдбреЗрдЯрд╛ рдЧрдорд╛рд╡рд╛рд▓. рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░реЗ, рд╣реЗ рд╕рд░реНрд╡ рд╢рд┐рд▓реНрд▓рдХ рд╢реЛрдзрдгреНрдпрд╛рд╕рд╛рдареА рдЦрд╛рд▓реА рдпреЗрддреЗ рдЖрдгрд┐ рдирд┐рд░реНрдгрдп рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░рд┐рд╕реНрдерд┐рддреАрд╡рд░ рдЕрд╡рд▓рдВрдмреВрди рдЕрд╕рддреЛ.

ISR рдЪрд╛ рдЕрд░реНрде

ISR рд╕рдВрдЪ рддреБрдореНрд╣рд╛рд▓рд╛ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛ рдЖрдгрд┐ рд▓реЗрдЯрдиреНрд╕реА рджрд░рдореНрдпрд╛рди рдЗрд╖реНрдЯрддрдо рд╢рд┐рд▓реНрд▓рдХ рдирд┐рд╡рдбрдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЛ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдмрд╣реБрд╕рдВрдЦреНрдп рдкреНрд░рддрд┐рдХреГрддреА рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реНрдпрд╛рд╕ рдЙрдкрд▓рдмреНрдзрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рд╛, рд╡рд┐рд▓рдВрдмрддреЗрдЪреНрдпрд╛ рдмрд╛рдмрддреАрдд рдореГрдд рдХрд┐рдВрд╡рд╛ рдордВрдж рдкреНрд░рддрд┐рдХреГрддреАрдВрдЪрд╛ рдкреНрд░рднрд╛рд╡ рдХрдореА рдХрд░рд╛.

рдЕрд░реНрде рдЖрдкрдг рд╕реНрд╡рддрдГ рдирд┐рд╡рдбрддреЛ replica.lag.time.max.ms рддреБрдордЪреНрдпрд╛ рдЧрд░рдЬреЗрдиреБрд╕рд╛рд░. рдореВрд▓рдд:, рдпрд╛ рдкреЕрд░рд╛рдореАрдЯрд░рдЪрд╛ рдЕрд░реНрде рдЕрд╕рд╛ рдЖрд╣реЗ рдХреА рдЖрдореНрд╣реА рдХрд┐рддреА рд╡рд┐рд▓рдВрдм рд╕реНрд╡реАрдХрд╛рд░рдгреНрдпрд╛рд╕ рддрдпрд╛рд░ рдЖрд╣реЛрдд acks = рд╕рд░реНрд╡. рдбреАрдлреЙрд▓реНрдЯ рдореВрд▓реНрдп рджрд╣рд╛ рд╕реЗрдХрдВрдж рдЖрд╣реЗ. рдЬрд░ рд╣реЗ рддреБрдордЪреНрдпрд╛рд╕рд╛рдареА рдЦреВрдк рд▓рд╛рдВрдм рдЕрд╕реЗрд▓ рддрд░ рддреБрдореНрд╣реА рддреЗ рдХрдореА рдХрд░реВ рд╢рдХрддрд╛. рдирдВрддрд░ ISR рдордзреАрд▓ рдмрджрд▓рд╛рдВрдЪреА рд╡рд╛рд░рдВрд╡рд╛рд░рддрд╛ рд╡рд╛рдвреЗрд▓, рдХрд╛рд░рдг рдЕрдиреБрдпрд╛рдпреА рдХрд╛рдврд▓реЗ рдЬрд╛рддреАрд▓ рдЖрдгрд┐ рдЕрдзрд┐рдХ рд╡реЗрд│рд╛ рдЬреЛрдбрд▓реЗ рдЬрд╛рддреАрд▓.

RabbitMQ рд╣рд╛ рдлрдХреНрдд рдЖрд░рд╢рд╛рдВрдЪрд╛ рдПрдХ рд╕рдВрдЪ рдЖрд╣реЗ рдЬреНрдпрд╛рдЪреА рдкреНрд░рддрд┐рдХреГрддреА рддрдпрд╛рд░ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рд╕реНрд▓реЛ рдорд┐рд░рд░ рдЕрддрд┐рд░рд┐рдХреНрдд рд▓реЗрдЯрдиреНрд╕реАрдЪрд╛ рдкрд░рд┐рдЪрдп рджреЗрддрд╛рдд рдЖрдгрд┐ рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб (рдиреЗрдЯ рдЯрд┐рдХ) рдЪреА рдЙрдкрд▓рдмреНрдзрддрд╛ рддрдкрд╛рд╕рдгрд╛рд░реЗ рдкреЕрдХреЗрдЯ рдкреНрд░рддрд┐рд╕рд╛рдж рджреЗрдИрдкрд░реНрдпрдВрдд рдореГрдд рдорд┐рд░рд░ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реВ рд╢рдХрддрд╛рдд. рдпрд╛ рд╡рд┐рд▓рдВрдм рд╕рдорд╕реНрдпрд╛ рдЯрд╛рд│рдгреНрдпрд╛рдЪрд╛ ISR рд╣рд╛ рдПрдХ рдордиреЛрд░рдВрдЬрдХ рдорд╛рд░реНрдЧ рдЖрд╣реЗ. рдкрд░рдВрддреБ рдЖрдореНрд╣реА рд░рд┐рдбрдВрдбрдВрд╕реА рдЧрдорд╛рд╡рдгреНрдпрд╛рдЪрд╛ рдзреЛрдХрд╛ рдкрддреНрдХрд░рддреЛ рдХрд╛рд░рдг ISR рдлрдХреНрдд рдиреЗрддреНрдпрд╛рдХрдбреЗ рд╕рдВрдХреБрдЪрд┐рдд рд╣реЛрдК рд╢рдХрддреЛ. рд╣рд╛ рдзреЛрдХрд╛ рдЯрд╛рд│рдгреНрдпрд╛рд╕рд╛рдареА, рд╕реЗрдЯрд┐рдВрдЧ рд╡рд╛рдкрд░рд╛ min.insync.replicas.

рдХреНрд▓рд╛рдпрдВрдЯ рдХрдиреЗрдХреНрд╢рди рд╣рдореА

рд╕реЗрдЯрд┐рдВрдЧреНрдЬрдордзреНрдпреЗ bootstrap.servers рдЙрддреНрдкрд╛рджрдХ рдЖрдгрд┐ рдЧреНрд░рд╛рд╣рдХ рдЧреНрд░рд╛рд╣рдХрд╛рдВрдирд╛ рдЬреЛрдбрдгреНрдпрд╛рд╕рд╛рдареА рдПрдХрд╛рдзрд┐рдХ рдмреНрд░реЛрдХрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реВ рд╢рдХрддрд╛рдд. рдХрд▓реНрдкрдирд╛ рдЕрд╢реА рдЖрд╣реЗ рдХреА рдЬреЗрд╡реНрд╣рд╛ рдПрдХ рдиреЛрдб рдЦрд╛рд▓реА рдЬрд╛рддреЛ рддреЗрд╡реНрд╣рд╛ рддреЗрдереЗ рдЕрдиреЗрдХ рд╕реБрдЯреЗ рд╢рд┐рд▓реНрд▓рдХ рд░рд╛рд╣рддрд╛рдд рдЬреНрдпрд╛рд╕рд╣ рдХреНрд▓рд╛рдпрдВрдЯ рдХрдиреЗрдХреНрд╢рди рдЙрдШрдбреВ рд╢рдХрддреЛ. рд╣реЗ рдЕрдкрд░рд┐рд╣рд╛рд░реНрдпрдкрдгреЗ рд╡рд┐рднрд╛рдЧ рдиреЗрддреЗ рдирд╛рд╣реАрдд, рдкрд░рдВрддреБ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд▓реЛрдбрд┐рдВрдЧрд╕рд╛рдареА рдлрдХреНрдд рд╕реНрдкреНрд░рд┐рдВрдЧрдмреЛрд░реНрдб рдЖрд╣реЗрдд. рдХреНрд▓рд╛рдпрдВрдЯ рддреНрдпрд╛рдВрдирд╛ рд╡рд┐рдЪрд╛рд░реВ рд╢рдХрддреЛ рдХреА рдХреЛрдгрддрд╛ рдиреЛрдб рд░рд┐рдб/рд░рд╛рдИрдЯ рд╡рд┐рднрд╛рдЬрди рд▓реАрдбрд░ рд╣реЛрд╕реНрдЯ рдХрд░рддреЛ.

RabbitMQ рдордзреНрдпреЗ, рдХреНрд▓рд╛рдпрдВрдЯ рдХреЛрдгрддреНрдпрд╛рд╣реА рдиреЛрдбрд╢реА рдХрдиреЗрдХреНрдЯ рд╣реЛрдК рд╢рдХрддрд╛рдд рдЖрдгрд┐ рдЕрдВрддрд░реНрдЧрдд рд░рд╛рдЙрдЯрд┐рдВрдЧ рд╡рд┐рдирдВрддреА рдкрд╛рдард╡рддреЗ рдЬрд┐рдереЗ рддреНрдпрд╛рд▓рд╛ рдЬрд╛рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ. рдпрд╛рдЪрд╛ рдЕрд░реНрде рдЕрд╕рд╛ рдХреА рддреБрдореНрд╣реА RabbitMQ рд╕рдореЛрд░ рд▓реЛрдб рдмреЕрд▓рдиреНрд╕рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реВ рд╢рдХрддрд╛. рдХрд╛рдлреНрдХрд╛рд▓рд╛ рдХреНрд▓рд╛рдпрдВрдЯрд▓рд╛ рдиреЛрдбрд╢реА рдЬреЛрдбрдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ рдЬреЗ рд╕рдВрдмрдВрдзрд┐рдд рд╡рд┐рднрд╛рдЬрди рд▓реАрдбрд░ рд╣реЛрд╕реНрдЯ рдХрд░рддреЗ. рдЕрд╢рд╛ рдкрд░рд┐рд╕реНрдерд┐рддреАрдд, рдЖрдкрдг рд▓реЛрдб рдмреЕрд▓рдиреНрд╕рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реВ рд╢рдХрдд рдирд╛рд╣реА. рдпрд╛рджреА bootstrap.servers рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░ рдХреНрд▓рд╛рдпрдВрдЯ рдпреЛрдЧреНрдп рдиреЛрдбреНрд╕рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░реВ рд╢рдХрддрд╛рдд рдЖрдгрд┐ рд╢реЛрдзреВ рд╢рдХрддрд╛рдд рд╣реЗ рдЧрдВрднреАрд░ рдЖрд╣реЗ.

рдХрд╛рдлреНрдХрд╛ рдХреЙрдиреНрд╕реЗрдиреНрд╕рд╕ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░

рдЖрддреНрддрд╛рдкрд░реНрдпрдВрдд, рджрд▓рд╛рд▓рд╛рдЪреНрдпрд╛ рдкрддрдирд╛рдмрджреНрджрд▓ рдХреНрд▓рд╕реНрдЯрд░рд▓рд╛ рдХрд╕реЗ рдХрд│рддреЗ рдЖрдгрд┐ рдирд╡реАрди рдиреЗрддрд╛ рдХрд╕рд╛ рдирд┐рд╡рдбрд▓рд╛ рдЬрд╛рддреЛ рдпрд╛рдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХреЗрд▓рд╛ рдирд╛рд╣реА. рдХрд╛рдлреНрдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рд╡рд┐рднрд╛рдЬрдирд╛рдВрд╕рд╣ рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реЗ рд╕рдордЬреВрди рдШреЗрдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣рд╛рд▓рд╛ рдкреНрд░рдердо рдПрдХрдордд рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рд╕рдордЬреВрди рдШреЗрдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

рдкреНрд░рддреНрдпреЗрдХ рдХрд╛рдлреНрдХрд╛ рдХреНрд▓рд╕реНрдЯрд░ рдЭреВрдХреАрдкрд░ рдХреНрд▓рд╕реНрдЯрд░рд╕рд╣ рддреИрдирд╛рдд рдХреЗрд▓реЗ рдЬрд╛рддреЗ, рдЬреА рдПрдХ рд╡рд┐рддрд░рд┐рдд рдПрдХрдордд рд╕реЗрд╡рд╛ рдЖрд╣реЗ рдЬреА рд╕рд┐рд╕реНрдЯрдорд▓рд╛ рдХрд╛рд╣реА рджрд┐рд▓реЗрд▓реНрдпрд╛ рд╕реНрдерд┐рддреАрд╡рд░ рдПрдХрдордд рдкреНрд░рд╛рдкреНрдд рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ, рдЙрдкрд▓рдмреНрдзрддреЗрдкреЗрдХреНрд╖рд╛ рд╕реБрд╕рдВрдЧрддрддреЗрд▓рд╛ рдкреНрд░рд╛рдзрд╛рдиреНрдп рджреЗрддреЗ. рд╡рд╛рдЪрди рдЖрдгрд┐ рд▓реЗрдЦрди рдСрдкрд░реЗрд╢рдиреНрд╕ рдордВрдЬреВрд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдмрд╣реБрд╕рдВрдЦреНрдп рдЭреВрдХреАрдкрд░ рдиреЛрдбреНрд╕рдЪреА рд╕рдВрдорддреА рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

рдЭреВрдХреАрдкрд░ рдХреНрд▓рд╕реНрдЯрд░рдЪреА рд╕реНрдерд┐рддреА рд╕рд╛рдард╡рддреЛ:

  • рд╡рд┐рд╖рдпрд╛рдВрдЪреА рдпрд╛рджреА, рд╡рд┐рднрд╛рдЧ, рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди, рд╡рд░реНрддрдорд╛рди рд▓реАрдбрд░ рдкреНрд░рддрд┐рдХреГрддреА, рдкреНрд░рд╛рдзрд╛рдиреНрдпрдХреГрдд рдкреНрд░рддрд┐рдХреГрддреА.
  • рдХреНрд▓рд╕реНрдЯрд░ рд╕рджрд╕реНрдп. рдкреНрд░рддреНрдпреЗрдХ рдмреНрд░реЛрдХрд░ рдЭреВрдХреАрдкрд░ рдХреНрд▓рд╕реНрдЯрд░рд▓рд╛ рдкрд┐рдВрдЧ рдХрд░рддреЛ. рдард░рд╛рд╡рд┐рдХ рдХрд╛рд▓рд╛рд╡рдзреАрдд рдкрд┐рдВрдЧ рди рдорд┐рд│рд╛рд▓реНрдпрд╛рд╕, рдЭреБрдХреАрдкрд░ рдмреНрд░реЛрдХрд░рд▓рд╛ рдЕрдиреБрдкрд▓рдмреНрдз рдореНрд╣рдгреВрди рдиреЛрдВрджрд╡рддреЛ.
  • рдХрдВрдЯреНрд░реЛрд▓рд░рд╕рд╛рдареА рдореБрдЦреНрдп рдЖрдгрд┐ рд╕реБрдЯреЗ рдиреЛрдбреНрд╕ рдирд┐рд╡рдбрдгреЗ.

рдХрдВрдЯреНрд░реЛрд▓рд░ рдиреЛрдб рд╣рд╛ рдХрд╛рдлреНрдХрд╛ рджрд▓рд╛рд▓рд╛рдВрдкреИрдХреА рдПрдХ рдЖрд╣реЗ рдЬреЛ рдкреНрд░рддрд┐рдХреГрддреА рдиреЗрддреЗ рдирд┐рд╡рдбрдгреНрдпрд╛рд╕рд╛рдареА рдЬрдмрд╛рдмрджрд╛рд░ рдЖрд╣реЗ. рдЭреВрдХреАрдкрд░ рдХреНрд▓рд╕реНрдЯрд░ рд╕рджрд╕реНрдпрддреНрд╡ рдЖрдгрд┐ рд╡рд┐рд╖рдпрд╛рддреАрд▓ рдмрджрд▓рд╛рдВрдмрджреНрджрд▓ рдирд┐рдпрдВрддреНрд░рдХрд╛рд▓рд╛ рд╕реВрдЪрдирд╛ рдкрд╛рдард╡рддреЛ рдЖрдгрд┐ рдирд┐рдпрдВрддреНрд░рдХрд╛рдиреЗ рдпрд╛ рдмрджрд▓рд╛рдВрд╡рд░ рдХрд╛рд░реНрдп рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рджрд╣рд╛ рд╡рд┐рднрд╛рдЬрдиреЗ рдЖрдгрд┐ 3 рдЪреНрдпрд╛ рдкреНрд░рддрд┐рдХреГрддреА рдШрдЯрдХрд╛рдВрд╕рд╣ рдПрдХ рдирд╡реАрди рд╡рд┐рд╖рдп рдШреЗрдК. рдирд┐рдпрдВрддреНрд░рдХрд╛рдиреЗ рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рднрд╛рдЬрдирд╛рд╕рд╛рдареА рдиреЗрддрд╛ рдирд┐рд╡рдбрдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ, рдмреНрд░реЛрдХрд░реНрд╕рдордзреНрдпреЗ рдиреЗрддреНрдпрд╛рдВрдирд╛ рдЪрд╛рдВрдЧрд▓реНрдпрд╛ рдкреНрд░рдХрд╛рд░реЗ рд╡рд┐рддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░рдгреЗ.

рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рднрд╛рдЧ рдирд┐рдпрдВрддреНрд░рдХрд╛рд╕рд╛рдареА:

  • рдЭреВрдХреАрдкрд░рдордзреНрдпреЗ ISR рдЖрдгрд┐ рд▓реАрдбрд░рдмрджреНрджрд▓ рдорд╛рд╣рд┐рддреА рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ;
  • рдпрд╛ рд╡рд┐рднрд╛рдЬрдирд╛рдЪреА рдкреНрд░рддрд┐рдХреГрддреА рд╣реЛрд╕реНрдЯ рдХрд░рдгрд╛рд▒реНрдпрд╛ рдкреНрд░рддреНрдпреЗрдХ рдмреНрд░реЛрдХрд░рд▓рд╛ рд▓реАрдбрд░ рдЖрдгрд┐ ISRC рдХрдорд╛рдВрдб рдкрд╛рдард╡рддреЗ, рдмреНрд░реЛрдХрд░рдирд╛ ISR рдЖрдгрд┐ рд▓реАрдбрд░рдмрджреНрджрд▓ рдорд╛рд╣рд┐рддреА рджреЗрддреЗ.

рдЬреЗрд╡реНрд╣рд╛ рд▓реАрдбрд░рд╕рд╣ рдмреНрд░реЛрдХрд░ рдкрдбрддреЛ, рддреЗрд╡реНрд╣рд╛ Zookeeper рдХрдВрдЯреНрд░реЛрд▓рд░рд▓рд╛ рдПрдХ рд╕реВрдЪрдирд╛ рдкрд╛рдард╡рддреЛ рдЖрдгрд┐ рддреЛ рдирд╡реАрди рдиреЗрддрд╛ рдирд┐рд╡рдбрддреЛ. рдкреБрдиреНрд╣рд╛, рдирд┐рдпрдВрддреНрд░рдХ рдкреНрд░рдердо Zookeeper рдЕрджреНрдпрддрдирд┐рдд рдХрд░рддреЛ рдЖрдгрд┐ рдирдВрддрд░ рдкреНрд░рддреНрдпреЗрдХ рдмреНрд░реЛрдХрд░рд▓рд╛ рдиреЗрддреГрддреНрд╡ рдмрджрд▓рд╛рдЪреА рд╕реВрдЪрдирд╛ рджреЗрдгрд╛рд░рд╛ рдЖрджреЗрд╢ рдкрд╛рдард╡рддреЛ.

рдкреНрд░рддреНрдпреЗрдХ рдиреЗрддрд╛ ISRs рднрд░рддреАрд╕рд╛рдареА рдЬрдмрд╛рдмрджрд╛рд░ рдЖрд╣реЗ. рд╕реЗрдЯрд┐рдВрдЧреНрдЬ replica.lag.time.max.ms рддреЗрдереЗ рдХреЛрдг рдкреНрд░рд╡реЗрд╢ рдХрд░реЗрд▓ рд╣реЗ рдард░рд╡рддреЗ. рдЬреЗрд╡реНрд╣рд╛ ISR рдмрджрд▓рддреЛ, рддреЗрд╡реНрд╣рд╛ рдиреЗрддрд╛ рдирд╡реАрди рдорд╛рд╣рд┐рддреА рдЭреБрдХреАрдкрд░рд▓рд╛ рдкрд╛рдард╡рддреЛ.

рдЭреВрдХреАрдкрд░рд▓рд╛ рдиреЗрд╣рдореА рдХреЛрдгрддреНрдпрд╛рд╣реА рдмрджрд▓рд╛рдВрдЪреА рдорд╛рд╣рд┐рддреА рджрд┐рд▓реА рдЬрд╛рддреЗ рдЬреЗрдгреЗрдХрд░реБрди рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реНрдпрд╛рд╕, рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдирд╡реАрди рдиреЗрддреНрдпрд╛рдХрдбреЗ рд╕рд╣рдЬрддреЗрдиреЗ рдмрджрд▓рддреЗ.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 21. рдХрд╛рдлреНрдХрд╛ рдПрдХрдордд

рдкреНрд░рддрд┐рдХреГрддреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓

рдкреНрд░рддрд┐рдХреГрддреАрдЪреЗ рддрдкрд╢реАрд▓ рд╕рдордЬреВрди рдШреЗрдгреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рдВрднрд╛рд╡реНрдп рдбреЗрдЯрд╛ рдЧрдорд╛рд╡рдгреНрдпрд╛рдЪреНрдпрд╛ рдкрд░рд┐рд╕реНрдерд┐рддреА рдЪрд╛рдВрдЧрд▓реНрдпрд╛ рдкреНрд░рдХрд╛рд░реЗ рд╕рдордЬреВрди рдШреЗрдгреНрдпрд╛рд╕ рдорджрдд рдХрд░рддреЗ.

рд╕реЕрдореНрдкрд▓рд┐рдВрдЧ рдХреНрд╡реЗрд░реА, рд▓реЙрдЧ рдПрдВрдб рдСрдлрд╕реЗрдЯ (LEO) рдЖрдгрд┐ рд╣рд╛рдпрд╡реЙрдЯрд░ рдорд╛рд░реНрдХ (HW)

рдЖрдореНрд╣реА рдЕрд╕реЗ рдорд╛рдирд▓реЗ рдХреА рдЕрдиреБрдпрд╛рдпреА рд╡реЗрд│реЛрд╡реЗрд│реА рдиреЗрддреНрдпрд╛рд▓рд╛ рд╡рд┐рдирдВрддреНрдпрд╛ рдЖрдгрдгреНрдпрд╛рд╕рд╛рдареА рдкрд╛рдард╡рддрд╛рдд. рдбреАрдлреЙрд▓реНрдЯ рдордзреНрдпрд╛рдВрддрд░ 500ms рдЖрд╣реЗ. рд╣реЗ RabbitMQ рдкреЗрдХреНрд╖рд╛ рд╡реЗрдЧрд│реЗ рдЖрд╣реЗ рдХрд╛рд░рдг RabbitMQ рдордзреНрдпреЗ рдкреНрд░рддрд┐рдХреГрддреА рд░рд╛рдВрдЧреЗрддреАрд▓ рдорд┐рд░рд░рджреНрд╡рд╛рд░реЗ рдирд╛рд╣реА рддрд░ рдорд╛рд╕реНрдЯрд░рджреНрд╡рд╛рд░реЗ рд╕реБрд░реВ рдХреЗрд▓реА рдЬрд╛рддреЗ. рдорд╛рд╕реНрдЯрд░ рдЖрд░рд╢рд╛рдд рдмрджрд▓ рдврдХрд▓рддреЛ.

рдиреЗрддрд╛ рдЖрдгрд┐ рд╕рд░реНрд╡ рдЕрдиреБрдпрд╛рдпреА рд▓реЙрдЧ рдПрдВрдб рдСрдлрд╕реЗрдЯ (LEO) рдЖрдгрд┐ Highwater (HW) рд▓реЗрдмрд▓ рдЬрддрди рдХрд░рддрд╛рдд. LEO рдорд╛рд░реНрдХ рд╕реНрдерд╛рдирд┐рдХ рдкреНрд░рддрд┐рдХреГрддреАрдордзреНрдпреЗ рд╢реЗрд╡рдЯрдЪреНрдпрд╛ рд╕рдВрджреЗрд╢рд╛рдЪрд╛ рдСрдлрд╕реЗрдЯ рд╕рдВрдЪрдпрд┐рдд рдХрд░рддреЛ рдЖрдгрд┐ HW рд╢реЗрд╡рдЯрдЪреНрдпрд╛ рдХрдорд┐рдЯрдЪрд╛ рдСрдлрд╕реЗрдЯ рдареЗрд╡рддреЛ. рд▓рдХреНрд╖рд╛рдд рдареЗрд╡рд╛ рдХреА рдХрдорд┐рдЯ рд╕реНрдерд┐рддреАрд╕рд╛рдареА, рд╕рдВрджреЗрд╢ рд╕рд░реНрд╡ ISR рдкреНрд░рддрд┐рдХреГрддреАрдВрдордзреНрдпреЗ рдХрд╛рдпрдо рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдпрд╛рдЪрд╛ рдЕрд░реНрде рдЕрд╕рд╛ рдХреА LEO рд╕рд╛рдорд╛рдиреНрдпрддрдГ HW рдкреЗрдХреНрд╖рд╛ рдереЛрдбрд╛ рдкреБрдвреЗ рдЕрд╕рддреЛ.

рдЬреЗрд╡реНрд╣рд╛ рдиреЗрддреНрдпрд╛рд▓рд╛ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреЛ, рддреЗрд╡реНрд╣рд╛ рддреЛ рд╕реНрдерд╛рдирд┐рдХ рдкрд╛рддрд│реАрд╡рд░ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХрд░рддреЛ. рдЕрдиреБрдпрд╛рдпреА рддреНрдпрд╛рдЪреНрдпрд╛ LEO рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░реВрди рдЖрдгрдгреНрдпрд╛рдЪреА рд╡рд┐рдирдВрддреА рдХрд░рддреЛ. рдиреЗрддрд╛ рдирдВрддрд░ рдпрд╛ LEO рдкрд╛рд╕реВрди рд╕реБрд░реВ рд╣реЛрдгрд╛рд░рд╛ рд╕рдВрджреЗрд╢ рдкрд╛рдард╡рддреЛ рдЖрдгрд┐ рд╡рд░реНрддрдорд╛рди HW рджреЗрдЦреАрд▓ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░рддреЛ. рдЬреЗрд╡реНрд╣рд╛ рд▓реАрдбрд░рд▓рд╛ рдорд╛рд╣рд┐рддреА рдорд┐рд│рддреЗ рдХреА рд╕рд░реНрд╡ рдкреНрд░рддрд┐рдХреГрддреАрдВрдиреА рд╕рдВрджреЗрд╢ рджрд┐рд▓реЗрд▓реНрдпрд╛ рдСрдлрд╕реЗрдЯрд╡рд░ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХреЗрд▓рд╛ рдЖрд╣реЗ, рддреЗрд╡реНрд╣рд╛ рддреЗ HW рдЪрд┐рдиреНрд╣ рд╣рд▓рд╡рддреЗ. рдХреЗрд╡рд│ рдиреЗрддрд╛рдЪ HW рд╣рд▓рд╡реВ рд╢рдХрддреЛ, рдЖрдгрд┐ рддреНрдпрд╛рдореБрд│реЗ рд╕рд░реНрд╡ рдЕрдиреБрдпрд╛рдпрд╛рдВрдирд╛ рддреНрдпрд╛рдВрдЪреНрдпрд╛ рд╡рд┐рдирдВрддреАрд▓рд╛ рджрд┐рд▓реЗрд▓реНрдпрд╛ рдкреНрд░рддрд┐рд╕рд╛рджрд╛рдВрдордзреНрдпреЗ рд╡рд░реНрддрдорд╛рди рдореВрд▓реНрдп рдХрд│реЗрд▓. рдпрд╛рдЪрд╛ рдЕрд░реНрде рдЕрд╕рд╛ рдХреА рдЕрдиреБрдпрд╛рдпреА рд╕рдВрджреЗрд╢ рдЖрдгрд┐ HW рдЬреНрдЮрд╛рди рдпрд╛ рджреЛрдиреНрд╣реА рдмрд╛рдмрддреАрдд рдиреЗрддреНрдпрд╛рдкреЗрдХреНрд╖рд╛ рдорд╛рдЧреЗ рд░рд╛рд╣реВ рд╢рдХрддрд╛рдд. рдЧреНрд░рд╛рд╣рдХрд╛рдВрдирд╛ рдлрдХреНрдд рд╡рд░реНрддрдорд╛рди HW рдкрд░реНрдпрдВрдд рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛рдд.

рд▓рдХреНрд╖рд╛рдд рдШреНрдпрд╛ рдХреА "рдкрд░реНрд╕рд┐рд╕реНрдЯреЗрдб" рдореНрд╣рдгрдЬреЗ рдореЗрдорд░реАрдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓реЗ рдЖрд╣реЗ, рдбрд┐рд╕реНрдХрд╡рд░ рдирд╛рд╣реА. рдХрд╛рдордЧрд┐рд░реАрд╕рд╛рдареА, рдХрд╛рдлреНрдХрд╛ рдПрдХрд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЕрдВрддрд░рд╛рдиреЗ рдбрд┐рд╕реНрдХрд╡рд░ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭ рдХрд░рддреЗ. RabbitMQ рдордзреНрдпреЗ рджреЗрдЦреАрд▓ рдЕрд╕рд╛ рдордзреНрдпрд╛рдВрддрд░ рдЖрд╣реЗ, рдкрд░рдВрддреБ рдорд╛рд╕реНрдЯрд░ рдЖрдгрд┐ рд╕рд░реНрд╡ рдорд┐рд░рд░рдиреЗ рдбрд┐рд╕реНрдХрд╡рд░ рд╕рдВрджреЗрд╢ рд▓рд┐рд╣рд┐рд▓реНрдпрд╛рдирдВрддрд░рдЪ рддреЗ рдкреНрд░рдХрд╛рд╢рдХрд╛рд▓рд╛ рдкреЛрдЪрдкрд╛рд╡рддреА рдкрд╛рдард╡реЗрд▓. рдХрд╛рдлреНрдХрд╛ рд╡рд┐рдХрд╛рд╕рдХрд╛рдВрдиреА, рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрдЪреНрдпрд╛ рдХрд╛рд░рдгрд╛рд╕реНрддрд╡, рдореЗрдорд░реАрдордзреНрдпреЗ рд╕рдВрджреЗрд╢ рд▓рд┐рд╣рд┐рд▓реНрдпрд╛рдмрд░реЛрдмрд░ рдПрдХ ack рдкрд╛рдард╡рдгреНрдпрд╛рдЪрд╛ рдирд┐рд░реНрдгрдп рдШреЗрддрд▓рд╛. рдХрд╛рдлреНрдХрд╛ рдмрд╛рдЬреА рдорд╛рд░рддреЛ рдХреА рд░рд┐рдбрдВрдбрдВрд╕реА рдХреЗрд╡рд│ рдореЗрдорд░реАрдордзреНрдпреЗ рдкреЛрдЪрд▓реЗрд▓реЗ рд╕рдВрджреЗрд╢ рдереЛрдбрдХреНрдпрд╛рдд рд╕рд╛рдард╡рдгреНрдпрд╛рдЪрд╛ рдзреЛрдХрд╛ рдХрдореА рдХрд░рддреЗ.

рдиреЗрддреНрдпрд╛рдЪреЗ рдЕрдкрдпрд╢

рдЬреЗрд╡реНрд╣рд╛ рдПрдЦрд╛рджрд╛ рдиреЗрддрд╛ рдкрдбрддреЛ, рддреЗрд╡реНрд╣рд╛ рдЭреВрдХреАрдкрд░ рдХрдВрдЯреНрд░реЛрд▓рд░рд▓рд╛ рд╕реВрдЪрд┐рдд рдХрд░рддреЛ рдЖрдгрд┐ рддреЛ рдирд╡реАрди рд▓реАрдбрд░ рдкреНрд░рддрд┐рдХреГрддреА рдирд┐рд╡рдбрддреЛ. рдирд╡реАрди рдиреЗрддрд╛ рддреНрдпрд╛рдЪреНрдпрд╛ LEO рдиреБрд╕рд╛рд░ рдирд╡реАрди HW рдЪрд┐рдиреНрд╣ рд╕реЗрдЯ рдХрд░рддреЛ. рддреНрдпрд╛рдирдВрддрд░ рдЕрдиреБрдпрд╛рдпрд╛рдВрдирд╛ рдирд╡реАрди рдиреЗрддреНрдпрд╛рдмрджреНрджрд▓ рдорд╛рд╣рд┐рддреА рдорд┐рд│рддреЗ. рдХрд╛рдлреНрдХрд╛рдЪреНрдпрд╛ рдЖрд╡реГрддреНрддреАрд╡рд░ рдЕрд╡рд▓рдВрдмреВрди, рдЕрдиреБрдпрд╛рдпреА рджреЛрдирдкреИрдХреА рдПрдХ рдкрд░рд┐рд╕реНрдерд┐рддреА рдирд┐рд╡рдбреЗрд▓:

  1. рд╣реЗ рдЬреНрдЮрд╛рдд HW рд▓рд╛ рд╕реНрдерд╛рдирд┐рдХ рд▓реЙрдЧ рдХрд╛рдкреВрди рдЯрд╛рдХреЗрд▓ рдЖрдгрд┐ рдпрд╛ рдЪрд┐рдиреНрд╣рд╛рдирдВрддрд░ рдирд╡реАрди рдиреЗрддреНрдпрд╛рд▓рд╛ рд╕рдВрджреЗрд╢рд╛рдВрд╕рд╛рдареА рд╡рд┐рдирдВрддреА рдкрд╛рдард╡реЗрд▓.
  2. рдиреЗрддрд╛ рдирд┐рд╡рдбреВрди рдЖрд▓реНрдпрд╛рдЪреНрдпрд╛ рд╡реЗрд│реА HW рд╢реЛрдзрдгреНрдпрд╛рд╕рд╛рдареА рдиреЗрддреНрдпрд╛рд▓рд╛ рд╡рд┐рдирдВрддреА рдкрд╛рдард╡реЗрд▓ рдЖрдгрд┐ рдирдВрддрд░ рдпрд╛ рдСрдлрд╕реЗрдЯрд╕рд╛рдареА рд▓реЙрдЧ рдХрд╛рдкреВрди рдЯрд╛рдХреЗрд▓. рддреНрдпрд╛рдирдВрддрд░ рдпрд╛ рдСрдлрд╕реЗрдЯрдкрд╛рд╕реВрди рдирд┐рдпрддрдХрд╛рд▓рд┐рдХ рдлреЗрдЪ рд╡рд┐рдирдВрддреНрдпрд╛ рдХрд░рдгреЗ рд╕реБрд░реВ рд╣реЛрдИрд▓.

рдлреЙрд▓реЛрдЕрд░рд▓рд╛ рдЦрд╛рд▓реАрд▓ рдХрд╛рд░рдгрд╛рдВрд╕рд╛рдареА рд▓реЙрдЧ рдХрд╛рдкрдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЕрд╕реВ рд╢рдХрддреЗ:

  • рдЬреЗрд╡реНрд╣рд╛ рдПрдЦрд╛рджрд╛ рдиреЗрддрд╛ рдЕрдпрд╢рд╕реНрд╡реА рд╣реЛрддреЛ, рддреЗрд╡реНрд╣рд╛ рдЭреВрдХреАрдкрд░рдХрдбреЗ рдиреЛрдВрджрдгреАрдХреГрдд ISR рд╕рдВрдЪрд╛рдордзреАрд▓ рдкрд╣рд┐рд▓рд╛ рдЕрдиреБрдпрд╛рдпреА рдирд┐рд╡рдбрдгреВрдХ рдЬрд┐рдВрдХрддреЛ рдЖрдгрд┐ рдиреЗрддрд╛ рдмрдирддреЛ. ISR рд╡рд░реАрд▓ рд╕рд░реНрд╡ рдЕрдиреБрдпрд╛рдпреА, рдЬрд░реА "рд╕рдордХреНрд░рдорд┐рдд" рдорд╛рдирд▓реЗ рдЬрд╛рдд рдЕрд╕рд▓реЗ рддрд░реА, рддреНрдпрд╛рдВрдирд╛ рдорд╛рдЬреА рдиреЗрддреНрдпрд╛рдХрдбреВрди рд╕рд░реНрд╡ рд╕рдВрджреЗрд╢рд╛рдВрдЪреНрдпрд╛ рдкреНрд░рддреА рдкреНрд░рд╛рдкреНрдд рдЭрд╛рд▓реНрдпрд╛ рдирд╕рддреАрд▓. рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреАрдХреГрдд рдлреЙрд▓реЛрдЕрд░рдХрдбреЗ рд╕рд░реНрд╡рд╛рдд рдЕрджреНрдпрдпрд╛рд╡рдд рдкреНрд░рдд рдирд╕рдгреЗ рдкреВрд░реНрдгрдкрдгреЗ рд╢рдХреНрдп рдЖрд╣реЗ. рдХрд╛рдлреНрдХрд╛ рд╣реЗ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреЛ рдХреА рдкреНрд░рддрд┐рдХреГрддреАрдВрдордзреНрдпреЗ рдХреЛрдгрддрд╛рд╣реА рдлрд░рдХ рдирд╛рд╣реА. рдЕрд╢рд╛рдкреНрд░рдХрд╛рд░реЗ, рд╡рд┐рд╕рдВрдЧрддреА рдЯрд╛рд│рдгреНрдпрд╛рд╕рд╛рдареА, рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрдпрд╛рдпрд╛рдиреЗ рддреНрдпрд╛рдЪреНрдпрд╛ рдирд┐рд╡рдбреАрдЪреНрдпрд╛ рд╡реЗрд│реА рдирд╡реАрди рдиреЗрддреНрдпрд╛рдЪреНрдпрд╛ HW рдореВрд▓реНрдпрд╛рдиреБрд╕рд╛рд░ рддреНрдпрд╛рдЪреЗ рд▓реЙрдЧ рдХрд╛рдкрд▓реЗ рдкрд╛рд╣рд┐рдЬреЗрдд. рд╕реЗрдЯрд┐рдВрдЧ рдХрд╛ рд╣реЗ рдЖрдгрдЦреА рдПрдХ рдХрд╛рд░рдг рдЖрд╣реЗ acks = рд╕рд░реНрд╡ рд╕реБрд╕рдВрдЧрддрддреЗрд╕рд╛рдареА рдЦреВрдк рдорд╣рддреНрд╡рд╛рдЪреЗ.
  • рд╕рдВрджреЗрд╢ рд╡реЗрд│реЛрд╡реЗрд│реА рдбрд┐рд╕реНрдХрд╡рд░ рд▓рд┐рд╣рд┐рд▓реЗ рдЬрд╛рддрд╛рдд. рд╕рд░реНрд╡ рдХреНрд▓рд╕реНрдЯрд░ рдиреЛрдбреНрд╕ рдПрдХрд╛рдЪ рд╡реЗрд│реА рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реНрдпрд╛рд╕, рдбрд┐рд╕реНрдХрд╡рд░ рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рдСрдлрд╕реЗрдЯрд╕рд╣ рдкреНрд░рддрд┐рдХреГрддреА рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХреЗрд▓реНрдпрд╛ рдЬрд╛рддреАрд▓. рд╣реЗ рд╢рдХреНрдп рдЖрд╣реЗ рдХреА рдЬреЗрд╡реНрд╣рд╛ рджрд▓рд╛рд▓ рдСрдирд▓рд╛рдЗрди рдкрд░рдд рдпреЗрддрд╛рдд, рддреЗрд╡реНрд╣рд╛ рдирд┐рд╡рдбреВрди рдЖрд▓реЗрд▓рд╛ рдирд╡реАрди рдиреЗрддрд╛ рддреНрдпрд╛рдЪреНрдпрд╛ рдЕрдиреБрдпрд╛рдпрд╛рдВрдЪреНрдпрд╛ рдорд╛рдЧреЗ рдЕрд╕реЗрд▓ рдХрд╛рд░рдг рддреЛ рдЗрддрд░рд╛рдВрдЪреНрдпрд╛ рдЖрдзреА рдбрд┐рд╕реНрдХрд╡рд░ рдЬрддрди рдХреЗрд▓рд╛ рдЧреЗрд▓рд╛ рд╣реЛрддрд╛.

рдХреНрд▓рд╕реНрдЯрд░рд╕рд╣ рдкреБрдирд░реНрдорд┐рд▓рди

рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рдкреБрдиреНрд╣рд╛ рд╕рд╛рдореАрд▓ рд╣реЛрддрд╛рдирд╛, рдкреНрд░рддрд┐рдХреГрддреА рдиреЗрддрд╛ рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реНрдпрд╛рдкреНрд░рдорд╛рдгреЗрдЪ рдХрд░рддрд╛рдд: рддреЗ рдиреЗрддреНрдпрд╛рдЪреА рдкреНрд░рддрд┐рдХреГрддреА рддрдкрд╛рд╕рддрд╛рдд рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪреЗ рд▓реЙрдЧ рддреНрдпрд╛рдЪреНрдпрд╛ HW (рдирд┐рд╡рдбрдгреБрдХреАрдЪреНрдпрд╛ рд╡реЗрд│реА) рдХрд╛рдкрддрд╛рдд. рддреНрдпрд╛ рддреБрд▓рдиреЗрдд, рд░реЕрдмрд┐рдЯрдПрдордХреНрдпреВ рдкреБрдиреНрд╣рд╛ рдЬреЛрдбрд▓реЗрд▓реНрдпрд╛ рдиреЛрдбреНрд╕рд▓рд╛ рдкреВрд░реНрдгрдкрдгреЗ рдирд╡реАрди рдорд╛рдирддреЗ. рджреЛрдиреНрд╣реА рдкреНрд░рдХрд░рдгрд╛рдВрдордзреНрдпреЗ, рдмреНрд░реЛрдХрд░ рдХреЛрдгрддреАрд╣реА рд╡рд┐рджреНрдпрдорд╛рди рд╕реНрдерд┐рддреА рдЯрд╛рдХреВрди рджреЗрддреЛ. рдЬрд░ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рд╡рд╛рдкрд░рд▓реЗ рдЧреЗрд▓реЗ рдЕрд╕реЗрд▓, рддрд░ рдорд╛рд╕реНрдЯрд░рдиреЗ "рд╕рдВрдкреВрд░реНрдг рдЬрдЧрд╛рд▓рд╛ рд╡рд╛рдЯ рдкрд╛рд╣реВ рджреНрдпрд╛" рдпрд╛ рдкрджреНрдзрддреАрдордзреНрдпреЗ рдирд╡реАрди рдорд┐рд░рд░рдордзреНрдпреЗ рдкреВрд░реНрдгрдкрдгреЗ рд╕рд░реНрд╡ рд╡рд░реНрддрдорд╛рди рд╕рд╛рдордЧреНрд░реАрдЪреА рдкреНрд░рддрд┐рдХреГрддреА рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдпрд╛ рдСрдкрд░реЗрд╢рди рджрд░рдореНрдпрд╛рди рдорд╛рд╕реНрдЯрд░ рдХреЛрдгрддреЗрд╣реА рд╡рд╛рдЪрди рдХрд┐рдВрд╡рд╛ рд▓реЗрдЦрди рдСрдкрд░реЗрд╢рди рд╕реНрд╡реАрдХрд╛рд░рдд рдирд╛рд╣реА. рдпрд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдирд╛рдореБрд│реЗ рдореЛрдареНрдпрд╛ рд░рд╛рдВрдЧрд╛рдВрдордзреНрдпреЗ рд╕рдорд╕реНрдпрд╛ рдирд┐рд░реНрдорд╛рдг рд╣реЛрддрд╛рдд.

рдХрд╛рдлреНрдХрд╛ рд╣рд╛ рдПрдХ рд╡рд┐рддрд░рд┐рдд рд▓реЙрдЧ рдЖрд╣реЗ рдЖрдгрд┐ рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ рддреЛ RabbitMQ рд░рд╛рдВрдЧреЗрдкреЗрдХреНрд╖рд╛ рдЕрдзрд┐рдХ рд╕рдВрджреЗрд╢ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХрд░рддреЛ, рдЬрд┐рдереЗ рдбреЗрдЯрд╛ рд╡рд╛рдЪрд▓реНрдпрд╛рдирдВрддрд░ рд░рд╛рдВрдЧреЗрддреВрди рдХрд╛рдвреВрди рдЯрд╛рдХрд▓рд╛ рдЬрд╛рддреЛ. рд╕рдХреНрд░рд┐рдп рд░рд╛рдВрдЧрд╛ рддреБрд▓рдиреЗрдиреЗ рд▓рд╣рд╛рди рдЕрд╕рд╛рд╡реНрдпрд╛рдд. рдкрд░рдВрддреБ рдХрд╛рдлреНрдХрд╛ рд╣рд╛ рддреНрдпрд╛рдЪреНрдпрд╛ рд╕реНрд╡рддрдГрдЪреНрдпрд╛ рдзрд╛рд░рдгрд╛ рдзреЛрд░рдгрд╛рд╕рд╣ рдПрдХ рд▓реЙрдЧ рдЖрд╣реЗ, рдЬреЛ рджрд┐рд╡рд╕ рдХрд┐рдВрд╡рд╛ рдЖрдард╡рдбреНрдпрд╛рдВрдЪрд╛ рдХрд╛рд▓рд╛рд╡рдзреА рд╕реЗрдЯ рдХрд░реВ рд╢рдХрддреЛ. рд╡рд┐рддрд░реАрдд рд▓реЙрдЧрд╕рд╛рдареА рд░рд╛рдВрдЧ рдЕрд╡рд░реЛрдзрд┐рдд рдХрд░рдгреЗ рдЖрдгрд┐ рд╕рдВрдкреВрд░реНрдг рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рджреГрд╖реНрдЯреАрдХреЛрди рдкреВрд░реНрдгрдкрдгреЗ рдЕрд╕реНрд╡реАрдХрд╛рд░реНрдп рдЖрд╣реЗ. рддреНрдпрд╛рдРрд╡рдЬреА, рдХрд╛рдлреНрдХрд╛ рдЕрдиреБрдпрд╛рдпреА рддреНрдпрд╛рдВрдЪреА рдкреНрд░рдд рдиреЗрддреНрдпрд╛рдЪреНрдпрд╛ рдкреБрдвреЗ рдЕрд╕рд▓реНрдпрд╛рд╕ рдиреЗрддреНрдпрд╛рдЪреНрдпрд╛ HW (рддреНрдпрд╛рдЪреНрдпрд╛ рдирд┐рд╡рдбреАрдЪреНрдпрд╛ рд╡реЗрд│реА) рддреНрдпрд╛рдВрдЪреЗ рд▓реЙрдЧ рдХрд╛рдкрддрд╛рдд. рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡реНрдп рдмрд╛рдмрддреАрдд, рдЬреЗрд╡реНрд╣рд╛ рдЕрдиреБрдпрд╛рдпреА рдорд╛рдЧреЗ рдЕрд╕рддреЛ, рддреЗрд╡реНрд╣рд╛ рддреЛ рдлрдХреНрдд рддреНрдпрд╛рдЪреНрдпрд╛ рд╡рд░реНрддрдорд╛рди LEO рдкрд╛рд╕реВрди рдкреНрд░рд╛рд░рдВрдн рдХрд░реВрди рд╡рд┐рдирдВрддреНрдпрд╛ рдЖрдгрдгреНрдпрд╛рд╕ рдкреНрд░рд╛рд░рдВрдн рдХрд░рддреЛ.

рдирд╡реАрди рдХрд┐рдВрд╡рд╛ рдкреБрдиреНрд╣рд╛ рд╕рд╛рдореАрд▓ рдЭрд╛рд▓реЗрд▓реЗ рдЕрдиреБрдпрд╛рдпреА ISR рдмрд╛рд╣реЗрд░ рд╕реБрд░реВ рдХрд░рддрд╛рдд рдЖрдгрд┐ рдХрдорд┐рдЯрдордзреНрдпреЗ рд╕рд╣рднрд╛рдЧреА рд╣реЛрдд рдирд╛рд╣реАрдд. рддреЗ рдиреЗрддреНрдпрд╛рд╢реА рд╕рдВрдкрд░реНрдХ рд╕рд╛рдзреВрди ISR рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░реЗрдкрд░реНрдпрдВрдд рддреЗ рд╢рдХреНрдп рддрд┐рддрдХреНрдпрд╛ рд▓рд╡рдХрд░ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░реВрди, рд╕рдореВрд╣рд╛рд╕реЛрдмрдд рдХрд╛рдо рдХрд░рддрд╛рдд. рдХреЛрдгрддреЗрд╣реА рд▓реЙрдХ-рдЗрди рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдордЪрд╛ рд╕рд░реНрд╡ рдбреЗрдЯрд╛ рдлреЗрдХреВрди рджреЗрдгреНрдпрд╛рдЪреА рдЧрд░рдЬ рдирд╛рд╣реА.

рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рддреЛрдЯрд╛

рдХрд╛рдлреНрдХрд╛рдордзреНрдпреЗ RabbitMQ рдкреЗрдХреНрд╖рд╛ рдЕрдзрд┐рдХ рдШрдЯрдХ рдЖрд╣реЗрдд, рдореНрд╣рдгреВрди рдХреНрд▓рд╕реНрдЯрд░ рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ рдЭрд╛рд▓реНрдпрд╛рд╡рд░ рддреНрдпрд╛рдЪреНрдпрд╛рдХрдбреЗ рд╡рд░реНрддрдирд╛рдВрдЪрд╛ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╕рдВрдЪ рдЕрд╕рддреЛ. рдкрд░рдВрддреБ рдХрд╛рдлреНрдХрд╛ рдореВрд│рддрдГ рдХреНрд▓рд╕реНрдЯрд░реНрд╕рд╕рд╛рдареА рдбрд┐рдЭрд╛рдЗрди рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рд╣реЛрддреЗ, рддреНрдпрд╛рдореБрд│реЗ рдЙрдкрд╛рдп рдЦреВрдк рдЪрд╛рдВрдЧрд▓реЗ рд╡рд┐рдЪрд╛рд░рд╛рдд рдШреЗрддрд▓реЗ рдЖрд╣реЗрдд.

рдЦрд╛рд▓реА рдЕрдиреЗрдХ рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рдЕрдпрд╢рд╕реНрд╡реА рдкрд░рд┐рд╕реНрдерд┐рддреА рдЖрд╣реЗрдд:

  • рдкрд░рд┐рд╕реНрдерд┐рддреА 1: рдЕрдиреБрдпрд╛рдпреА рдиреЗрддрд╛ рдкрд╛рд╣рдд рдирд╛рд╣реА, рдкрд░рдВрддреБ рддрд░реАрд╣реА рдкреНрд░рд╛рдгреАрд╕рдВрдЧреНрд░рд╣рд╛рд▓рдп рдкрд╛рд╣рддреЛ.
  • рдкрд░рд┐рд╕реНрдерд┐рддреА 2: рдиреЗрддреНрдпрд╛рд▓рд╛ рдХреЛрдгрддреЗрд╣реА рдЕрдиреБрдпрд╛рдпреА рджрд┐рд╕рдд рдирд╛рд╣реАрдд, рдкрд░рдВрддреБ рддрд░реАрд╣реА рддреЛ Zookeeper рдкрд╛рд╣рддреЛ.
  • рдкрд░рд┐рд╕реНрдерд┐рддреА 3: рдЕрдиреБрдпрд╛рдпреА рдиреЗрддрд╛ рдкрд╛рд╣рддреЛ, рдкрд░рдВрддреБ рдкреНрд░рд╛рдгреАрд╕рдВрдЧреНрд░рд╣рд╛рд▓рдп рдкрд╛рд╣рдд рдирд╛рд╣реА.
  • рдкрд░рд┐рд╕реНрдерд┐рддреА 4: рдиреЗрддрд╛ рдЕрдиреБрдпрд╛рдпрд╛рдВрдирд╛ рдкрд╛рд╣рддреЛ, рдкрд░рдВрддреБ рдкреНрд░рд╛рдгреАрд╕рдВрдЧреНрд░рд╣рд╛рд▓рдп рдкрд╛рд╣рдд рдирд╛рд╣реА.
  • рдкрд░рд┐рд╕реНрдерд┐рддреА 5: рдЕрдиреБрдпрд╛рдпреА рдЗрддрд░ рдХрд╛рдлреНрдХрд╛ рдиреЛрдбреНрд╕ рдЖрдгрд┐ рдЭреВрдХреАрдкрд░ рдпрд╛ рджреЛрдиреНрд╣реАрдВрдкрд╛рд╕реВрди рдкреВрд░реНрдгрдкрдгреЗ рд╡реЗрдЧрд│реЗ рдЖрд╣реЗ.
  • рдкрд░рд┐рд╕реНрдерд┐рддреА 6: рдиреЗрддрд╛ рд╣рд╛ рдЗрддрд░ рдХрд╛рдлреНрдХрд╛ рдиреЛрдбреНрд╕ рдЖрдгрд┐ рдЭреВрдХреАрдкрд░ рдпрд╛ рджреЛрдиреНрд╣реАрдВрдкрд╛рд╕реВрди рдкреВрд░реНрдгрдкрдгреЗ рд╡реЗрдЧрд│рд╛ рдЖрд╣реЗ.
  • рдкрд░рд┐рд╕реНрдерд┐рддреА 7: рдХрд╛рдлреНрдХрд╛ рдХрдВрдЯреНрд░реЛрд▓рд░ рдиреЛрдб рджреБрд╕рд░рд╛ рдХрд╛рдлреНрдХрд╛ рдиреЛрдб рдкрд╛рд╣реВ рд╢рдХрдд рдирд╛рд╣реА.
  • рдкрд░рд┐рд╕реНрдерд┐рддреА 8: рдХрд╛рдлреНрдХрд╛ рдХрдВрдЯреНрд░реЛрд▓рд░рд▓рд╛ рдЭреВрдХреАрдкрд░ рджрд┐рд╕рдд рдирд╛рд╣реА.

рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рд╕реНрдерд┐рддреАрдЪреЗ рд╕реНрд╡рддрдГрдЪреЗ рд╡рд░реНрддрди рдЕрд╕рддреЗ.

рдкрд░рд┐рд╕реНрдерд┐рддреА 1: рдЕрдиреБрдпрд╛рдпреА рдиреЗрддрд╛ рдкрд╛рд╣рдд рдирд╛рд╣реА, рдкрд░рдВрддреБ рддрд░реАрд╣реА рдкреНрд░рд╛рдгреАрдкрд╛рд▓ рдкрд╛рд╣рддреЛ

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 22. рдкрд░рд┐рд╕реНрдерд┐рддреА 1: рддреАрди рдкреНрд░рддрд┐рдХреГрддреАрдВрдЪрд╛ ISR

рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рдЕрдкрдпрд╢ рдмреНрд░реЛрдХрд░ 3 рд▓рд╛ рдмреНрд░реЛрдХрд░ 1 рдЖрдгрд┐ 2 рдкрд╛рд╕реВрди рд╡реЗрдЧрд│реЗ рдХрд░рддреЗ, рдкрд░рдВрддреБ Zookeeper рдкрд╛рд╕реВрди рдирд╛рд╣реА. рдмреНрд░реЛрдХрд░ 3 рдпрд╛рдкреБрдвреЗ рдлреЗрдЪ рд╡рд┐рдирдВрддреНрдпрд╛ рдкрд╛рдард╡реВ рд╢рдХрдд рдирд╛рд╣реА. рд╡реЗрд│ рдирд┐рдШреВрди рдЧреЗрд▓реНрдпрд╛рд╡рд░ replica.lag.time.max.ms рддреЗ ISR рдордзреВрди рдХрд╛рдврд▓реЗ рдЬрд╛рддреЗ рдЖрдгрд┐ рд╕рдВрджреЗрд╢ рдХрдорд┐рдЯрдордзреНрдпреЗ рд╕рд╣рднрд╛рдЧреА рд╣реЛрдд рдирд╛рд╣реА. рдПрдХрджрд╛ рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░, рддреЗ рд╡рд┐рдирдВрддреНрдпрд╛ рдЖрдгрдгреЗ рдкреБрдиреНрд╣рд╛ рд╕реБрд░реВ рдХрд░реЗрд▓ рдЖрдгрд┐ рдЬреЗрд╡реНрд╣рд╛ рд▓реАрдбрд░рд╢реА рд╕рдВрдкрд░реНрдХ рд╕рд╛рдзреЗрд▓ рддреЗрд╡реНрд╣рд╛ ISR рдордзреНрдпреЗ рд╕рд╛рдореАрд▓ рд╣реЛрдИрд▓. рдЭреВрдХреАрдкрд░рд▓рд╛ рдкрд┐рдВрдЧ рдорд┐рд│рдд рд░рд╛рд╣рддреАрд▓ рдЖрдгрд┐ рджрд▓рд╛рд▓ рдЬрд┐рд╡рдВрдд рдЖрдгрд┐ рдмрд░рд╛ рдЕрд╕рд▓реНрдпрд╛рдЪреЗ рдЧреГрд╣реАрдд рдзрд░реЗрд▓.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 23. рдкрд░рд┐рд╕реНрдерд┐рддреА 1: replica.lag.time.max.ms рдЕрдВрддрд░рд╛рд▓рдордзреНрдпреЗ рдмреНрд░реЛрдХрд░рдХрдбреВрди рдХреЛрдгрддреАрд╣реА рдлреЗрдЪ рд╡рд┐рдирдВрддреА рдкреНрд░рд╛рдкреНрдд рди рдЭрд╛рд▓реНрдпрд╛рд╕ рддреНрдпрд╛рд▓рд╛ ISR рдордзреВрди рдХрд╛рдвреВрди рдЯрд╛рдХрд▓реЗ рдЬрд╛рддреЗ.

RabbitMQ рдкреНрд░рдорд╛рдгреЗ рд╕реНрдкреНрд▓рд┐рдЯ-рдмреНрд░реЗрди рдХрд┐рдВрд╡рд╛ рдиреЛрдб рд╕рд╕реНрдкреЗрдВрд╢рди рдирд╛рд╣реА. рддреНрдпрд╛рдРрд╡рдЬреА, рд░рд┐рдбрдВрдбрдВрд╕реА рдХрдореА рд╣реЛрддреЗ.

рдкрд░рд┐рд╕реНрдерд┐рддреА 2: рдиреЗрддреНрдпрд╛рд▓рд╛ рдХреЛрдгрддреЗрд╣реА рдЕрдиреБрдпрд╛рдпреА рджрд┐рд╕рдд рдирд╛рд╣реАрдд, рдкрд░рдВрддреБ рддрд░реАрд╣реА рддреЛ Zookeeper рдкрд╛рд╣рддреЛ

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 24. рдкрд░рд┐рд╕реНрдерд┐рддреА 2. рдиреЗрддрд╛ рдЖрдгрд┐ рджреЛрди рдЕрдиреБрдпрд╛рдпреА

рдиреЗрдЯрд╡рд░реНрдХ рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреАрдордзреАрд▓ рдмрд┐рдШрд╛рдб рд▓реАрдбрд░рд▓рд╛ рдлреЙрд▓реЛрдЕрд░реНрд╕рдкрд╛рд╕реВрди рд╡реЗрдЧрд│реЗ рдХрд░рддреЛ, рдкрд░рдВрддреБ рдмреНрд░реЛрдХрд░ рдЕрдЬреВрдирд╣реА Zookeeper рдкрд╛рд╣реВ рд╢рдХрддреЛ. рдкрд╣рд┐рд▓реНрдпрд╛ рдкреНрд░рд╕рдВрдЧрд╛рдкреНрд░рдорд╛рдгреЗ, ISR рд╕рдВрдХреБрдЪрд┐рдд рд╣реЛрдд рдЖрд╣реЗ, рдкрд░рдВрддреБ рдпрд╛рд╡реЗрд│реА рдлрдХреНрдд рдиреЗрддреНрдпрд╛рдХрдбреЗ рдЖрд╣реЗ рдХрд╛рд░рдг рд╕рд░реНрд╡ рдЕрдиреБрдпрд╛рдпреА рд╡рд┐рдирдВрддреНрдпрд╛ рдЖрдгрдгреЗ рдерд╛рдВрдмрд╡рддрд╛рдд. рдкреБрдиреНрд╣рд╛, рдХреЛрдгрддреАрд╣реА рддрд╛рд░реНрдХрд┐рдХ рд╡рд┐рднрд╛рдЧрдгреА рдирд╛рд╣реА. рддреНрдпрд╛рдРрд╡рдЬреА, рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рд╣реЛрдИрдкрд░реНрдпрдВрдд рдирд╡реАрди рд╕рдВрджреЗрд╢рд╛рдВрд╕рд╛рдареА рд░рд┐рдбрдВрдбрдВрд╕реА рдХрдореА рд╣реЛрддреЗ. рдЭреВрдХреАрдкрд░рд▓рд╛ рдкрд┐рдВрдЧ рдорд┐рд│рдд рд░рд╛рд╣рддрд╛рдд рдЖрдгрд┐ рдмреНрд░реЛрдХрд░ рдЬрд┐рд╡рдВрдд рдЖрдгрд┐ рдмрд░рд╛ рдЕрд╕рд▓реНрдпрд╛рдЪрд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдареЗрд╡рддреЛ.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 25. рдкрд░рд┐рд╕реНрдерд┐рддреА 2. ISR рдлрдХреНрдд рдиреЗрддреНрдпрд╛рдкрд░реНрдпрдВрдд рд╕рдВрдХреБрдЪрд┐рдд рдЭрд╛рд▓рд╛ рдЖрд╣реЗ

рдкрд░рд┐рд╕реНрдерд┐рддреА 3. рдЕрдиреБрдпрд╛рдпреА рдиреЗрддрд╛ рдкрд╛рд╣рддреЛ, рдкрд░рдВрддреБ рдкреНрд░рд╛рдгреАрд╕рдВрдЧреНрд░рд╣рд╛рд▓рдп рдкрд╛рд╣рдд рдирд╛рд╣реА

рдЕрдиреБрдпрд╛рдпреА рдЭреБрдХреАрдкрд░рдкрд╛рд╕реВрди рд╡рд┐рднрдХреНрдд рдЭрд╛рд▓рд╛ рдЖрд╣реЗ, рдкрд░рдВрддреБ рдиреЗрддреНрдпрд╛рдЪреНрдпрд╛ рджрд▓рд╛рд▓рдкрд╛рд╕реВрди рдирд╛рд╣реА. рдкрд░рд┐рдгрд╛рдореА, рдЕрдиреБрдпрд╛рдпреА рд╡рд┐рдирдВрддреНрдпрд╛ рдЖрдгрдгреЗ рдЖрдгрд┐ ISR рдЪреЗ рд╕рджрд╕реНрдп рд╣реЛрдгреЗ рд╕реБрд░реВ рдареЗрд╡рддреЛ. рдЭреВрдХреАрдкрд░рд▓рд╛ рдпрд╛рдкреБрдвреЗ рдкрд┐рдВрдЧ рдорд┐рд│рдд рдирд╛рд╣реАрдд рдЖрдгрд┐ рдмреНрд░реЛрдХрд░ рдХреНрд░реЕрд╢рдЪреА рдиреЛрдВрджрдгреА рдХреЗрд▓реА рдЬрд╛рддреЗ, рдкрд░рдВрддреБ рддреЛ рдлрдХреНрдд рдПрдХ рдЕрдиреБрдпрд╛рдпреА рдЕрд╕рд▓реНрдпрд╛рдиреЗ, рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддреАрдирдВрддрд░ рдХреЛрдгрддреЗрд╣реА рдкрд░рд┐рдгрд╛рдо рд╣реЛрдд рдирд╛рд╣реАрдд.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 26. рдкрд░рд┐рд╕реНрдерд┐рддреА 3: рдЕрдиреБрдпрд╛рдпреА рдиреЗрддреНрдпрд╛рд▓рд╛ рдлреЗрдЪ рд░рд┐рдХреНрд╡реЗрд╕реНрдЯ рдкрд╛рдард╡рдд рд░рд╛рд╣рддреЛ

рдкрд░рд┐рд╕реНрдерд┐рддреА 4. рдиреЗрддрд╛ рдЕрдиреБрдпрд╛рдпрд╛рдВрдирд╛ рдкрд╛рд╣рддреЛ, рдкрд░рдВрддреБ рдкреНрд░рд╛рдгреАрд╕рдВрдЧреНрд░рд╣рд╛рд▓рдп рдкрд╛рд╣рдд рдирд╛рд╣реА

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 27. рдкрд░рд┐рд╕реНрдерд┐рддреА 4. рдиреЗрддрд╛ рдЖрдгрд┐ рджреЛрди рдЕрдиреБрдпрд╛рдпреА

рдиреЗрддрд╛ рдЭреВрдХреАрдкрд░рдкрд╛рд╕реВрди рд╡рд┐рднрдХреНрдд рдЭрд╛рд▓рд╛ рдЖрд╣реЗ, рдкрд░рдВрддреБ рдЕрдиреБрдпрд╛рдпрд╛рдВрд╕рд╣ рджрд▓рд╛рд▓рд╛рдВрдкрд╛рд╕реВрди рдирд╛рд╣реА.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 28. рдкрд░рд┐рд╕реНрдерд┐рддреА 4: рдЭреВрдХреАрдкрд░рдкрд╛рд╕реВрди рд╡реЗрдЧрд│рд╛ рдиреЗрддрд╛

рдХрд╛рд╣реА рдХрд╛рд│рд╛рдирдВрддрд░, рдЭреБрдХреАрдкрд░ рдмреНрд░реЛрдХрд░рдЪреНрдпрд╛ рдЕрдкрдпрд╢рд╛рдЪреА рдиреЛрдВрдж рдХрд░реЗрд▓ рдЖрдгрд┐ рдирд┐рдпрдВрддреНрд░рдХрд╛рд▓рд╛ рддреНрдпрд╛рдмрджреНрджрд▓ рд╕реВрдЪрд┐рдд рдХрд░реЗрд▓. рддреЛ рддреНрдпрд╛рдЪреНрдпрд╛ рдЕрдиреБрдпрд╛рдпрд╛рдВрдордзреВрди рдирд╡реАрди рдиреЗрддрд╛ рдирд┐рд╡рдбреЗрд▓. рдорд╛рддреНрд░, рдореВрд│ рдиреЗрддрд╛ рд╣рд╛рдЪ рдиреЗрддрд╛ рдЖрд╣реЗ, рдЕрд╕реЗ рд╕рдордЬреВрди рддреНрдпрд╛рдВрдЪреНрдпрд╛рдХрдбреВрди рдкреНрд░рд╡реЗрд╢рд┐рдХрд╛ рд╕реНрд╡реАрдХрд╛рд░рдд рд░рд╛рд╣рддреАрд▓ acks = 1. рдЕрдиреБрдпрд╛рдпреА рдпрд╛рдкреБрдвреЗ рддреНрдпрд╛рд▓рд╛ рд╡рд┐рдирдВрддреНрдпрд╛ рдЖрдгрдгреНрдпрд╛рд╕рд╛рдареА рдкрд╛рдард╡рдд рдирд╛рд╣реАрдд, рдореНрд╣рдгреВрди рддреЛ рддреНрдпрд╛рдВрдирд╛ рдореГрдд рд╕рдордЬреЗрд▓ рдЖрдгрд┐ ISR рд╕реНрд╡рддрдГрдЪ рдХрдореА рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░реЗрд▓. рдкрд░рдВрддреБ рддреНрдпрд╛рдЪреЗ Zookeeper рд╢реА рдХрдиреЗрдХреНрд╢рди рдирд╕рд▓реНрдпрд╛рдореБрд│реЗ, рддреЗ рд╣реЗ рдХрд░реВ рд╢рдХрдгрд╛рд░ рдирд╛рд╣реА рдЖрдгрд┐ рддреНрдпрд╛ рд╡реЗрд│реА рдкреБрдвреАрд▓ рдХреЛрдгрддреНрдпрд╛рд╣реА рдиреЛрдВрджреА рд╕реНрд╡реАрдХрд╛рд░рдгреНрдпрд╛рд╕ рдирдХрд╛рд░ рджреЗрдИрд▓.

рд╕рдВрджреЗрд╢ acks = рд╕рд░реНрд╡ рдкреЛрдЪрдкрд╛рд╡рддреА рдорд┐рд│рдгрд╛рд░ рдирд╛рд╣реА рдХрд╛рд░рдг ISR рдкреНрд░рдердо рд╕рд░реНрд╡ рдкреНрд░рддрд┐рдХреГрддреА рдЪрд╛рд▓реВ рдХрд░рддреЗ рдЖрдгрд┐ рд╕рдВрджреЗрд╢ рддреНрдпрд╛рдВрдЪреНрдпрд╛рдкрд░реНрдпрдВрдд рдкреЛрд╣реЛрдЪрдд рдирд╛рд╣реАрдд. рдЬреЗрд╡реНрд╣рд╛ рдореВрд│ рдиреЗрддрд╛ рддреНрдпрд╛рдВрдирд╛ ISR рдордзреВрди рдХрд╛рдвреВрди рдЯрд╛рдХрдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░реЗрд▓, рддреЗрд╡реНрд╣рд╛ рддреЗ рддрд╕реЗ рдХрд░рдгреНрдпрд╛рд╕ рдЕрдХреНрд╖рдо рдЕрд╕реЗрд▓ рдЖрдгрд┐ рдХреЛрдгрддреЗрд╣реА рд╕рдВрджреЗрд╢ рд╕реНрд╡реАрдХрд╛рд░рдгреЗ рдЕрдЬрд┐рдмрд╛рдд рдерд╛рдВрдмрд╡реЗрд▓.

рдХреНрд▓рд╛рдпрдВрдЯ рд▓рд╡рдХрд░рдЪ рд▓реАрдбрд░рдордзреАрд▓ рдмрджрд▓ рд▓рдХреНрд╖рд╛рдд рдШреЗрддрд╛рдд рдЖрдгрд┐ рдирд╡реАрди рд╕рд░реНрд╡реНрд╣рд░рд╡рд░ рд░реЗрдХреЙрд░реНрдб рдкрд╛рдард╡рдгреНрдпрд╛рд╕ рд╕реБрд░рд╡рд╛рдд рдХрд░рддрд╛рдд. рдиреЗрдЯрд╡рд░реНрдХ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХреЗрд▓реНрдпрд╛рд╡рд░, рдореВрд│ рдиреЗрддрд╛ рдкрд╛рд╣рддреЛ рдХреА рддреЛ рдпрд╛рдкреБрдвреЗ рдиреЗрддрд╛ рдирд╛рд╣реА рдЖрдгрд┐ рд▓реЙрдЧ рдбрд╛рдпрд╡реНрд╣рд░реНрдЬрди рдЯрд╛рд│рдгреНрдпрд╛рд╕рд╛рдареА рдирд╡реАрди рдиреЗрддреНрдпрд╛рдЪреНрдпрд╛ рдЕрдпрд╢рд╕реНрд╡реА рд╣реЛрдгреНрдпрд╛рдЪреНрдпрд╛ рд╡реЗрд│реА рдЕрд╕рд▓реЗрд▓реНрдпрд╛ HW рдореВрд▓реНрдпрд╛рдкрд░реНрдпрдВрдд рддреНрдпрд╛рдЪрд╛ рд▓реЙрдЧ рдХрдореА рдХрд░рддреЛ. рддреЗ рдирдВрддрд░ рдирд╡реАрди рдиреЗрддреНрдпрд╛рд▓рд╛ рд╡рд┐рдирдВрддреНрдпрд╛ рдЖрдгрдгреНрдпрд╛рд╕рд╛рдареА рдкрд╛рдард╡рдгреНрдпрд╛рд╕ рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрд▓. рдирд╡реАрди рдиреЗрддреНрдпрд╛рдХрдбреЗ рдирдХреНрдХрд▓ рди рдХреЗрд▓реЗрд▓реНрдпрд╛ рдореВрд│ рдиреЗрддреНрдпрд╛рдЪреЗ рд╕рд░реНрд╡ рд░реЗрдХреЙрд░реНрдб рдЧрдорд╛рд╡рд▓реЗ рдЬрд╛рддрд╛рдд. рдореНрд╣рдгрдЬреЗрдЪ, рджреЛрди рдиреЗрддреЗ рдХрд╛рдо рдХрд░рдд рдЕрд╕рддрд╛рдирд╛ рддреНрдпрд╛ рдХрд╛рд╣реА рд╕реЗрдХрдВрджрд╛рдд рдореВрд│ рдиреЗрддреНрдпрд╛рдиреЗ рдорд╛рдиреНрдп рди рдХреЗрд▓реЗрд▓реЗ рд╕рдВрджреЗрд╢ рдирд╖реНрдЯ рд╣реЛрддреАрд▓.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 29. рдкрд░рд┐рд╕реНрдерд┐рддреА 4. рдиреЗрдЯрд╡рд░реНрдХ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░ рдмреНрд░реЛрдХрд░ 1 рд╡рд░реАрд▓ рдиреЗрддрд╛ рдЕрдиреБрдпрд╛рдпреА рдмрдирддреЛ

рдкрд░рд┐рд╕реНрдерд┐рддреА 5: рдЕрдиреБрдпрд╛рдпреА рдЗрддрд░ рдХрд╛рдлреНрдХрд╛ рдиреЛрдбреНрд╕ рдЖрдгрд┐ рдЭреВрдХреАрдкрд░ рдпрд╛ рджреЛрдиреНрд╣реАрдВрдкрд╛рд╕реВрди рдкреВрд░реНрдгрдкрдгреЗ рд╡реЗрдЧрд│реЗ рдЖрд╣реЗ

рдЕрдиреБрдпрд╛рдпреА рдЗрддрд░ рдХрд╛рдлреНрдХрд╛ рдиреЛрдбреНрд╕ рдЖрдгрд┐ рдЭреВрдХреАрдкрд░ рдпрд╛ рджреЛрдиреНрд╣реАрдВрдкрд╛рд╕реВрди рдкреВрд░реНрдгрдкрдгреЗ рдЕрд▓рд┐рдкреНрдд рдЖрд╣реЗ. рдиреЗрдЯрд╡рд░реНрдХ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рд╣реЛрдИрдкрд░реНрдпрдВрдд рддреЛ рдлрдХреНрдд рд╕реНрд╡рддрдГрд▓рд╛ ISR рдордзреВрди рдХрд╛рдвреВрди рдЯрд╛рдХрддреЛ рдЖрдгрд┐ рдирдВрддрд░ рдЗрддрд░рд╛рдВрд╢реА рд╕рдВрдкрд░реНрдХ рд╕рд╛рдзрддреЛ.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 30. рдкрд░рд┐рд╕реНрдерд┐рддреА 5: рдЖрдпрд╕реЛрд▓реЗрдЯреЗрдб рдлреЙрд▓реЛрдЕрд░рд▓рд╛ ISR рдордзреВрди рдХрд╛рдвреВрди рдЯрд╛рдХрд▓реЗ рдЖрд╣реЗ

рдкрд░рд┐рд╕реНрдерд┐рддреА 6: рдиреЗрддрд╛ рд╣рд╛ рдЗрддрд░ рдХрд╛рдлреНрдХрд╛ рдиреЛрдбреНрд╕ рдЖрдгрд┐ рдЭреВрдХреАрдкрд░ рдпрд╛ рджреЛрдиреНрд╣реАрдВрдкрд╛рд╕реВрди рдкреВрд░реНрдгрдкрдгреЗ рд╡реЗрдЧрд│рд╛ рдЖрд╣реЗ

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 31. рдкрд░рд┐рд╕реНрдерд┐рддреА 6. рдиреЗрддрд╛ рдЖрдгрд┐ рджреЛрди рдЕрдиреБрдпрд╛рдпреА

рдиреЗрддрд╛ рддреНрдпрд╛рдЪреНрдпрд╛ рдЕрдиреБрдпрд╛рдпрд╛рдВрдкрд╛рд╕реВрди, рдирд┐рдпрдВрддреНрд░рдХ рдЖрдгрд┐ рдкреНрд░рд╛рдгреАрд╕рдВрдЧреНрд░рд╣рд╛рд▓рдпрд╛рдкрд╛рд╕реВрди рдкреВрд░реНрдгрдкрдгреЗ рдЕрд▓рд┐рдкреНрдд рдЖрд╣реЗ. рдереЛрдбреНрдпрд╛ рдХрд╛рд│рд╛рд╕рд╛рдареА рддреЗ рдХрдбреВрди рдкреНрд░рд╡реЗрд╢ рд╕реНрд╡реАрдХрд╛рд░рдд рд░рд╛рд╣реАрд▓ acks = 1.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 32. рдкрд░рд┐рд╕реНрдерд┐рддреА 6: рдиреЗрддреНрдпрд╛рд▓рд╛ рдЗрддрд░ рдХрд╛рдлреНрдХрд╛ рдЖрдгрд┐ рдЭреБрдХреАрдкрд░ рдиреЛрдбреНрд╕рдкрд╛рд╕реВрди рд╡реЗрдЧрд│реЗ рдХрд░рдгреЗ

рдореБрджрдд рд╕рдВрдкрд▓реНрдпрд╛рдирдВрддрд░ рд╡рд┐рдирдВрддреНрдпрд╛ рдорд┐рд│рд╛рд▓реНрдпрд╛ рдирд╛рд╣реАрдд replica.lag.time.max.ms, рддреЛ ISR рд▓рд╛ рд╕реНрд╡рддрдГрд▓рд╛ рдХрдореА рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░реЗрд▓, рдкрд░рдВрддреБ Zookeeper рд╢реА рд╕рдВрд╡рд╛рдж рдирд╕рд▓реНрдпрд╛рдореБрд│реЗ рддреЗ рддрд╕реЗ рдХрд░реВ рд╢рдХрдгрд╛рд░ рдирд╛рд╣реА, рдирдВрддрд░ рддреЗ рд▓реЗрдЦрди рд╕реНрд╡реАрдХрд╛рд░рдгреЗ рдерд╛рдВрдмрд╡реЗрд▓.

рджрд░рдореНрдпрд╛рди, рдЭреВрдХреАрдкрд░ рд╡реЗрдЧрд│реНрдпрд╛ рджрд▓рд╛рд▓рд╛рд▓рд╛ рдореГрдд рдореНрд╣рдгреВрди рдЪрд┐рдиреНрд╣рд╛рдВрдХрд┐рдд рдХрд░реЗрд▓ рдЖрдгрд┐ рдирд┐рдпрдВрддреНрд░рдХ рдирд╡реАрди рдиреЗрддрд╛ рдирд┐рд╡рдбреЗрд▓.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 33. рдкрд░рд┐рд╕реНрдерд┐рддреА 6. рджреЛрди рдиреЗрддреЗ

рдореВрд│ рдиреЗрддрд╛ рдХрд╛рд╣реА рд╕реЗрдХрдВрджрд╛рдВрд╕рд╛рдареА рдкреНрд░рд╡рд┐рд╖реНрдЯреНрдпрд╛ рд╕реНрд╡реАрдХрд╛рд░реВ рд╢рдХрддреЛ, рдкрд░рдВрддреБ рдирдВрддрд░ рдХреЛрдгрддреЗрд╣реА рд╕рдВрджреЗрд╢ рд╕реНрд╡реАрдХрд╛рд░рдгреЗ рдерд╛рдВрдмрд╡рддреЛ. рдирд╡реАрдирддрдо рдореЗрдЯрд╛рдбреЗрдЯрд╛рд╕рд╣ рдХреНрд▓рд╛рдпрдВрдЯ рджрд░ 60 рд╕реЗрдХрдВрджрд╛рдВрдиреА рдЕрджреНрдпрддрдирд┐рдд рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд. рддреНрдпрд╛рдВрдирд╛ рдиреЗрддрд╛ рдмрджрд▓рд╛рдЪреА рдорд╛рд╣рд┐рддреА рджрд┐рд▓реА рдЬрд╛рдИрд▓ рдЖрдгрд┐ рддреЗ рдирд╡реАрди рдиреЗрддреНрдпрд╛рд▓рд╛ рдПрдВрдЯреНрд░реА рдкрд╛рдард╡рдгреНрдпрд╛рд╕ рд╕реБрд░реБрд╡рд╛рдд рдХрд░рддреАрд▓.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 34. рдкрд░рд┐рд╕реНрдерд┐рддреА 6: рдЙрддреНрдкрд╛рджрдХ рдирд╡реАрди рдиреЗрддреНрдпрд╛рдХрдбреЗ рд╕реНрд╡рд┐рдЪ рдХрд░рддрд╛рдд

рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рдЧрдорд╛рд╡рд▓реНрдпрд╛рдореБрд│реЗ рдореВрд│ рдиреЗрддреНрдпрд╛рдиреЗ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕рд░реНрд╡ рдкреБрд╖реНрдЯреА рдХреЗрд▓реЗрд▓реНрдпрд╛ рдиреЛрдВрджреА рдЧрдорд╛рд╡рд▓реНрдпрд╛ рдЬрд╛рддреАрд▓. рдиреЗрдЯрд╡рд░реНрдХ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХреЗрд▓реНрдпрд╛рд╡рд░, рдореВрд│ рдиреЗрддрд╛ Zookeeper рджреНрд╡рд╛рд░реЗ рд╢реЛрдзреЗрд▓ рдХреА рддреЛ рдпрд╛рдкреБрдвреЗ рдиреЗрддрд╛ рдирд╛рд╣реА. рдордЧ рддреЛ рдирд┐рд╡рдбрдгреБрдХреАрдЪреНрдпрд╛ рд╡реЗрд│реА рдирд╡реАрди рдиреЗрддреНрдпрд╛рдЪреНрдпрд╛ HW рд╡рд░ рддреНрдпрд╛рдЪрд╛ рд▓реЙрдЧ рдХрд╛рдкреЗрд▓ рдЖрдгрд┐ рдЕрдиреБрдпрд╛рдпреА рдореНрд╣рдгреВрди рд╡рд┐рдирдВрддреНрдпрд╛ рдкрд╛рдард╡рдгреНрдпрд╛рд╕ рд╕реБрд░реБрд╡рд╛рдд рдХрд░реЗрд▓.

RabbitMQ рд╡рд┐ рдХрд╛рдлреНрдХрд╛: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 35. рдкрд░рд┐рд╕реНрдерд┐рддреА 6: рдиреЗрдЯрд╡рд░реНрдХ рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХреЗрд▓реНрдпрд╛рдирдВрддрд░ рдореВрд│ рдиреЗрддрд╛ рдЕрдиреБрдпрд╛рдпреА рдмрдирддреЛ

рдпрд╛ рдкрд░рд┐рд╕реНрдерд┐рддреАрдд, рддрд╛рд░реНрдХрд┐рдХ рдкреГрдердХреНрдХрд░рдг рдЕрд▓реНрдк рдХрд╛рд▓рд╛рд╡рдзреАрд╕рд╛рдареА рд╣реЛрдК рд╢рдХрддреЗ, рдкрд░рдВрддреБ рдХреЗрд╡рд│ рдЬрд░ acks = 1 ╨╕ min.insync.replicas рддрд╕реЗрдЪ 1. рддрд╛рд░реНрдХрд┐рдХ рдкреГрдердХреНрдХрд░рдг рдПрдХрддрд░ рдиреЗрдЯрд╡рд░реНрдХ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХреЗрд▓реНрдпрд╛рд╡рд░ рдЖрдкреЛрдЖрдк рд╕рдорд╛рдкреНрдд рд╣реЛрддреЗ, рдЬреЗрд╡реНрд╣рд╛ рдореВрд│ рдиреЗрддреНрдпрд╛рд▓рд╛ рдХрд│рддреЗ рдХреА рддреЛ рдЖрддрд╛ рдиреЗрддрд╛ рдирд╛рд╣реА, рдХрд┐рдВрд╡рд╛ рдЬреЗрд╡реНрд╣рд╛ рд╕рд░реНрд╡ рдХреНрд▓рд╛рдпрдВрдЯрд▓рд╛ рд╕рдордЬрддреЗ рдХреА рдиреЗрддрд╛ рдмрджрд▓рд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ рдирд╡реАрди рдиреЗрддреНрдпрд╛рд▓рд╛ рд▓рд┐рд╣рд╛рдпрд▓рд╛ рд╕реБрд░реБрд╡рд╛рдд рдХрд░рддреЛ - рдЬреЗ рдЖрдзреА рд╣реЛрдИрд▓ рддреЗ. рдХреЛрдгрддреНрдпрд╛рд╣реА рдкрд░рд┐рд╕реНрдерд┐рддреАрдд, рдХрд╛рд╣реА рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡рд▓реЗ рдЬрд╛рддреАрд▓, рдкрд░рдВрддреБ рдХреЗрд╡рд│ рд╕рд╣ acks = 1.

рдпрд╛ рдкрд░рд┐рд╕реНрдерд┐рддреАрдЪрд╛ рдЖрдгрдЦреА рдПрдХ рдкреНрд░рдХрд╛рд░ рдЖрд╣реЗ рдЬреЗрдереЗ, рдиреЗрдЯрд╡рд░реНрдХ рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реЛрдгреНрдпрд╛рдкреВрд░реНрд╡реА, рдЕрдиреБрдпрд╛рдпреА рдорд╛рдЧреЗ рдкрдбрд▓реЗ рдЖрдгрд┐ рдиреЗрддреНрдпрд╛рдиреЗ рдлрдХреНрдд рд╕реНрд╡рдд: рд▓рд╛ ISR рд╕рдВрдХреБрдЪрд┐рдд рдХреЗрд▓реЗ. рддреНрдпрд╛рдирдВрддрд░ рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рддреБрдЯрд▓реНрдпрд╛рдореБрд│реЗ рддреЗ рд╡реЗрдЧрд│реЗ рд╣реЛрддреЗ. рдирд╡реАрди рдиреЗрддрд╛ рдирд┐рд╡рдбрд▓рд╛ рдЬрд╛рддреЛ, рдкрд░рдВрддреБ рдореВрд│ рдиреЗрддрд╛ рдкреНрд░рд╡реЗрд╢ рд╕реНрд╡реАрдХрд╛рд░рдгреЗ рд╕реБрд░реВ рдареЗрд╡рддреЛ, рдЕрдЧрджреА acks = рд╕рд░реНрд╡, рдХрд╛рд░рдг рддреНрдпрд╛рдЪреНрдпрд╛рд╢рд┐рд╡рд╛рдп ISR рдордзреНрдпреЗ рджреБрд╕рд░реЗ рдХреЛрдгреА рдирд╛рд╣реА. рдиреЗрдЯрд╡рд░реНрдХ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХреЗрд▓реНрдпрд╛рд╡рд░ рд╣реЗ рд░реЗрдХреЙрд░реНрдб рдЧрдорд╛рд╡рд▓реЗ рдЬрд╛рддреАрд▓. рд╣рд╛ рдкрд░реНрдпрд╛рдп рдЯрд╛рд│рдгреНрдпрд╛рдЪрд╛ рдПрдХрдореЗрд╡ рдорд╛рд░реНрдЧ рдЖрд╣реЗ min.insync.replicas = 2.

рдкрд░рд┐рд╕реНрдерд┐рддреА 7: рдХрд╛рдлреНрдХрд╛ рдХрдВрдЯреНрд░реЛрд▓рд░ рдиреЛрдб рджреБрд╕рд░рд╛ рдХрд╛рдлреНрдХрд╛ рдиреЛрдб рдкрд╛рд╣реВ рд╢рдХрдд рдирд╛рд╣реА

рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ, рдПрдХрджрд╛ рдХрд╛рдлреНрдХрд╛ рдиреЛрдбрдЪреЗ рдХрдиреЗрдХреНрд╢рди рддреБрдЯрд▓реЗ рдХреА, рдХрдВрдЯреНрд░реЛрд▓рд░ рддреНрдпрд╛рд╡рд░ рдХреЛрдгрддреАрд╣реА рд▓реАрдбрд░ рдмрджрд▓ рдорд╛рд╣рд┐рддреА рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░реВ рд╢рдХрдгрд╛рд░ рдирд╛рд╣реА. рд╕рд░реНрд╡рд╛рдд рд╡рд╛рдИрдЯ рдкрд░рд┐рд╕реНрдерд┐рддреАрдд, рдпрд╛рдореБрд│реЗ рдкрд░рд┐рд╕реНрдерд┐рддреА 6 рдкреНрд░рдорд╛рдгреЗ рдЕрд▓реНрдкрдХрд╛рд▓реАрди рддрд╛рд░реНрдХрд┐рдХ рдкреГрдердХреНрдХрд░рдг рд╣реЛрдИрд▓. рдЕрдзрд┐рдХ рд╡реЗрд│рд╛, рдмреНрд░реЛрдХрд░ рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реНрдпрд╛рд╕ рдиреЗрддреГрддреНрд╡рд╛рд╕рд╛рдареА рдЙрдореЗрджрд╡рд╛рд░ рдмрдирдгрд╛рд░ рдирд╛рд╣реА.

рдкрд░рд┐рд╕реНрдерд┐рддреА 8: рдХрд╛рдлреНрдХрд╛ рдХрдВрдЯреНрд░реЛрд▓рд░рд▓рд╛ рдЭреВрдХреАрдкрд░ рджрд┐рд╕рдд рдирд╛рд╣реА

рдЭреВрдХреАрдкрд░рд▓рд╛ рдкрдбрд▓реЗрд▓реНрдпрд╛ рдХрдВрдЯреНрд░реЛрд▓рд░рдХрдбреВрди рдкрд┐рдВрдЧ рдорд┐рд│рдгрд╛рд░ рдирд╛рд╣реА рдЖрдгрд┐ рдХрдВрдЯреНрд░реЛрд▓рд░ рдореНрд╣рдгреВрди рдирд╡реАрди рдХрд╛рдлреНрдХрд╛ рдиреЛрдб рдирд┐рд╡рдбреЗрд▓. рдореВрд│ рдирд┐рдпрдВрддреНрд░рдХ рд╕реНрд╡рддрдГрд▓рд╛ рдЕрд╕реЗрдЪ рд╕рд╛рджрд░ рдХрд░рдгреЗ рд╕реБрд░реВ рдареЗрд╡реВ рд╢рдХрддреЛ, рдкрд░рдВрддреБ рддреНрдпрд╛рд▓рд╛ Zookeeper рдХрдбреВрди рд╕реВрдЪрдирд╛ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдд рдирд╛рд╣реАрдд, рддреНрдпрд╛рдореБрд│реЗ рддреНрдпрд╛рдЪреНрдпрд╛рдХрдбреЗ рдХреЛрдгрддреАрд╣реА рдХрд╛рд░реНрдпреЗ рдирд╕рддреАрд▓. рдПрдХрджрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░, рддреНрдпрд╛рд▓рд╛ рд╣реЗ рд╕рдордЬреЗрд▓ рдХреА рддреЛ рдЖрддрд╛ рдХрдВрдЯреНрд░реЛрд▓рд░ рдирд╛рд╣реА, рдкрд░рдВрддреБ рдирд┐рдпрдорд┐рдд рдХрд╛рдлреНрдХрд╛ рдиреЛрдб рдмрдирд▓рд╛ рдЖрд╣реЗ.

рдкрд░рд┐рд╕реНрдерд┐рддреАрдВрд╡рд░реВрди рдирд┐рд╖реНрдХрд░реНрд╖

рдЖрдореНрд╣реА рдкрд╛рд╣рддреЛ рдХреА рдлреЙрд▓реЛрдЕрд░ рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рдЧрдорд╛рд╡рд▓реНрдпрд╛рдореБрд│реЗ рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡рд▓рд╛ рдЬрд╛рдд рдирд╛рд╣реА, рдкрд░рдВрддреБ рдиреЗрдЯрд╡рд░реНрдХ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рд╣реЛрдИрдкрд░реНрдпрдВрдд рддрд╛рддреНрдкреБрд░рддреЗ рд░рд┐рдбрдВрдбрдВрд╕реА рдХрдореА рд╣реЛрддреЗ. рд╣реЗ, рдЕрд░реНрдерд╛рддрдЪ, рдПрдХ рдХрд┐рдВрд╡рд╛ рдЕрдзрд┐рдХ рдиреЛрдб рдЧрдорд╛рд╡рд▓реНрдпрд╛рд╕ рдбреЗрдЯрд╛ рдЧрдорд╛рд╡реВ рд╢рдХрддреЛ.

рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рддреБрдЯрд▓реНрдпрд╛рдореБрд│реЗ рдиреЗрддрд╛ рдЭреВрдХреАрдкрд░рдкрд╛рд╕реВрди рд╡рд┐рднрдХреНрдд рдЭрд╛рд▓реНрдпрд╛рд╕, рдпрд╛рдореБрд│реЗ рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡рд▓реЗ рдЬрд╛рдК рд╢рдХрддрд╛рдд. acks = 1. Zookeeper рд╕рд╣ рд╕рдВрдкреНрд░реЗрд╖рдгрд╛рдЪреНрдпрд╛ рдЕрднрд╛рд╡рд╛рдореБрд│реЗ рджреЛрди рдиреЗрддреНрдпрд╛рдВрдордзреНрдпреЗ рдереЛрдбрдХреНрдпрд╛рдд рддрд╛рд░реНрдХрд┐рдХ рд╡рд┐рднрд╛рдЬрди рд╣реЛрддреЗ. рд╣реА рд╕рдорд╕реНрдпрд╛ рдкреЕрд░рд╛рдореАрдЯрд░рджреНрд╡рд╛рд░реЗ рд╕реЛрдбрд╡рд┐рд▓реА рдЬрд╛рддреЗ acks = рд╕рд░реНрд╡.

рдкреЕрд░рд╛рдореАрдЯрд░ min.insync.replicas рджреЛрди рдХрд┐рдВрд╡рд╛ рдЕрдзрд┐рдХ рдкреНрд░рддрд┐рдХреГрддреАрдВрдордзреНрдпреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдЖрд╢реНрд╡рд╛рд╕рди рдорд┐рд│рддреЗ рдХреА рдЕрд╢рд╛ рдЕрд▓реНрдк-рдореБрджрддреАрдЪреНрдпрд╛ рдкрд░рд┐рд╕реНрдерд┐рддреАрдВрдЪрд╛ рдкрд░рд┐рдгрд╛рдо 6 рдкреНрд░рдорд╛рдгреЗ рд╣рд░рд╡рд▓реЗрд▓рд╛ рд╕рдВрджреЗрд╢ рд╣реЛрдгрд╛рд░ рдирд╛рд╣реА.

рд╣рд░рд╡рд▓реЗрд▓реНрдпрд╛ рд╕рдВрджреЗрд╢рд╛рдВрдЪрд╛ рд╕рд╛рд░рд╛рдВрд╢

рдЖрдкрдг рдХрд╛рдлреНрдХрд╛рдордзреАрд▓ рдбреЗрдЯрд╛ рдЧрдорд╛рд╡реВ рд╢рдХрддрд╛ рдЕрд╢рд╛ рд╕рд░реНрд╡ рдорд╛рд░реНрдЧрд╛рдВрдЪреА рдпрд╛рджреА рдХрд░реВрдпрд╛:

  • рд╕рдВрджреЗрд╢ рд╡рд╛рдкрд░реВрди рдкреБрд╖реНрдЯреА рдХреЗрд▓реА рдЕрд╕рд▓реНрдпрд╛рд╕ рдХреЛрдгрддрд╛рд╣реА рдиреЗрддрд╛ рдЕрдкрдпрд╢ acks = 1
  • рдиреЗрддреГрддреНрд╡рд╛рдЪреЗ рдХреЛрдгрддреЗрд╣реА рдЕрд╢реБрджреНрдз рд╕рдВрдХреНрд░рдордг, рдореНрд╣рдгрдЬреЗ, ISR рдмрд╛рд╣реЗрд░реАрд▓ рдЕрдиреБрдпрд╛рдпреА, рдЕрдЧрджреА рд╕рд╣ acks = рд╕рд░реНрд╡
  • рд╕рдВрджреЗрд╢ рд╡рд╛рдкрд░реВрди рдкреБрд╖реНрдЯреА рдЭрд╛рд▓реНрдпрд╛рд╕ рдиреЗрддреНрдпрд╛рд▓рд╛ Zookeeper рдкрд╛рд╕реВрди рд╡реЗрдЧрд│реЗ рдХрд░рдгреЗ acks = 1
  • рдЬреНрдпрд╛ рдиреЗрддреНрдпрд╛рдиреЗ рдЖрдзреАрдЪ ISR рдЧрдЯ рд╕рдВрдХреБрдЪрд┐рдд рдХреЗрд▓рд╛ рдЖрд╣реЗ рддреНрдпрд╛рдЪреЗ рд╕рдВрдкреВрд░реНрдг рдЕрд▓рдЧрд╛рд╡. рд╕рд░реНрд╡ рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡рд▓реЗ рдЬрд╛рддреАрд▓, рдЕрдЧрджреА acks = рд╕рд░реНрд╡. рд╣реЗ рддрд░рдЪ рдЦрд░реЗ рдЖрд╣реЗ min.insync.replicas=1.
  • рд╕рд░реНрд╡ рд╡рд┐рднрд╛рдЬрди рдиреЛрдбреНрд╕рдЪреЗ рдПрдХрд╛рдЪрд╡реЗрд│реА рдЕрдкрдпрд╢. рдореЗрдорд░реАрдордзреВрди рдореЗрд╕реЗрдЬ рд╕реНрд╡реАрдХрд╛рд░рд▓реЗ рдЬрд╛рдд рдЕрд╕рд▓реНрдпрд╛рдореБрд│реЗ, рдХрд╛рд╣реА рдбрд┐рд╕реНрдХрд╡рд░ рдЕрджреНрдпрд╛рдк рд▓рд┐рд╣реАрд▓реЗ рдЬрд╛рдК рд╢рдХрдд рдирд╛рд╣реАрдд. рд╕рд░реНрд╡реНрд╣рд░ рд░реАрдмреВрдЯ рдХреЗрд▓реНрдпрд╛рдирдВрддрд░, рдХрд╛рд╣реА рд╕рдВрджреЗрд╢ рдЧрд╣рд╛рд│ рдЕрд╕реВ рд╢рдХрддрд╛рдд.

рдЕрд╢реБрджреНрдз рдиреЗрддреГрддреНрд╡ рд╕рдВрдХреНрд░рдордгреЗ рдПрдХрддрд░ рддреНрдпрд╛рдВрдирд╛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░реВрди рдХрд┐рдВрд╡рд╛ рдХрд┐рдорд╛рди рджреЛрди рд░рд┐рдбрдВрдбрдВрд╕реА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реВрди рдЯрд╛рд│рддрд╛ рдпреЗрдК рд╢рдХрддрд╛рдд. рд╕рд░реНрд╡рд╛рдд рдЯрд┐рдХрд╛рдК рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдПрдХ рд╕рдВрдпреЛрдЬрди рдЖрд╣реЗ acks = рд╕рд░реНрд╡ ╨╕ min.insync.replicas 1 рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд.

RabbitMQ рдЖрдгрд┐ Kafka рдЪреНрдпрд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рд░реНрд╣рддреЗрдЪреА рдереЗрдЯ рддреБрд▓рдирд╛

рд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рд░реНрд╣рддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рджреЛрдиреНрд╣реА рдкреНрд▓реЕрдЯрдлреЙрд░реНрдо рдкреНрд░рд╛рдердорд┐рдХ рдЖрдгрд┐ рджреБрдпреНрдпрдо рдкреНрд░рддрд┐рдХреГрддреА рдкреНрд░рдгрд╛рд▓реА рд▓рд╛рдЧреВ рдХрд░рддрд╛рдд. рддрдерд╛рдкрд┐, RabbitMQ рд▓рд╛ рдЕрдХрд┐рд▓реАрд╕ рдЯрд╛рдЪ рдЖрд╣реЗ. рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░ рдкреБрдиреНрд╣рд╛ рдХрдиреЗрдХреНрдЯ рдХрд░рддрд╛рдирд╛, рдиреЛрдбреНрд╕ рддреНрдпрд╛рдВрдЪрд╛ рдбреЗрдЯрд╛ рдЯрд╛рдХреВрди рджреЗрддрд╛рдд рдЖрдгрд┐ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рдЕрд╡рд░реЛрдзрд┐рдд рдХреЗрд▓реЗ рдЬрд╛рддреЗ. рд╣рд╛ рджреБрд╣реЗрд░реА рддреНрд░рд╛рд╕ RabbitMQ рдордзреАрд▓ рдореЛрдареНрдпрд╛ рд░рд╛рдВрдЧрд╛рдВрдЪреНрдпрд╛ рджреАрд░реНрдШрд╛рдпреБрд╖реНрдпрд╛рд╡рд░ рдкреНрд░рд╢реНрдирдЪрд┐рдиреНрд╣ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЛ. рддреБрдореНрд╣рд╛рд▓рд╛ рдПрдХрддрд░ рдХрдореА рдЭрд╛рд▓реЗрд▓реА рд░рд┐рдбрдВрдбрдВрд╕реА рдХрд┐рдВрд╡рд╛ рд▓рд╛рдВрдм рдмреНрд▓реЙрдХрд┐рдВрдЧ рд╡реЗрд│рд╛ рд╕реНрд╡реАрдХрд╛рд░рд╛рд╡реА рд▓рд╛рдЧрддреАрд▓. рд░рд┐рдбрдВрдбрдВрд╕реА рдХрдореА рдХреЗрд▓реНрдпрд╛рдиреЗ рдореЛрдареНрдпрд╛ рдкреНрд░рдорд╛рдгрд╛рд╡рд░ рдбреЗрдЯрд╛ рдЧрдорд╛рд╡рдгреНрдпрд╛рдЪрд╛ рдзреЛрдХрд╛ рд╡рд╛рдврддреЛ. рдкрд░рдВрддреБ рдЬрд░ рд░рд╛рдВрдЧрд╛ рд▓рд╣рд╛рди рдЕрд╕рддреАрд▓, рддрд░ рд░рд┐рдбрдВрдбрдВрд╕реАрдЪреНрдпрд╛ рдХрд╛рд░рдгрд╛рд╕реНрддрд╡, рдХрдиреЗрдХреНрд╢рдирдЪреНрдпрд╛ рд╡рд╛рд░рдВрд╡рд╛рд░ рдкреНрд░рдпрддреНрдирд╛рдВрдЪрд╛ рд╡рд╛рдкрд░ рдХрд░реВрди рдЕрдиреБрдкрд▓рдмреНрдзрддреЗрдЪрд╛ рдЕрд▓реНрдк рдХрд╛рд▓рд╛рд╡рдзреА (рдХрд╛рд╣реА рд╕реЗрдХрдВрдж) рд╣рд╛рддрд╛рд│рд▓рд╛ рдЬрд╛рдК рд╢рдХрддреЛ.

рдХрд╛рдлреНрдХрд╛рд▓рд╛ рд╣реА рд╕рдорд╕реНрдпрд╛ рдирд╛рд╣реА. рд╣реЗ рдХреЗрд╡рд│ рдиреЗрддрд╛ рдЖрдгрд┐ рдЕрдиреБрдпрд╛рдпреА рдпрд╛рдВрдЪреНрдпрд╛рддреАрд▓ рднрд┐рдиреНрдирддреЗрдЪреНрдпрд╛ рдмрд┐рдВрджреВрдкрд╛рд╕реВрди рдбреЗрдЯрд╛ рдЯрд╛рдХреВрди рджреЗрддреЗ. рд╕рд░реНрд╡ рд╕рд╛рдорд╛рдпрд┐рдХ рдбреЗрдЯрд╛ рдЬрддрди рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рдпрд╛рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, рдкреНрд░рддрд┐рдХреГрддреА рдкреНрд░рдгрд╛рд▓реА рдЕрд╡рд░реЛрдзрд┐рдд рдХрд░рдд рдирд╛рд╣реА. рдиреЗрддрд╛ рдирд╡реАрди рдлреЙрд▓реЛрдЕрд░ рдкрдХрдбрдд рдЕрд╕рддрд╛рдирд╛ рдкреЛрд╕реНрдЯ рд╕реНрд╡реАрдХрд╛рд░рдгреЗ рд╕реБрд░реВ рдареЗрд╡рддреЛ, рддреНрдпрд╛рдореБрд│реЗ рдбреЗрд╡реНрд╣рдкрд╕рд╛рдареА, рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рд╕рд╛рдореАрд▓ рд╣реЛрдгреЗ рдХрд┐рдВрд╡рд╛ рдкреБрдиреНрд╣рд╛ рд╕рд╛рдореАрд▓ рд╣реЛрдгреЗ рд╣реЗ рдПрдХ рдХреНрд╖реБрд▓реНрд▓рдХ рдХрд╛рдо рд╣реЛрддреЗ. рдЕрд░реНрдерд╛рдд, рдкреНрд░рддрд┐рдХреГрддреА рджрд░рдореНрдпрд╛рди рдиреЗрдЯрд╡рд░реНрдХ рдмрдБрдбрд╡рд┐рдбреНрде рд╕рд╛рд░рдЦреНрдпрд╛ рд╕рдорд╕реНрдпрд╛ рдЕрдЬреВрдирд╣реА рдЖрд╣реЗрдд. рддреБрдореНрд╣реА рдПрдХрд╛рдЪ рд╡реЗрд│реА рдЕрдиреЗрдХ рдлреЙрд▓реЛрдЕрд░реНрд╕ рдЬреЛрдбрд▓реНрдпрд╛рд╕, рддреБрдореНрд╣рд╛рд▓рд╛ рдмрдБрдбрд╡рд┐рдбреНрде рдорд░реНрдпрд╛рджрд╛ рдпреЗрдК рд╢рдХрддреЗ.

рдЬреЗрд╡реНрд╣рд╛ рдХреНрд▓рд╕реНрдЯрд░рдордзреАрд▓ рдПрдХрд╛рдзрд┐рдХ рд╕рд░реНрд╡реНрд╣рд░ рдПрдХрд╛рдЪ рд╡реЗрд│реА рдЕрдпрд╢рд╕реНрд╡реА рд╣реЛрддрд╛рдд рддреЗрд╡реНрд╣рд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рд░реНрд╣рддреЗрдордзреНрдпреЗ RabbitMQ рдХрд╛рдлреНрдХрд╛рдкреЗрдХреНрд╖рд╛ рд╢реНрд░реЗрд╖реНрда рдЖрд╣реЗ. рдЖрдореНрд╣реА рдЖрдзреАрдЪ рдореНрд╣рдЯрд▓реНрдпрд╛рдкреНрд░рдорд╛рдгреЗ, рдорд╛рд╕реНрдЯрд░ рдЖрдгрд┐ рд╕рд░реНрд╡ рдорд┐рд░рд░рджреНрд╡рд╛рд░реЗ рдбрд┐рд╕реНрдХрд╡рд░ рд╕рдВрджреЗрд╢ рд▓рд┐рд╣рд┐рд▓реНрдпрд╛рдирдВрддрд░рдЪ RabbitMQ рдкреНрд░рдХрд╛рд╢рдХрд╛рд▓рд╛ рдкреБрд╖реНрдЯреАрдХрд░рдг рдкрд╛рдард╡рддреЗ. рдкрд░рдВрддреБ рд╣реЗ рджреЛрди рдХрд╛рд░рдгрд╛рдВрд╕рд╛рдареА рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рд▓рдВрдм рдЬреЛрдбрддреЗ:

  • fsync рджрд░ рдХрд╛рд╣реА рд╢рдВрднрд░ рдорд┐рд▓рд┐рд╕реЗрдХрдВрджрд╛рдВрдиреА
  • рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб (рдиреЗрдЯ рдЯрд┐рдХ) рдЪреА рдЙрдкрд▓рдмреНрдзрддрд╛ рддрдкрд╛рд╕рдгрд╛рд▒реНрдпрд╛ рдкреЕрдХреЗрдЯреНрд╕рдЪреНрдпрд╛ рдЖрдпреБрд╖реНрдпрднрд░рд╛рдирдВрддрд░рдЪ рдЖрд░рд╢рд╛рдЪреЗ рдмрд┐рдШрд╛рдб рд▓рдХреНрд╖рд╛рдд рдпреЗрдК рд╢рдХрддреЗ. рдЬрд░ рдЖрд░рд╕рд╛ рдордВрджрд╛рд╡рд▓рд╛ рдХрд┐рдВрд╡рд╛ рдкрдбрд▓рд╛ рддрд░ рдпрд╛рдореБрд│реЗ рд╡рд┐рд▓рдВрдм рд╣реЛрддреЛ.

рдХрд╛рдлреНрдХрд╛рдЪрд╛ рдкреИрдЬ рдЕрд╕рд╛ рдЖрд╣реЗ рдХреА рдЬрд░ рдПрдЦрд╛рджрд╛ рд╕рдВрджреЗрд╢ рдПрдХрд╛рдзрд┐рдХ рдиреЛрдбреНрд╕рдордзреНрдпреЗ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХреЗрд▓рд╛ рдЕрд╕реЗрд▓ рддрд░ рддреЗ рдореЗрдорд░реАрд╡рд░ рдЖрджрд│рд▓реНрдпрд╛рдмрд░реЛрдмрд░ рддреЗ рд╕рдВрджреЗрд╢ рд╕реНрд╡реАрдХрд╛рд░реВ рд╢рдХрддрд╛рдд. рдпрд╛рдореБрд│реЗ, рдХреЛрдгрддреНрдпрд╛рд╣реА рдкреНрд░рдХрд╛рд░рдЪреЗ рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡рдгреНрдпрд╛рдЪрд╛ рдзреЛрдХрд╛ рдЕрд╕рддреЛ (рдЕрдЧрджреА acks = рд╕рд░реНрд╡, min.insync.replicas=2) рдПрдХрд╛рдЪ рд╡реЗрд│реА рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реНрдпрд╛рд╕.

рдПрдХрдВрджрд░реАрдд, рдХрд╛рдлреНрдХрд╛ рдЙрддреНрддрдо рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░ рдХрд╛рд░реНрдпрдкреНрд░рджрд░реНрд╢рди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреЗ рдЖрдгрд┐ рдХреНрд▓рд╕реНрдЯрд░реНрд╕рд╕рд╛рдареА рдЧреНрд░рд╛рдЙрдВрдб рдЕрдк рдкрд╛рд╕реВрди рдбрд┐рдЭрд╛рдЗрди рдХреЗрд▓реЗрд▓реЗ рдЖрд╣реЗ. рд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рд░реНрд╣рддреЗрд╕рд╛рдареА рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реНрдпрд╛рд╕ рдЕрдиреБрдпрд╛рдпрд╛рдВрдЪреА рд╕рдВрдЦреНрдпрд╛ 11 рдкрд░реНрдпрдВрдд рд╡рд╛рдврд╡рд┐рд▓реА рдЬрд╛рдК рд╢рдХрддреЗ. рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рдирдордзреНрдпреЗ рдкреНрд░рддрд┐рдХреГрддреА рдШрдЯрдХ 5 рдЖрдгрд┐ рдкреНрд░рддрд┐рдХреГрддреАрдВрдЪреА рдХрд┐рдорд╛рди рд╕рдВрдЦреНрдпрд╛ min.insync.replicas=3 рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡рдгреЗ рд╣реА рдЕрддреНрдпрдВрдд рджреБрд░реНрдорд┐рд│ рдШрдЯрдирд╛ рдмрдирд╡реЗрд▓. рдЬрд░ рддреБрдордЪреА рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛ рдпрд╛ рдкреНрд░рддрд┐рдХреГрддреА рдкреНрд░рдорд╛рдг рдЖрдгрд┐ рд░рд┐рдбрдВрдбрдВрд╕реА рдкрд╛рддрд│реАрд▓рд╛ рд╕рдорд░реНрдерди рджреЗрдд рдЕрд╕реЗрд▓, рддрд░ рддреБрдореНрд╣реА рд╣рд╛ рдкрд░реНрдпрд╛рдп рдирд┐рд╡рдбреВ рд╢рдХрддрд╛.

рд▓рд╣рд╛рди рд░рд╛рдВрдЧрд╛рдВрд╕рд╛рдареА RabbitMQ рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧ рдЪрд╛рдВрдЧрд▓реЗ рдЖрд╣реЗ. рдкрдг рдЬреЗрд╡реНрд╣рд╛ рдЬрд╛рд╕реНрдд рд░рд╣рджрд╛рд░реА рдЕрд╕рддреЗ рддреЗрд╡реНрд╣рд╛ рдЫреЛрдЯреНрдпрд╛ рд░рд╛рдВрдЧрд╛рд╣реА рд▓рд╡рдХрд░ рд╡рд╛рдвреВ рд╢рдХрддрд╛рдд. рдПрдХрджрд╛ рд░рд╛рдВрдЧрд╛ рдореЛрдареНрдпрд╛ рдЭрд╛рд▓реНрдпрд╛ рдХреА, рддреБрдореНрд╣рд╛рд▓рд╛ рдЙрдкрд▓рдмреНрдзрддрд╛ рдЖрдгрд┐ рд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рд░реНрд╣рддрд╛ рдпрд╛рдордзреНрдпреЗ рдХрдареЛрд░ рдирд┐рд╡рдб рдХрд░рд╛рд╡реА рд▓рд╛рдЧреЗрд▓. RabbitMQ рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧ рдЧреИрд░-рдирдореБрдиреЗрджрд╛рд░ рдкрд░рд┐рд╕реНрдерд┐рддреАрдВрд╕рд╛рдареА рд╕рд░реНрд╡реЛрддреНрддрдо рдЕрдиреБрдХреВрд▓ рдЖрд╣реЗ рдЬреЗрдереЗ RabbitMQ рдЪреНрдпрд╛ рд▓рд╡рдЪрд┐рдХрддреЗрдЪреЗ рдлрд╛рдпрджреЗ рддреНрдпрд╛рдЪреНрдпрд╛ рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧрдЪреНрдпрд╛ рдХреЛрдгрддреНрдпрд╛рд╣реА рддреЛрдЯреЗрдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рдЖрд╣реЗрдд.

рдореЛрдареНрдпрд╛ рд░рд╛рдВрдЧрд╛рдВрд╕рд╛рдареА RabbitMQ рдЪреНрдпрд╛ рдЕрд╕реБрд░рдХреНрд╖рд┐рддрддреЗрдЪрд╛ рдПрдХ рдЙрддрд╛рд░рд╛ рдореНрд╣рдгрдЬреЗ рддреНрдпрд╛рдВрдирд╛ рдЕрдиреЗрдХ рд▓рд╣рд╛рди рд░рд╛рдВрдЧрд╛рдВрдордзреНрдпреЗ рд╡рд┐рднрд╛рдЧрдгреЗ. рдЬрд░ рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рдВрдкреВрд░реНрдг рд░рд╛рдВрдЧреЗрдЪреА рд╕рдВрдкреВрд░реНрдг рдСрд░реНрдбрд░ рдЖрд╡рд╢реНрдпрдХ рдирд╕реЗрд▓, рдкрд░рдВрддреБ рдХреЗрд╡рд│ рд╕рдВрдмрдВрдзрд┐рдд рд╕рдВрджреЗрд╢ (рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреНрд▓рд╛рдпрдВрдЯрдЪреЗ рд╕рдВрджреЗрд╢), рдХрд┐рдВрд╡рд╛ рдХрд╛рд╣реАрд╣реА рдСрд░реНрдбрд░ рди рдХреЗрд▓реНрдпрд╛рд╕, рд╣рд╛ рдкрд░реНрдпрд╛рдп рд╕реНрд╡реАрдХрд╛рд░реНрдп рдЖрд╣реЗ: рдорд╛рдЭрд╛ рдкреНрд░рдХрд▓реНрдк рдкрд╣рд╛. рд░рд┐рдмреЕрд▓реЗрдВрд╕рд░ рд░рд╛рдВрдЧ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА (рдкреНрд░рдХрд▓реНрдк рдЕрджреНрдпрд╛рдк рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЯрдкреНрдкреНрдпрд╛рд╡рд░ рдЖрд╣реЗ).

рд╢реЗрд╡рдЯреА, рд░реЕрдмрд┐рдЯрдПрдордХреНрдпреВ рдЖрдгрд┐ рдХрд╛рдлреНрдХрд╛ рдпрд╛ рджреЛрдиреНрд╣реАрдВрдЪреНрдпрд╛ рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧ рдЖрдгрд┐ рдкреНрд░рддрд┐рдХреГрддреА рдпрдВрддреНрд░рдгреЗрддреАрд▓ рдЕрдиреЗрдХ рдмрдЧрдмрджреНрджрд▓ рд╡рд┐рд╕рд░реВ рдирдХрд╛. рдХрд╛рд▓рд╛рдВрддрд░рд╛рдиреЗ, рдкреНрд░рдгрд╛рд▓реА рдЕрдзрд┐рдХ рдкрд░рд┐рдкрдХреНрд╡ рдЖрдгрд┐ рд╕реНрдерд┐рд░ рдЭрд╛рд▓реНрдпрд╛ рдЖрд╣реЗрдд, рдкрд░рдВрддреБ рдХреЛрдгрддрд╛рд╣реА рд╕рдВрджреЗрд╢ рдХрдзреАрд╣реА рдиреБрдХрд╕рд╛рдирд╛рдкрд╛рд╕реВрди 100% рд╕реБрд░рдХреНрд╖рд┐рдд рд░рд╛рд╣рдгрд╛рд░ рдирд╛рд╣реА! рд╢рд┐рд╡рд╛рдп, рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░рдордзреНрдпреЗ рдореЛрдареНрдпрд╛ рдкреНрд░рдорд╛рдгрд╛рдд рдЕрдкрдШрд╛рдд рд╣реЛрддрд╛рдд!

рдорд╛рдЭреЗ рдХрд╛рд╣реА рдЪреБрдХрд▓реЗ рдЕрд╕реЗрд▓, рдЪреВрдХ рдЭрд╛рд▓реА рдЕрд╕реЗрд▓ рдХрд┐рдВрд╡рд╛ рддреБрдореНрд╣реА рдХреЛрдгрддреНрдпрд╛рд╣реА рдореБрджреНрджреНрдпрд╛рдВрд╢реА рдЕрд╕рд╣рдордд рдЕрд╕рд╛рд▓ рддрд░ рдореЛрдХрд│реНрдпрд╛ рдордирд╛рдиреЗ рдЯрд┐рдкреНрдкрдгреА рд▓рд┐рд╣рд╛ рдХрд┐рдВрд╡рд╛ рдорд╛рдЭреНрдпрд╛рд╢реА рд╕рдВрдкрд░реНрдХ рд╕рд╛рдзрд╛.

рдорд▓рд╛ рдЕрдиреЗрдХрджрд╛ рд╡рд┐рдЪрд╛рд░рд▓реЗ рдЬрд╛рддреЗ: тАЬрдХрд╛рдлреНрдХрд╛ рдХрд┐рдВрд╡рд╛ рд░реЕрдмрд┐рдЯрдПрдордХреНрдпреВ рдХрд╛рдп рдирд┐рд╡рдбрд╛рдпрдЪреЗ?тАЭ, тАЬрдХреЛрдгрддреЗ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдо рдЪрд╛рдВрдЧрд▓реЗ рдЖрд╣реЗ?тАЭ. рд╕рддреНрдп рд╣реЗ рдЖрд╣реЗ рдХреА рддреЗ рдЦрд░реЛрдЦрд░ рддреБрдордЪреА рдкрд░рд┐рд╕реНрдерд┐рддреА, рд╡рд░реНрддрдорд╛рди рдЕрдиреБрднрд╡ рдЗрддреНрдпрд╛рджреАрдВрд╡рд░ рдЕрд╡рд▓рдВрдмреВрди рдЕрд╕рддреЗ. рдореА рдорд╛рдЭреЗ рдордд рдорд╛рдВрдбрдгреНрдпрд╛рд╕ рд╕рдВрдХреЛрдЪ рдХрд░рдд рдЖрд╣реЗ рдХрд╛рд░рдг рд╕рд░реНрд╡ рд╡рд╛рдкрд░ рдкреНрд░рдХрд░рдгрд╛рдВрд╕рд╛рдареА рдЖрдгрд┐ рд╕рдВрднрд╛рд╡реНрдп рдорд░реНрдпрд╛рджрд╛рдВрд╕рд╛рдареА рдПрдХрд╛ рд╡реНрдпрд╛рд╕рдкреАрдард╛рдЪреА рд╢рд┐рдлрд╛рд░рд╕ рдХрд░рдгреЗ рд╣реЗ рдЦреВрдк рдЬрд╛рд╕реНрдд рд╕реЛрдкреЗ рдЖрд╣реЗ. рдореА рд▓реЗрдЦрд╛рдВрдЪреА рд╣реА рдорд╛рд▓рд┐рдХрд╛ рд▓рд┐рд╣рд┐рд▓реА рдЖрд╣реЗ рдЬреЗрдгреЗрдХрд░реВрди рддреБрдореНрд╣реА рддреБрдордЪреЗ рд╕реНрд╡рддрдГрдЪреЗ рдордд рддрдпрд╛рд░ рдХрд░реВ рд╢рдХрддрд╛.

рдорд▓рд╛ рдЕрд╕реЗ рдореНрд╣рдгрд╛рдпрдЪреЗ рдЖрд╣реЗ рдХреА рджреЛрдиреНрд╣реА рдпрдВрддреНрд░рдгрд╛ рдпрд╛ рдХреНрд╖реЗрддреНрд░рд╛рддреАрд▓ рдиреЗрддреЗ рдЖрд╣реЗрдд. рдореА рдереЛрдбрд╛рд╕рд╛ рдкрдХреНрд╖рдкрд╛рддреА рдЕрд╕реВ рд╢рдХрддреЛ рдХрд╛рд░рдг рдорд╛рдЭреНрдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕рдЪреНрдпрд╛ рдЕрдиреБрднрд╡рд╛рд╡рд░реВрди рдореА рд╣рдореА рд╕рдВрджреЗрд╢ рдСрд░реНрдбрд░рд┐рдВрдЧ рдЖрдгрд┐ рд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рд░реНрд╣рддрд╛ рдпрд╛рд╕рд╛рд░рдЦреНрдпрд╛ рдЧреЛрд╖реНрдЯреАрдВрдирд╛ рдорд╣рддреНрддреНрд╡ рджреЗрддреЛ.

рдореА рдЗрддрд░ рддрдВрддреНрд░рдЬреНрдЮрд╛рди рдкрд╛рд╣рддреЛ рдЬреНрдпрд╛рдордзреНрдпреЗ рд╣реА рд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рд░реНрд╣рддрд╛ рдЖрдгрд┐ рд╣рдореА рдСрд░реНрдбрд░рд┐рдВрдЧрдЪреА рдХрдорддрд░рддрд╛ рдЖрд╣реЗ, рдирдВрддрд░ рдореА RabbitMQ рдЖрдгрд┐ Kafka рдХрдбреЗ рдкрд╛рд╣рддреЛ рдЖрдгрд┐ рдпрд╛ рджреЛрдиреНрд╣реА рдкреНрд░рдгрд╛рд▓реАрдВрдЪреЗ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдореВрд▓реНрдп рд▓рдХреНрд╖рд╛рдд рдШреЗрддреЛ.

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛