RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛

рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рд╣реЗ рдореЛрдареЗ рд╡рд┐рд╖рдп рдЖрд╣реЗрдд, рдореНрд╣рдгреВрди рдЖрдореНрд╣реА RabbitMQ рдЖрдгрд┐ Kafka рдпрд╛рдВрдирд╛ рд╕реНрд╡рддрдВрддреНрд░ рд▓реЗрдЦ рджреЗрдК. рд╣рд╛ рд▓реЗрдЦ RabbitMQ рдмрджреНрджрд▓ рдЖрд╣реЗ рдЖрдгрд┐ рдкреБрдврдЪрд╛ рд▓реЗрдЦ RabbitMQ рдЪреНрдпрд╛ рддреБрд▓рдиреЗрдд рдХрд╛рдлреНрдХрд╛ рдмрджреНрджрд▓ рдЖрд╣реЗ. рд╣рд╛ рдПрдХ рд▓рд╛рдВрдм рд▓реЗрдЦ рдЖрд╣реЗ, рдореНрд╣рдгреВрди рд╕реНрд╡рдд: рд▓рд╛ рдЖрд░рд╛рдорджрд╛рдпрдХ рдмрдирд╡рд╛.

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

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

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

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

рд╕рд┐рдВрдЧрд▓ рдиреЛрдб рд▓рд╡рдЪрд┐рдХрддрд╛ рдЖрджрд┐рдо

рд▓рд╡рдЪрд┐рдХ рд░рд╛рдВрдЧ/рд░рд╛рдЙрдЯрд┐рдВрдЧ

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

рдЬреЗрд╡реНрд╣рд╛ рдиреЛрдб рд░реАрд╕реНрдЯрд╛рд░реНрдЯ рд╣реЛрддреЛ рддреЗрд╡реНрд╣рд╛ рдЕрд╕реНрдерд┐рд░ рд░рд╛рдВрдЧ рдЖрдгрд┐ рд░рд╛рдЙрдЯрд┐рдВрдЧ рдХрд╛рдврд▓реЗ рдЬрд╛рддрд╛рдд.

рд╕рддрдд рд╕рдВрджреЗрд╢

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

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 1. рд╢рд╛рд╢реНрд╡рддрддрд╛ рдореЕрдЯреНрд░рд┐рдХреНрд╕

рд░рд╛рдВрдЧ рдорд┐рд░рд░рд┐рдВрдЧрд╕рд╣ рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧ

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

рд░рд╛рдВрдЧ рдорд┐рд░рд░рд┐рдВрдЧ:

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

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 2. рд░рд╛рдВрдЧ рдорд┐рд░рд░рд┐рдВрдЧ

рдорд┐рд░рд░рд┐рдВрдЧ рдпреЛрдЧреНрдп рдзреЛрд░рдгрд╛рджреНрд╡рд╛рд░реЗ рд╕реЗрдЯ рдХреЗрд▓реЗ рдЬрд╛рддреЗ. рддреНрдпрд╛рдордзреНрдпреЗ рддреБрдореНрд╣реА рдкреНрд░рддрд┐рдХреГрддреА рдЧреБрдгрд╛рдВрдХ рдЖрдгрд┐ рдиреЛрдбреНрд╕ рджреЗрдЦреАрд▓ рдирд┐рд╡рдбреВ рд╢рдХрддрд╛ рдЬреНрдпрд╛рд╡рд░ рд░рд╛рдВрдЧ рдЕрд╕рд╛рд╡реА. рдЙрджрд╛рд╣рд░рдгреЗ:

  • ha-mode: all
  • ha-mode: exactly, ha-params: 2 (рдПрдХ рдорд╛рд╕реНрдЯрд░ рдЖрдгрд┐ рдПрдХ рдЖрд░рд╕рд╛)
  • ha-mode: nodes, ha-params: rabbit@node1, rabbit@node2

рдкреНрд░рдХрд╛рд╢рдХ рдкреБрд╖реНрдЯреАрдХрд░рдг

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

рдлреЗрд▓рдУрд╡реНрд╣рд░ рд░рд╛рдВрдЧ

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

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 3. рдПрдХрд╛рдзрд┐рдХ рдорд┐рд░рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд░рд╛рдВрдЧрд╛ рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪреА рдзреЛрд░рдгреЗ

рдмреНрд░реЛрдХрд░ 3 рдЦрд╛рд▓реА рдЬрд╛рддреЛ. рд▓рдХреНрд╖рд╛рдд рдШреНрдпрд╛ рдХреА рдмреНрд░реЛрдХрд░ 2 рд╡рд░реАрд▓ рдХреНрдпреВ рд╕реА рдорд┐рд░рд░рд▓рд╛ рдорд╛рд╕реНрдЯрд░ рдореНрд╣рдгреВрди рдкрджреЛрдиреНрдирддреА рджрд┐рд▓реА рдЬрд╛рдд рдЖрд╣реЗ. рд╣реЗ рджреЗрдЦреАрд▓ рд▓рдХреНрд╖рд╛рдд рдШреНрдпрд╛ рдХреА рдмреНрд░реЛрдХрд░ 1 рд╡рд░ рд░рд╛рдВрдЧреЗрдд C рд╕рд╛рдареА рдПрдХ рдирд╡реАрди рдорд┐рд░рд░ рддрдпрд╛рд░ рдХреЗрд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ. RabbitMQ рдиреЗрд╣рдореА рддреБрдордЪреНрдпрд╛ рдкреЙрд▓рд┐рд╕реАрдордзреНрдпреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкреНрд░рддрд┐рдХреГрддреА рдШрдЯрдХ рд░рд╛рдЦрдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░рддреЗ.

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 4. рдмреНрд░реЛрдХрд░ 3 рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓рд╛, рдЬреНрдпрд╛рдореБрд│реЗ рд░рд╛рдВрдЧ C рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реА

рдкреБрдвреАрд▓ рдмреНрд░реЛрдХрд░ 1 рдкрдбрддреЛ! рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдлрдХреНрдд рдПрдХ рджрд▓рд╛рд▓ рд╢рд┐рд▓реНрд▓рдХ рдЖрд╣реЗ. рд░рд╛рдВрдЧ рдмреА рдорд┐рд░рд░рд▓рд╛ рдорд╛рд╕реНрдЯрд░ рдореНрд╣рдгреВрди рдмрдврддреА рджрд┐рд▓реА рдЬрд╛рддреЗ.

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рдЕрдВрдЬреАрд░ 5

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

рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд, рдмреНрд░реЛрдХрд░ 1 рдЪреЗ рдиреБрдХрд╕рд╛рди рдкреВрд░реНрдг рдЭрд╛рд▓реЗ, рдЬрд╕реЗ рдбреЗрдЯрд╛ рд╣реЛрддрд╛, рддреНрдпрд╛рдореБрд│реЗ рдорд┐рд░рд░ рдирд╕рд▓реЗрд▓реА рд░рд╛рдВрдЧ B рдкреВрд░реНрдгрдкрдгреЗ рдЧрдорд╛рд╡рд▓реА.

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

рдмреНрд░реЛрдХрд░ 3 рдкреБрдиреНрд╣рд╛ рдСрдирд▓рд╛рдЗрди рдЖрд╣реЗ, рддреНрдпрд╛рдореБрд│реЗ рд░рд╛рдВрдЧ A рдЖрдгрд┐ B рддреНрдпрд╛рдВрдЪреНрдпрд╛ HA рдзреЛрд░рдгрд╛рдВрдЪреЗ рд╕рдорд╛рдзрд╛рди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рддреНрдпрд╛рд╡рд░ рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реЗ рдЖрд░рд╕реЗ рдкрд░рдд рдорд┐рд│рд╡рддрд╛рдд. рдкрдг рдЖрддрд╛ рд╕рд░реНрд╡ рдореБрдЦреНрдп рд░рд╛рдВрдЧрд╛ рдПрдХрд╛ рдиреЛрдбрд╡рд░ рдЖрд╣реЗрдд! рд╣реЗ рдЖрджрд░реНрд╢ рдирд╛рд╣реА, рдиреЛрдбреНрд╕ рджрд░рдореНрдпрд╛рди рд╕рдорд╛рди рд╡рд┐рддрд░рдг рдЪрд╛рдВрдЧрд▓реЗ рдЖрд╣реЗ. рджреБрд░реНрджреИрд╡рд╛рдиреЗ, рдорд╛рд╕реНрдЯрд░реНрд╕рдЪреЗ рдкреБрдирд░реНрд╕рдВрддреБрд▓рди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдпреЗрдереЗ рдлрд╛рд░рд╕реЗ рдкрд░реНрдпрд╛рдп рдирд╛рд╣реАрдд. рдЖрдореНрд╣реА рдирдВрддрд░ рдпрд╛ рд╕рдорд╕реНрдпреЗрд╡рд░ рдкрд░рдд рдпреЗрдК рдХрд╛рд░рдг рдЖрдореНрд╣рд╛рд▓рд╛ рдкреНрд░рдердо рд░рд╛рдВрдЧ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рдкрд╛рд╣рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ.

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 7. рдмреНрд░реЛрдХрд░ 3 рд╕реЗрд╡реЗрдд рдкрд░рдд рдпреЗрддреЛ. рдПрдХрд╛ рдиреЛрдбрд╡рд░ рд╕рд░реНрд╡ рдореБрдЦреНрдп рд░рд╛рдВрдЧрд╛!

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

рд╕рдордХреНрд░рдорд┐рдд рдХрд░рд╛

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

рд╣реЗ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рд╕реНрд╡рдпрдВрдЪрд▓рд┐рддрдкрдгреЗ рдХрд┐рдВрд╡рд╛ рд╡реНрдпрдХреНрддрд┐рдЪрд▓рд┐рддрдкрдгреЗ рдХреЗрд▓реЗ рдЬрд╛рддреЗ рдЖрдгрд┐ рд░рд╛рдВрдЧ рдзреЛрд░рдг рд╡рд╛рдкрд░реВрди рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗ рдЬрд╛рддреЗ. рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкрд╛рд╣реВ.

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

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

рдЖрддрд╛ рдЖрдореНрд╣реА рдмреНрд░реЛрдХрд░ 3 рдЧрдорд╛рд╡рдд рдЖрд╣реЛрдд.

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 9. рджрд▓рд╛рд▓ 3 рдкрдбрд▓реЗ

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

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 10. рд░рд╛рдВрдЧреЗрдд A рдЪреНрдпрд╛ рдирд╡реАрди рдорд┐рд░рд░рд▓рд╛ рд╕рд░реНрд╡ рд╡рд┐рджреНрдпрдорд╛рди рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛рдд, рдкрд░рдВрддреБ рд░рд╛рдВрдЧреЗрдЪреНрдпрд╛ B рдЪреНрдпрд╛ рдирд╡реАрди рдорд┐рд░рд░рд▓рд╛ рдорд┐рд│рдд рдирд╛рд╣реА.

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

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 11. рд╕рдВрджреЗрд╢ рди рдЧрдорд╛рд╡рддрд╛ рд░рд╛рдВрдЧ A рдмреНрд░реЛрдХрд░ 1 рд╡рд░ рдкрд░рдд рдпреЗрдИрд▓

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

рдЖрдореНрд╣реА рдкреНрд░рд╡реЗрд╢рдпреЛрдЧреНрдпрддрд╛ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЭ рдХрд░реВ рдЗрдЪреНрдЫрд┐рдд рдЕрд╕рд▓реНрдпрд╛рд╕, рдирдВрддрд░ рдзреЛрд░рдг ha-promote-on-failure рдордзреНрдпреЗ рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ рдиреЗрд╣рдореА. рд╣реЗ рдбреАрдлреЙрд▓реНрдЯ рдореВрд▓реНрдп рдЖрд╣реЗ, рддреНрдпрд╛рдореБрд│реЗ рддреБрдореНрд╣реА рдзреЛрд░рдг рдЕрдЬрд┐рдмрд╛рдд рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реВ рд╢рдХрдд рдирд╛рд╣реА. рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд, рдЖрдореНрд╣реА рдЕрдирд┐рд╡рд╛рд░реНрдпрдкрдгреЗ рдЕрд╕рдВрдХреНрд░рдорд┐рдд рдорд┐рд░рд░рдордзреНрдпреЗ рдЕрдкрдпрд╢рд╛рдВрдирд╛ рдЕрдиреБрдорддреА рджреЗрдд тАЛтАЛрдЖрд╣реЛрдд. рдпрд╛рдореБрд│реЗ рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡рд▓реЗ рдЬрд╛рддреАрд▓, рдкрд░рдВрддреБ рд░рд╛рдВрдЧ рд╡рд╛рдЪрдиреАрдп рдЖрдгрд┐ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рдпреЛрдЧреНрдп рд░рд╛рд╣реАрд▓.

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 12. рд╕рдВрджреЗрд╢ рди рдЧрдорд╛рд╡рддрд╛ рд░рд╛рдВрдЧ A рдмреНрд░реЛрдХрд░ 3 рд╡рд░ рдкрд░рдд рдЖрдгрд▓реА рдЬрд╛рддреЗ. рджрд╣рд╛ рдореЗрд╕реЗрдЬ рдЧрдорд╛рд╡реВрди рд░рд╛рдВрдЧ B рдмреНрд░реЛрдХрд░ 3 рд╡рд░ рдкрд░рдд рдпреЗрддреЗ

рдЖрдореНрд╣реА рджреЗрдЦреАрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реВ рд╢рдХрддреЛ ha-promote-on-failure рдЕрд░реНрде рдордзреНрдпреЗ when-synced. рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд, рдорд┐рд░рд░рд╡рд░ рдкрд░рдд рдпреЗрдгреНрдпрд╛рдРрд╡рдЬреА, рдмреНрд░реЛрдХрд░ 1 рддреНрдпрд╛рдЪреНрдпрд╛ рдбреЗрдЯрд╛рд╕рд╣ рдСрдирд▓рд╛рдЗрди рдореЛрдбрд╡рд░ рдкрд░рдд рдпреЗрдИрдкрд░реНрдпрдВрдд рд░рд╛рдВрдЧ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрд▓. рддреЗ рдкрд░рдд рдЖрд▓реНрдпрд╛рдирдВрддрд░, рдореБрдЦреНрдп рд░рд╛рдВрдЧ рдмреНрд░реЛрдХрд░ 1 рд╡рд░ рдХреЛрдгрддреНрдпрд╛рд╣реА рдбреЗрдЯрд╛ рдЧрдорд╛рд╡рд▓реНрдпрд╛рд╢рд┐рд╡рд╛рдп рдкрд░рдд рдпреЗрддреЗ. рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рддрддреЗрд╕рд╛рдареА рдЙрдкрд▓рдмреНрдзрддреЗрдЪрд╛ рддреНрдпрд╛рдЧ рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рдкрд░рдВрддреБ рд╣рд╛ рдПрдХ рдзреЛрдХрд╛рджрд╛рдпрдХ рдореЛрдб рдЖрд╣реЗ рдЬреНрдпрд╛рдореБрд│реЗ рд╕рдВрдкреВрд░реНрдг рдбреЗрдЯрд╛ рдирд╖реНрдЯ рд╣реЛрдК рд╢рдХрддреЛ, рдЬреНрдпрд╛рдЪрд╛ рдЖрдореНрд╣реА рд▓рд╡рдХрд░рдЪ рд╡рд┐рдЪрд╛рд░ рдХрд░реВ.

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 13. рдмреНрд░реЛрдХрд░ 1 рдЧрдорд╛рд╡рд▓реНрдпрд╛рдирдВрддрд░ рд░рд╛рдВрдЧ B рдЕрдиреБрдкрд▓рдмреНрдз рд░рд╛рд╣рддреЗ

рддреБрдореНрд╣реА рд╡рд┐рдЪрд╛рд░реВ рд╢рдХрддрд╛, "рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рдХрдзреАрд╣реА рди рд╡рд╛рдкрд░рдгреЗ рдЪрд╛рдВрдЧрд▓реЗ рдЖрд╣реЗ рдХрд╛?" рдЙрддреНрддрд░ рдЕрд╕реЗ рдЖрд╣реЗ рдХреА рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рд╣реЗ рдмреНрд▓реЙрдХрд┐рдВрдЧ рдСрдкрд░реЗрд╢рди рдЖрд╣реЗ. рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рджрд░рдореНрдпрд╛рди, рдореБрдЦреНрдп рд░рд╛рдВрдЧ рдХреЛрдгрддреЗрд╣реА рд╡рд╛рдЪрди рдХрд┐рдВрд╡рд╛ рд▓реЗрдЦрди рдСрдкрд░реЗрд╢рди рдХрд░реВ рд╢рдХрдд рдирд╛рд╣реА!

рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкрд╛рд╣реВ. рдЖрддрд╛ рдЦреВрдк рд▓рд╛рдВрдм рд░рд╛рдВрдЧрд╛ рд▓рд╛рдЧрд▓реНрдпрд╛ рдЖрд╣реЗрдд. рддреЗ рдЗрддрдХреНрдпрд╛ рдЖрдХрд╛рд░рд╛рдд рдХрд╕реЗ рд╡рд╛рдвреВ рд╢рдХрддрд╛рдд? рдЕрдиреЗрдХ рдХрд╛рд░рдгрд╛рдВрдореБрд│реЗ:

  • рд░рд╛рдВрдЧрд╛ рд╕рдХреНрд░рд┐рдпрдкрдгреЗ рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рдд рдирд╛рд╣реАрдд
  • рдпрд╛ рд╣рд╛рдп-рд╕реНрдкреАрдб рд░рд╛рдВрдЧрд╛ рдЖрд╣реЗрдд рдЖрдгрд┐ рд╕рдзреНрдпрд╛ рдЧреНрд░рд╛рд╣рдХ рдордВрдж рдЖрд╣реЗрдд
  • рд╣реА рд╣рд╛рдп-рд╕реНрдкреАрдб рд░рд╛рдВрдЧ рдЖрд╣реЗ, рдПрдХ рддреНрд░реБрдЯреА рдЖрд╣реЗ рдЖрдгрд┐ рдЧреНрд░рд╛рд╣рдХ рдкрдХрдбрдд рдЖрд╣реЗрдд

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

рдЖрддрд╛ рдмреНрд░реЛрдХрд░ 3 рдкрдбрддреЛ.

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 15. рдмреНрд░реЛрдХрд░ 3 рдлреЙрд▓реНрд╕, рдкреНрд░рддреНрдпреЗрдХ рд░рд╛рдВрдЧреЗрдд рдПрдХ рдорд╛рд╕реНрдЯрд░ рдЖрдгрд┐ рдорд┐рд░рд░ рд╕реЛрдбреВрди

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

рддрдерд╛рдкрд┐, рд░рд╛рдВрдЧ B рд╕рдВрдкреВрд░реНрдг рдХрд╛рд▓рд╛рд╡рдзреАрдд рдЙрдкрд▓рдмреНрдз рд░рд╛рд╣рддреЗ. рддрд┐рдиреЗ рдкреНрд░рд╡реЗрд╢рдпреЛрдЧреНрдпрддреЗрд╕рд╛рдареА рдХрд╛рд╣реА рдЕрдирд╛рд╡рд╢реНрдпрдХрддреЗрдЪрд╛ рддреНрдпрд╛рдЧ рдХреЗрд▓рд╛.

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 16. рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рджрд░рдореНрдпрд╛рди рд░рд╛рдВрдЧ рдЕрдиреБрдкрд▓рдмреНрдз рд░рд╛рд╣рддреЗ

рджреЛрди рддрд╛рд╕рд╛рдВрдирдВрддрд░, рд░рд╛рдВрдЧ A рджреЗрдЦреАрд▓ рдЙрдкрд▓рдмреНрдз рд╣реЛрдИрд▓ рдЖрдгрд┐ рдкреБрдиреНрд╣рд╛ рд╡рд╛рдЪрдгреЗ рдЖрдгрд┐ рд▓рд┐рд╣рд┐рдгреЗ рд╕реНрд╡реАрдХрд╛рд░рдгреЗ рд╕реБрд░реВ рдХрд░реВ рд╢рдХрддреЗ.

рдЕрджреНрдпрддрдиреЗ

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

  • always= рдЕрд╕рдВрдХреНрд░рдорд┐рдд рдорд┐рд░рд░рдордзреНрдпреЗ рд╕рдВрдХреНрд░рдордг рд╕рдХреНрд╖рдо рдХреЗрд▓реЗ рдЖрд╣реЗ
  • when-synced= рдлрдХреНрдд рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдорд┐рд░рд░рдордзреНрдпреЗ рд╕рдВрдХреНрд░рдордг, рдЕрдиреНрдпрдерд╛ рд░рд╛рдВрдЧ рд╡рд╛рдЪрдиреАрдп рдЖрдгрд┐ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рдпреЛрдЧреНрдп рдмрдирддреЗ. рджрд▓рд╛рд▓ рдкрд░рдд рдпреЗрддрд╛рдЪ рд░рд╛рдВрдЧ рдкреБрдиреНрд╣рд╛ рд╕реЗрд╡реЗрдд рдпреЗрддреЗ

рдПрдХ рдирд╛ рдПрдХ рдорд╛рд░реНрдЧ, рдореЛрдареНрдпрд╛ рд░рд╛рдВрдЧрд╛рдВрд╕рд╣ рддреБрдореНрд╣рд╛рд▓рд╛ рдбреЗрдЯрд╛ рдЧрдорд╛рд╡рдгреЗ рдЖрдгрд┐ рдЕрдиреБрдкрд▓рдмреНрдзрддрд╛ рдпрд╛рдкреИрдХреА рдПрдХ рдирд┐рд╡рдбрд╛рд╡рд╛ рд▓рд╛рдЧреЗрд▓.

рдЬреЗрд╡реНрд╣рд╛ рдЙрдкрд▓рдмреНрдзрддрд╛ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛ рд╕реБрдзрд╛рд░рддреЗ

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

рдпреЗрдереЗ рдЖрдкрдг рдЦрд╛рд▓реАрд▓ рдЧреЛрд╖реНрдЯреАрдВрдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ:

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

рдЬрд░ рдкреНрд░рдХрд╛рд╢рдХ рдлрдХреНрдд рд╕рдВрджреЗрд╢ рдЯрд╛рдХреВрди рджреЗрдК рд╢рдХрдд рдЕрд╕реЗрд▓, рддрд░ рдкреНрд░рддреНрдпрдХреНрд╖рд╛рдд, рдкреНрд░рд╡реЗрд╢рдпреЛрдЧреНрдпрддрд╛ рд╕реБрдзрд╛рд░рд▓реНрдпрд╛рдиреЗ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рддрддрд╛ рджреЗрдЦреАрд▓ рд╕реБрдзрд╛рд░рддреЗ.

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

ha-promote-on-failure=when-sync рдХрд░рддрд╛рдирд╛ рд╕рдорд╕реНрдпрд╛

рдЖрдпрдбрд┐рдпрд╛ ha-promote-on-failure= рдЬреЗрд╡реНрд╣рд╛-рд╕рд┐рдВрдХ рдХреЗрд▓реЗ рдЬрд╛рддреЗ рдЖрдореНрд╣реА рдЕрд╕рдВрдХреНрд░рдорд┐рдд рдорд┐рд░рд░рд╡рд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдгреЗ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рддреЛ рдЖрдгрд┐ рддреНрдпрд╛рджреНрд╡рд╛рд░реЗ рдбреЗрдЯрд╛ рдЧрдорд╛рд╡рдгреЗ рдЯрд╛рд│рддреЛ. рд░рд╛рдВрдЧ рд╡рд╛рдЪрдиреАрдп рдХрд┐рдВрд╡рд╛ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рдпреЛрдЧреНрдп рд░рд╛рд╣рддреЗ. рддреНрдпрд╛рдРрд╡рдЬреА, рдЖрдореНрд╣реА рдХреНрд░реЕрд╢ рдЭрд╛рд▓реЗрд▓реНрдпрд╛ рдмреНрд░реЛрдХрд░рд▓рд╛ рддреНрдпрд╛рдЪреНрдпрд╛ рдбреЗрдЯрд╛рд╕рд╣ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░рддреЛ рдЬреЗрдгреЗрдХрд░реВрди рддреЛ рдбреЗрдЯрд╛ рдЧрдорд╛рд╡рд▓реНрдпрд╛рд╢рд┐рд╡рд╛рдп рдорд╛рд╕реНрдЯрд░ рдореНрд╣рдгреВрди рдкреБрдиреНрд╣рд╛ рдХрд╛рд░реНрдп рдХрд░реВ рд╢рдХреЗрд▓.

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

рддреНрдпрд╛рдЪ рдирд╛рд╡рд╛рдЪрд╛ рдиреЛрдб рдкреБрдиреНрд╣рд╛ рдЬреЛрдбрдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА рдХреНрд▓рд╕реНрдЯрд░рд▓рд╛ рд╣рд░рд╡рд▓реЗрд▓рд╛ рдиреЛрдб рд╡рд┐рд╕рд░рдгреНрдпрд╛рд╕ рд╕рд╛рдВрдЧрддреЛ (рдХрдорд╛рдВрдбрд╕рд╣ rabbitmqctl forget_cluster_node) рдЖрдгрд┐ рддреНрдпрд╛рдЪ рд╣реЛрд╕реНрдЯрдирд╛рд╡рд╛рдиреЗ рдирд╡реАрди рдмреНрд░реЛрдХрд░ рд╕реБрд░реВ рдХрд░рд╛. рдХреНрд▓рд╕реНрдЯрд░ рд╣рд░рд╡рд▓реЗрд▓рд╛ рдиреЛрдб рд▓рдХреНрд╖рд╛рдд рдареЗрд╡рдд рдЕрд╕рддрд╛рдирд╛, рддреЛ рдЬреБрдиреА рд░рд╛рдВрдЧ рдЖрдгрд┐ рдЕрд╕рдВрдХреНрд░рдорд┐рдд рдорд┐рд░рд░ рд▓рдХреНрд╖рд╛рдд рдареЗрд╡рддреЛ. рдЬреЗрд╡реНрд╣рд╛ рдПрдЦрд╛рджреНрдпрд╛ рдХреНрд▓рд╕реНрдЯрд░рд▓рд╛ рдЕрдирд╛рде рдиреЛрдб рд╡рд┐рд╕рд░рдгреНрдпрд╛рд╕ рд╕рд╛рдВрдЧрд┐рддрд▓реЗ рдЬрд╛рддреЗ рддреЗрд╡реНрд╣рд╛ рддреА рд░рд╛рдВрдЧ рджреЗрдЦреАрд▓ рд╡рд┐рд╕рд░рд▓реА рдЬрд╛рддреЗ. рдЖрддрд╛ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рддреЗ рдкреБрдиреНрд╣рд╛ рдШреЛрд╖рд┐рдд рдХрд░рд╛рд╡реЗ рд▓рд╛рдЧреЗрд▓. рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдбреЗрдЯрд╛рдЪреНрдпрд╛ рдЖрдВрд╢рд┐рдХ рд╕рдВрдЪрд╛рд╕рд╣ рдорд┐рд░рд░ рдЕрд╕рд▓реЗ рддрд░реАрд╣реА рдЖрдореНрд╣реА рд╕рд░реНрд╡ рдбреЗрдЯрд╛ рдЧрдорд╛рд╡рд▓рд╛. рдиреЙрди-рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬреНрдб рдорд┐рд░рд░рд╡рд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдгреЗ рдЪрд╛рдВрдЧрд▓реЗ рд╣реЛрдИрд▓!

рдореНрд╣рдгреВрди, рд╕рд╣ рд╕рдВрдпреЛрдЬрдирд╛рдд рдореЕрдиреНрдпреБрдЕрд▓ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди (рдЖрдгрд┐ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭ рдХрд░рдгреНрдпрд╛рдд рдЕрдпрд╢рд╕реНрд╡реА). ha-promote-on-failure=when-synced, рдорд╛рдЭреНрдпрд╛ рдорддреЗ, рдЦреВрдк рдзреЛрдХрд╛рджрд╛рдпрдХ. рджрд╕реНрддрдРрд╡рдЬрд╛рдВрдЪреЗ рдореНрд╣рдгрдгреЗ рдЖрд╣реЗ рдХреА рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рддрддреЗрд╕рд╛рдареА рд╣рд╛ рдкрд░реНрдпрд╛рдп рдЕрд╕реНрддрд┐рддреНрд╡рд╛рдд рдЖрд╣реЗ, рдкрд░рдВрддреБ рд╣рд╛ рджреБрдзрд╛рд░реА рдЪрд╛рдХреВ рдЖрд╣реЗ.

рдорд╛рд╕реНрдЯрд░ рдкреБрдирд░реНрд╕рдВрддреБрд▓рди

рд╡рдЪрди рджрд┐рд▓реНрдпрд╛рдкреНрд░рдорд╛рдгреЗ, рдЖрдореНрд╣реА рдПрдХ рдХрд┐рдВрд╡рд╛ рдЕрдиреЗрдХ рдиреЛрдбреНрд╕рд╡рд░ рд╕рд░реНрд╡ рдорд╛рд╕реНрдЯрд░реНрд╕ рдЬрдорд╛ рд╣реЛрдгреНрдпрд╛рдЪреНрдпрд╛ рд╕рдорд╕реНрдпреЗрдХрдбреЗ рдкрд░рдд рдпреЗрдК. рд╣реЗ рд░реЛрд▓рд┐рдВрдЧ рдХреНрд▓рд╕реНрдЯрд░ рдЕрдкрдбреЗрдЯрдЪреНрдпрд╛ рдкрд░рд┐рдгрд╛рдореА рджреЗрдЦреАрд▓ рд╣реЛрдК рд╢рдХрддреЗ. рддреАрди-рдиреЛрдб рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ, рд╕рд░реНрд╡ рдорд╛рд╕реНрдЯрд░ рд░рд╛рдВрдЧ рдПрдХ рдХрд┐рдВрд╡рд╛ рджреЛрди рдиреЛрдбреНрд╕рд╡рд░ рдЬрдорд╛ рд╣реЛрддреАрд▓.

рдорд╛рд╕реНрдЯрд░реНрд╕рдЪреЗ рд╕рдВрддреБрд▓рди рджреЛрди рдХрд╛рд░рдгрд╛рдВрдореБрд│реЗ рд╕рдорд╕реНрдпрд╛рдкреНрд░рдзрд╛рди рдЕрд╕реВ рд╢рдХрддреЗ:

  • рдкреБрдирд░реНрд╕рдВрддреБрд▓рди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХреЛрдгрддреАрд╣реА рдЪрд╛рдВрдЧрд▓реА рд╕рд╛рдзрдиреЗ рдирд╛рд╣реАрдд
  • рд░рд╛рдВрдЧ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди

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

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

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

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

рдЖрддрд╛ RabbitMQ рдХреНрд▓рд╕реНрдЯрд░реНрд╕ рдиреЗрдЯрд╡рд░реНрдХ рд╡рд┐рднрд╛рдЬрдирд╛рдВрд╕рд╣ рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддрд╛рдд рддреЗ рдкрд╛рд╣реВ.

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

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

RabbitMQ рд╕рд╣ рдЖрдордЪреНрдпрд╛рдХрдбреЗ рджреЛрди рдореБрдЦреНрдп рдкрд░реНрдпрд╛рдп рдЖрд╣реЗрдд:

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

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

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 17. рдореБрдЦреНрдп рд░рд╛рдВрдЧ рдЖрдгрд┐ рджреЛрди рдорд┐рд░рд░, рдкреНрд░рддреНрдпреЗрдХ рд╡реЗрдЧрд│реНрдпрд╛ рдиреЛрдбрд╡рд░. рдордЧ рдиреЗрдЯрд╡рд░реНрдХ рдмрд┐рдШрд╛рдб рд╣реЛрддреЛ рдЖрдгрд┐ рдПрдХ рдЖрд░рд╕рд╛ рд╡реЗрдЧрд│рд╛ рд╣реЛрддреЛ. рд╡рд┐рднрдХреНрдд рдиреЛрдб рдкрд╛рд╣рддреЛ рдХреА рдЗрддрд░ рджреЛрди рдЦрд╛рд▓реА рдкрдбрд▓реЗ рдЖрд╣реЗрдд рдЖрдгрд┐ рддреНрдпрд╛рдЪреЗ рдЖрд░рд╕реЗ рдорд╛рд╕реНрдЯрд░рд▓рд╛ рдкреНрд░реЛрддреНрд╕рд╛рд╣рди рджреЗрддрд╛рдд. рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдЖрддрд╛ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рдпреЛрдЧреНрдп рдЖрдгрд┐ рд╡рд╛рдЪрдиреАрдп рдЕрд╢рд╛ рджреЛрди рдореБрдЦреНрдп рд░рд╛рдВрдЧрд╛ рдЖрд╣реЗрдд.

рдкреНрд░рдХрд╛рд╢рдХрд╛рдВрдиреА рджреЛрдиреНрд╣реА рдорд╛рд╕реНрдЯрд░реНрд╕рдирд╛ рдбреЗрдЯрд╛ рдкрд╛рдард╡рд▓реНрдпрд╛рд╕, рдЖрдореНрд╣реА рд░рд╛рдВрдЧреЗрдЪреНрдпрд╛ рджреЛрди рднрд┐рдиреНрди рдкреНрд░рддреАрдВрд╕рд╣ рд╕рдорд╛рдкреНрдд рдХрд░рддреЛ.

RabbitMQ рдЪреЗ рд╡рд┐рд╡рд┐рдз рдореЛрдб рдЙрдкрд▓рдмреНрдзрддрд╛ рдХрд┐рдВрд╡рд╛ рд╕реБрд╕рдВрдЧрддрддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛рдд.

рджреБрд░реНрд▓рдХреНрд╖ рдореЛрдб (рдбреАрдлреЙрд▓реНрдЯ)

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

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 18. рддреАрди рдкреНрд░рдХрд╛рд╢рдХ рддреАрди рджрд▓рд╛рд▓рд╛рдВрд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдЖрд╣реЗрдд. рдЕрдВрддрд░реНрдЧрдд, рдХреНрд▓рд╕реНрдЯрд░ рд╕рд░реНрд╡ рд╡рд┐рдирдВрддреНрдпрд╛ рдмреНрд░реЛрдХрд░ 2 рд╡рд░реАрд▓ рдореБрдЦреНрдп рд░рд╛рдВрдЧреЗрдд рдиреЗрддреЛ.

рдЖрддрд╛ рдЖрдкрдг рдмреНрд░реЛрдХрд░ 3 рдЧрдорд╛рд╡рдд рдЖрд╣реЛрдд. рддреЛ рдкрд╛рд╣рддреЛ рдХреА рдЗрддрд░ рдмреНрд░реЛрдХрд░реНрд╕ рдЦрд╛рд▓реА рдкрдбрд▓реЗ рдЖрд╣реЗрдд рдЖрдгрд┐ рдорд╛рд╕реНрдЯрд░рд▓рд╛ рддреНрдпрд╛рдЪрд╛ рдЖрд░рд╕рд╛ рджрд╛рдЦрд╡рддреЛ. рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░реЗ рддрд╛рд░реНрдХрд┐рдХ рдкреГрдердХреНрдХрд░рдг рд╣реЛрддреЗ.

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 19. рддрд╛рд░реНрдХрд┐рдХ рд╡рд┐рднрд╛рдЧрдгреА (рд╕реНрдкреНрд▓рд┐рдЯ-рдмреНрд░реЗрди). рд░реЗрдХреЙрд░реНрдб рджреЛрди рдореБрдЦреНрдп рд░рд╛рдВрдЧрд╛рдВрдордзреНрдпреЗ рдЬрд╛рддрд╛рдд рдЖрдгрд┐ рджреЛрди рдкреНрд░рддреА рд╡реЗрдЧрд│реНрдпрд╛ рд╣реЛрддрд╛рдд.

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

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 20. рдкреНрд░рд╢рд╛рд╕рдХ рдмреНрд░реЛрдХрд░ 3 рдЕрдХреНрд╖рдо рдХрд░рддреЛ.

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 21. рдкреНрд░рд╢рд╛рд╕рдХ рдмреНрд░реЛрдХрд░ 3 рд╕реБрд░реВ рдХрд░рддреЛ рдЖрдгрд┐ рддреЛ рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рд╕рд╛рдореАрд▓ рд╣реЛрддреЛ, рддреЗрдереЗ рд░рд╛рд╣рд┐рд▓реЗрд▓реЗ рд╕рд░реНрд╡ рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡рддреЛ.

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

рдСрдЯреЛрд╣реЗрд▓ рдореЛрдб

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

рдЕрд▓реНрдкрд╕рдВрдЦреНрдпрд╛рдХ рдореЛрдбрд▓рд╛ рд╡рд┐рд░рд╛рдо рджреНрдпрд╛

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

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 22. рддреАрди рдкреНрд░рдХрд╛рд╢рдХ рддреАрди рджрд▓рд╛рд▓рд╛рдВрд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдЖрд╣реЗрдд. рдЕрдВрддрд░реНрдЧрдд, рдХреНрд▓рд╕реНрдЯрд░ рд╕рд░реНрд╡ рд╡рд┐рдирдВрддреНрдпрд╛ рдмреНрд░реЛрдХрд░ 2 рд╡рд░реАрд▓ рдореБрдЦреНрдп рд░рд╛рдВрдЧреЗрдд рдиреЗрддреЛ.

рдмреНрд░реЛрдХрд░ 1 рдЖрдгрд┐ 2 рдирдВрддрд░ рдмреНрд░реЛрдХрд░ 3 рдордзреВрди рд╡рд┐рднрдХреНрдд рд╣реЛрддрд╛рдд. рддреНрдпрд╛рдВрдЪреНрдпрд╛ рдорд┐рд░рд░рд▓рд╛ рдорд╛рд╕реНрдЯрд░рдордзреНрдпреЗ рдкрджреЛрдиреНрдирддреА рджреЗрдгреНрдпрд╛рдРрд╡рдЬреА, рдмреНрд░реЛрдХрд░ 3 рдирд┐рд▓рдВрдмрд┐рдд рдХрд░рддреЛ рдЖрдгрд┐ рдЕрдиреБрдкрд▓рдмреНрдз рд╣реЛрддреЛ.

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 23. рдмреНрд░реЛрдХрд░ 3 рд╡рд┐рд░рд╛рдо рджреЗрддреЛ, рд╕рд░реНрд╡ рдХреНрд▓рд╛рдпрдВрдЯ рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ рдХрд░рддреЛ рдЖрдгрд┐ рдХрдиреЗрдХреНрд╢рди рд╡рд┐рдирдВрддреНрдпрд╛ рдирд╛рдХрд╛рд░рддреЛ.

рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХреЗрд▓реНрдпрд╛рд╡рд░, рддреЗ рдХреНрд▓рд╕реНрдЯрд░рд╡рд░ рдкрд░рдд рдпреЗрддреЗ.

рдмреНрд░реЛрдХрд░ 3 рд╡рд░ рдореБрдЦреНрдп рд░рд╛рдВрдЧ рдЖрд╣реЗ рдЕрд╕реЗ рджреБрд╕рд░реЗ рдЙрджрд╛рд╣рд░рдг рдкрд╛рд╣реВ.

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 24. рдмреНрд░реЛрдХрд░ 3 рд╡рд░ рдореБрдЦреНрдп рд░рд╛рдВрдЧ.

рдордЧ рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рддреНрдпрд╛рдЪ рдиреБрдХрд╕рд╛рди рд╣реЛрддреЗ. рдмреНрд░реЛрдХрд░ 3 рд╡рд┐рд░рд╛рдо рджреЗрддреЛ рдХрд╛рд░рдг рддреЛ рд▓рд╣рд╛рди рдмрд╛рдЬреВрд▓рд╛ рдЖрд╣реЗ. рджреБрд╕-рдпрд╛ рдмрд╛рдЬреВрд▓рд╛, рдиреЛрдбреНрд╕ рдкрд╛рд╣рддрд╛рдд рдХреА рдмреНрд░реЛрдХрд░ 3 рдмрдВрдж рдЭрд╛рд▓рд╛ рдЖрд╣реЗ, рдореНрд╣рдгреВрди рдмреНрд░реЛрдХрд░ 1 рдЖрдгрд┐ 2 рдордзреАрд▓ рдЬреБрдиреНрдпрд╛ рдорд┐рд░рд░рд▓рд╛ рдорд╛рд╕реНрдЯрд░ рдореНрд╣рдгреВрди рдкрджреЛрдиреНрдирддреА рджрд┐рд▓реА рдЬрд╛рддреЗ.

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 25. рдмреНрд░реЛрдХрд░ 2 рдЕрдиреБрдкрд▓рдмреНрдз рдЕрд╕рд▓реНрдпрд╛рд╕ рдмреНрд░реЛрдХрд░ 3 рд╡рд░ рд╕рдВрдХреНрд░рдордг.

рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХреЗрд▓реНрдпрд╛рд╡рд░, рдмреНрд░реЛрдХрд░ 3 рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рд╕рд╛рдореАрд▓ рд╣реЛрдИрд▓.

RabbitMQ vs Kafka: рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛
рддрд╛рдВрджреВрд│. 26. рдХреНрд▓рд╕реНрдЯрд░ рд╕рд╛рдорд╛рдиреНрдп рдСрдкрд░реЗрд╢рдирд╡рд░ рдкрд░рдд рдЖрд▓рд╛ рдЖрд╣реЗ.

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

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

рдЧреНрд░рд╛рд╣рдХ рдХрдиреЗрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдгреЗ

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

рдЖрдордЪреЗ рдкрд░реНрдпрд╛рдп:

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

рдирд┐рд╖реНрдХрд░реНрд╖

RabbitMQ рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧрдЪреЗ рдлрд╛рдпрджреЗ рдЖрдгрд┐ рддреЛрдЯреЗ рдЖрд╣реЗрдд. рд╕рд░реНрд╡рд╛рдд рдЧрдВрднреАрд░ рддреЛрдЯреЗ рдЖрд╣реЗрдд:

  • рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рд╕рд╛рдореАрд▓ рд╣реЛрддрд╛рдирд╛, рдиреЛрдбреНрд╕ рддреНрдпрд╛рдВрдЪрд╛ рдбреЗрдЯрд╛ рдЯрд╛рдХреВрди рджреЗрддрд╛рдд;
  • рдмреНрд▓реЙрдХрд┐рдВрдЧ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рдирдореБрд│реЗ рд░рд╛рдВрдЧ рдЕрдиреБрдкрд▓рдмреНрдз рд╣реЛрддреЗ.

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

  • рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдиреЗрдЯрд╡рд░реНрдХ.
  • рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╕реНрдЯреЛрд░реЗрдЬ.
  • рдЦреВрдк рд▓рд╛рдВрдм рд░рд╛рдВрдЧрд╛.

рдЬреЗрд╡реНрд╣рд╛ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рд╕реЗрдЯрд┐рдВрдЧреНрдЬрдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХреЗрд▓рд╛ рдЬрд╛рддреЛ рддреЗрд╡реНрд╣рд╛ рдЦрд╛рд▓реАрд▓ рдЧреЛрд╖реНрдЯреАрдВрдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХрд░рд╛:

  • ha-promote-on-failure=always
  • ha-sync-mode=manual
  • cluster_partition_handling=ignore (рдХрд┐рдВрд╡рд╛ autoheal)
  • рд╕рддрдд рд╕рдВрджреЗрд╢
  • рдЬреЗрд╡реНрд╣рд╛ рдХрд╛рд╣реА рдиреЛрдб рдЕрдпрд╢рд╕реНрд╡реА рд╣реЛрддрд╛рдд рддреЗрд╡реНрд╣рд╛ рдХреНрд▓рд╛рдпрдВрдЯ рд╕рдХреНрд░рд┐рдп рдиреЛрдбрд╢реА рдХрдиреЗрдХреНрдЯ рд╣реЛрддрд╛рдд рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░рд╛

рд╕реБрд╕рдВрдЧрддрддреЗрд╕рд╛рдареА (рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рддрддрд╛), рдЦрд╛рд▓реАрд▓ рд╕реЗрдЯрд┐рдВрдЧреНрдЬрдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХрд░рд╛:

  • рдЧреНрд░рд╛рд╣рдХрд╛рдВрдЪреНрдпрд╛ рдмрд╛рдЬреВрдиреЗ рдкреНрд░рдХрд╛рд╢рдХ рдкреБрд╖реНрдЯреА рдХрд░рддреЛ рдЖрдгрд┐ рдореЕрдиреНрдпреБрдЕрд▓ рдкрд╛рд╡рддреА
  • ha-promote-on-failure=when-synced, рдкреНрд░рдХрд╛рд╢рдХ рдирдВрддрд░ рдкреБрдиреНрд╣рд╛ рдкреНрд░рдпрддреНрди рдХрд░реВ рд╢рдХрдд рдЕрд╕рд▓реНрдпрд╛рд╕ рдЖрдгрд┐ рддреБрдордЪреНрдпрд╛рдХрдбреЗ рдЦреВрдк рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╕реНрдЯреЛрд░реЗрдЬ рдЕрд╕рд▓реНрдпрд╛рд╕! рдирд╛рд╣реАрддрд░ рдЯрд╛рдХрд╛ =always.
  • ha-sync-mode=automatic (рдкрд░рдВрддреБ рдореЛрдареНрдпрд╛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рд░рд╛рдВрдЧрд╛рдВрд╕рд╛рдареА рдореЕрдиреНрдпреБрдЕрд▓ рдореЛрдб рдЖрд╡рд╢реНрдпрдХ рдЕрд╕реВ рд╢рдХрддреЛ; рдЕрдиреБрдкрд▓рдмреНрдзрддреЗрдореБрд│реЗ рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡рд▓реЗ рдЬрд╛рддреАрд▓ рдХреА рдирд╛рд╣реА рдпрд╛рдЪрд╛ рджреЗрдЦреАрд▓ рд╡рд┐рдЪрд╛рд░ рдХрд░рд╛)
  • рдЕрд▓реНрдкрд╕рдВрдЦреНрдпрд╛рдХ рдореЛрдбрд▓рд╛ рд╡рд┐рд░рд╛рдо рджреНрдпрд╛
  • рд╕рддрдд рд╕рдВрджреЗрд╢

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

рдорд╛рдЭреЗ рдЖрдгрдЦреА рдХрд╛рд╣реА рдЪреБрдХрд▓реЗ рдЕрд╕рд▓реНрдпрд╛рд╕, рдХреГрдкрдпрд╛ рдорд▓рд╛ рдХрд│рд╡рд╛.

рдорд╛рдЭреЗ рджреЗрдЦреАрд▓ рдкрд╣рд╛ рдкреЛрд╕реНрдЯ, рдЬрд┐рдереЗ рдореА рдпрд╛ рд▓реЗрдЦрд╛рдд рд╡рд░реНрдгрди рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕рдВрджреЗрд╢ рдЧрдорд╛рд╡рдгреНрдпрд╛рдЪреНрдпрд╛ рдкрд░рд┐рд╕реНрдерд┐рддреАрдЪреА рдЪрд╛рдЪрдгреА рдШреЗрдгреНрдпрд╛рд╕рд╛рдареА рдбреЙрдХрд░ рдЖрдгрд┐ рдмреНрд▓реЙрдХреЗрдб рд╡рд╛рдкрд░реВрди RabbitMQ рдХреНрд▓рд╕реНрдЯрд░рд╡рд░ рд╣рд╛рд╣рд╛рдХрд╛рд░ рдорд╛рдЬрд╡рддреЛ.

рдорд╛рд▓рд┐рдХреЗрддреАрд▓ рдорд╛рдЧреАрд▓ рд▓реЗрдЦ:
рдХреНрд░рдорд╛рдВрдХ 1 - habr.com/ru/company/itsumma/blog/416629
рдХреНрд░рдорд╛рдВрдХ 2 - habr.com/ru/company/itsumma/blog/418389
рдХреНрд░рдорд╛рдВрдХ 3 - habr.com/ru/company/itsumma/blog/437446

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

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