Qrator рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдиреЗрдЯрд╡рд░реНрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдбрд┐рд▓реАрд╡рд░реА рд╕рд┐рд╕реНрдЯрдо



TL; DR : рд╣рдорд╛рд░реЗ рдЖрдВрддрд░рд┐рдХ рд╡рд┐рдиреНрдпрд╛рд╕ рдкреНрд░рдмрдВрдзрди рдЙрдкрдХрд░рдг, QControl рдХреЗ рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд░реНрд╡рд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ред
рдЕрдкрдиреЗ рддрд╣рдЦрд╛рдиреЗ рдореЗрдВ, рджреЛ-рд╕реНрддрд░рд┐рдд рдкрд░рд┐рд╡рд╣рди рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╣реИ рдЬреЛ рдПрдВрдбрдкреЙрдЗрдВрдЯ рдХреЗ рдмреАрдЪ рд╡рд┐рдШрдЯрди рдХреЗ рдмрд┐рдирд╛ рдЧрдЬрд╝рд┐рдк-рд╕рдВрдкреАрдбрд╝рд┐рдд рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рд╡рд┐рддрд░рд┐рдд рд░рд╛рдЙрдЯрд░ рдФрд░ рдПрдВрдбрдкреЙрдЗрдВрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЕрдкрдбреЗрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЦреБрдж рдХреЛ рдордзреНрдпрд╕реНрде рд╕реНрдерд╛рдиреАрдпрдХреГрдд рд░рд┐рд▓реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдЕрдВрддрд░ рдмреИрдХрдЕрдк ("рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд╕реНрдерд┐рд░," рдЖрдЧреЗ рд╕рдордЭрд╛рдпрд╛ рдЧрдпрд╛) рдбрд┐рдЬрд╝рд╛рдЗрди рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ рдФрд░ JMESpath рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рдФрд░ рдЬрд┐рдирдЬрд╛ рд╡рд┐рдиреНрдпрд╛рд╕ рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд▓рд┐рдП templating рдХрд╛рд░реНрдпрд░рдд рд╣реИрдВред

Qrator Labs рд╕рдВрдЪрд╛рд▓рд┐рдд рд╣реЛрддреА рд╣реИ рдФрд░ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рд╡рд┐рддрд░рд┐рдд рд╢рдорди рдиреЗрдЯрд╡рд░реНрдХ рдХрд╛ рд░рдЦрд░рдЦрд╛рд╡ рдХрд░рддреА рд╣реИред рд╣рдорд╛рд░рд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╣реИ, рдЬреЛ BGP рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣рдорд╛рд░реЗ рд╕рдмрдиреЗрдЯ рдХреА рдШреЛрд╖рдгрд╛ рдХрд░рдиреЗ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред рдкреГрдереНрд╡реА рдХреЗ рдХрдИ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рд╢рд╛рд░реАрд░рд┐рдХ рд░реВрдк рд╕реЗ рд╕реНрдерд┐рдд рдмреАрдЬреАрдкреА рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рд╣рдо рдЗрдВрдЯрд░рдиреЗрдЯ рдмреИрдХрдмреЛрди - рдЯрд┐рдпрд░ -1 рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рдХрд░реАрдм рдирд╛рдЬрд╛рдпрдЬ рдЯреНрд░реИрдлрд┐рдХ рдХреЛ рдкреНрд░реЛрд╕реЗрд╕ рдФрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░ рд╕рдХреЗрдВред

рджреВрд╕рд░реА рдУрд░, рднреМрдЧреЛрд▓рд┐рдХ рд░реВрдк рд╕реЗ рд╡рд┐рддрд░рд┐рдд рдиреЗрдЯрд╡рд░реНрдХ рд╣реЛрдиреЗ рдХреЗ рдирд╛рддреЗ рдЗрд╕рдХреА рдХрдард┐рдирд╛рдЗрдпреЛрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИред рдПрдХ рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд░рджрд╛рддрд╛ рдХреЗ рд▓рд┐рдП рд╕рднреА рдиреЗрдЯрд╡рд░реНрдХ рдиреЛрдбреНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реБрд╕рдВрдЧрдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╣реЛрдирд╛ рдФрд░ рдЗрд╕реЗ рд╕рдордп рдкрд░ рдФрд░ рд╕рд╛рдордВрдЬрд╕реНрдпрдкреВрд░реНрдг рддрд░реАрдХреЗ рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рдиреЗрдЯрд╡рд░реНрдХ рдкреЙрдЗрдВрдЯ-рдСрдл-рдЙрдкрд╕реНрдерд┐рддрд┐ (рдкреАрдУрдкреА) рдХреЗ рдмреАрдЪ рд╕рдВрдЪрд╛рд░ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЗрд╕рд▓рд┐рдП рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡реЛрддреНрддрдо рд╕рдВрднрд╡ рд╕реЗрд╡рд╛ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдордЬрд╝рдмреВрддреА рд╕реЗ рд╡рд┐рднрд┐рдиреНрди рдорд╣рд╛рджреНрд╡реАрдкреЛрдВ рдХреЗ рдмреАрдЪ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдбреЗрдЯрд╛ рдХреЛ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдЦреЛрдЬрдирд╛ рд╣реЛрдЧрд╛ред
рд╢реБрд░реБрдЖрдд рдореЗрдВ, рд╡рд░реНрдб рдерд╛ ... рдЬреЛ рдПрдХ рдЙрдиреНрдирдпрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдореЗрдВ рдЬрд▓реНрджреА рд╕реЗ рд╕рдВрдЪрд╛рд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдмрди рдЧрдпрд╛ред

QControl рдЕрд╕реНрддрд┐рддреНрд╡ рдХреЗ рдХреЛрдиреЗ рдмрд┐рдВрджреБ рдФрд░ рд╣рдорд╛рд░реЗ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдмрд╣реБрдд рд╕рдордп рдФрд░ рдкреНрд░рдпрд╛рд╕ рдЦрд░реНрдЪ рдХрд░рдиреЗ рдХрд╛ рдореБрдЦреНрдп рдХрд╛рд░рдг рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдПрдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕реНрд░реЛрдд рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдФрд░ рдЕрдВрддрддрдГ рдЗрд╕рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реЗ PoP рдХреЛ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░рдирд╛ рд╣реИред рд╕реНрдЯреЛрд░реЗрдЬ QControl рд╡рд┐рдХрд╛рд╕ рдХреЗ рдХрдИ рдЖрд╡рд╢реНрдпрдХ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдерд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдореЗрдВ рдореМрдЬреВрджрд╛ рдФрд░ рднрд╡рд┐рд╖реНрдп рдХреА рдкрд░рд┐рдзрд┐, рд╕реНрдорд╛рд░реНрдЯ (рдФрд░ рдЕрдиреБрдХреВрд▓рди рдпреЛрдЧреНрдп) рдбреЗрдЯрд╛ рд╕рддреНрдпрд╛рдкрди рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдФрд░ рднреЗрджрднрд╛рд╡ рддрдХ рдкрд╣реБрдВрдЪ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рдЗрд╕ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдХрдорд╛рдВрдб рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪреАрдЬреЛрдВ рдХреЛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ, рди рдХрд┐ рдореИрдиреБрдЕрд▓ рдлрд╛рдЗрд▓ рд╕рдВрд╢реЛрдзрдиреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗред QControl рд╕реЗ рдкрд╣рд▓реЗ, рдбреЗрдЯрд╛ рдХреЛ рдЕрдзрд┐рдХ рдпрд╛ рдХрдо рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдмрд┐рдВрджреБрдУрдВ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рднреЗрдЬрд╛ рдЧрдпрд╛ рдерд╛ред рдпрджрд┐ рдЗрд╕ рд╕рдордп рдХреБрдЫ PoP рдЕрдиреБрдкрд▓рдмреНрдз рдерд╛, рдФрд░ рд╣рдо рдЗрд╕реЗ рдмрд╛рдж рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рднреВрд▓ рдЧрдП, рддреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рд╡рдВрд╢рд╛рдиреБрдХреНрд░рдо рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛, рдФрд░ рдЗрд╕реЗ рд╕рд┐рдВрдХ рдореЗрдВ рд╡рд╛рдкрд╕ рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рд▓реЗрдиреЗ рд╡рд╛рд▓реА рд╕рдорд╕реНрдпрд╛ рдирд┐рд╡рд╛рд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред

рдпрд╣рд╛рдБ рд╣рдо рдЗрд╕ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рд▓реЗрдХрд░ рдЖрдП рд╣реИрдВ:
рдЫрд╡рд┐
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рд░реНрд╡рд░ рдбреЗрдЯрд╛ рд╕рддреНрдпрд╛рдкрди рдФрд░ рднрдВрдбрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИ; рд░рд╛рдЙрдЯрд░ рдореЗрдВ рдХреНрд▓рд╛рдЗрдВрдЯреНрд╕ рдФрд░ рд╕рдкреЛрд░реНрдЯ рдЯреАрдо рд╕реЗ рд╕рд░реНрд╡рд░ рдФрд░ PoP рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЕрдкрдбреЗрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рд░рд┐рд▓реЗ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ рд╣реИрдВред

рдЗрдВрдЯрд░рдиреЗрдЯ рдХрдиреЗрдХреНрд╢рди рдХреА рдЧреБрдгрд╡рддреНрддрд╛ рдЕрднреА рднреА рджреБрдирд┐рдпрд╛ рднрд░ рдореЗрдВ рдХрд╛рдлреА рд╡рд┐рд╡рд┐рдз рд╣реИ - рдЗрд╕реЗ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рдкреНрд░рд╛рдЧ, рдЪреЗрдХ рдЧрдгрд░рд╛рдЬреНрдп рд╕реЗ рд╕рд┐рдВрдЧрд╛рдкреБрд░ рдФрд░ рд╣рд╛рдВрдЧрдХрд╛рдВрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЯреНрд░реЗрд╕рд░реВрдЯ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВред

рдЫрд╡рд┐
рдкреНрд░рд╛рдЧ рд╕реЗ рд╕рд┐рдВрдЧрд╛рдкреБрд░ рддрдХ рдПрдордЯреАрдЖрд░

рдЫрд╡рд┐
рд╣рд╛рдВрдЧрдХрд╛рдВрдЧ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЗрдЦрдХ рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рджреВрд╕рд░рд╛ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ

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

рдкреВрд░реНрдг PoP рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдбреЗрдЯрд╛ рдХрд╛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ рдФрд░ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдХрдиреЗрдХреНрд╢рди рдкрд░ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд░рд┐рд╕реАрд╡рд░реЛрдВ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЕрдХреНрд╕рд░ рдмрджрд▓рддрд╛ рд╣реИ, рдпрд╣ рдЫреЛрдЯреЗ рд╡реЗрддрди рд╡реГрджреНрдзрд┐ рдореЗрдВ рдмрджрд▓рддрд╛ рд╣реИред

рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд╕реНрдерд┐рд░ рдбрд┐рдЬрд╛рдЗрди


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

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

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

рджреЛ-рд╕реНрддрд░реАрдп рдкрд░рд┐рд╡рд╣рди рд╡рд╛рд╕реНрддреБрдХрд▓рд╛


рд╣рдордиреЗ рдЕрдкрдиреЗ рдкрд░рд┐рд╡рд╣рди рдХреЛ рджреЛ рдкрд░рддреЛрдВ рд╕реЗ рдмрд╛рд╣рд░ рдХреНрдпреЛрдВ рдмрдирд╛рдпрд╛ рд╣реИ? рдЙрддреНрддрд░ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ: рд╣рдо рдЖрд╡реЗрджрди рд╕реЗ рд░реВрдЯрд┐рдВрдЧ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ, рдЗрд╕рдХреЗ рдкрд░рд┐рд╡рд╣рди рдФрд░ рдЖрд╡реЗрджрди рдкрд░рддреЛрдВ рдХреЗ рд╕рд╛рде рдУрдПрд╕рдЖрдИ рдореЙрдбрд▓ рдореЗрдВ рдкреНрд░реЗрд░рдгрд╛ рд▓реЗ рд░рд╣реЗ рдереЗред рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ рдЯреНрд░рд╛рдВрд╕рдкреЛрд░реНрдЯ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ (рдереНрд░рд┐рдлреНрдЯ) рдХреЛ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдХрдорд╛рдВрдб (msgpack) рд╕реАрд░рд┐рдпрд▓рд╛рдЗрдЬреЗрд╢рди рдкреНрд░рд╛рд░реВрдк рд╕реЗ рдЕрд▓рдЧ рдХрд░ рджрд┐рдпрд╛ рд╣реИред рдЗрд╕реАрд▓рд┐рдП рдПрдХ рд░рд╛рдЙрдЯрд░ (рдЬреЛ рдорд▓реНрдЯрд┐рдХрд╛рд╕реНрдЯ / рдмреНрд░реЙрдбрдХрд╛рд╕реНрдЯ / рд░рд┐рд▓реЗ рдХрд░рддрд╛ рд╣реИ) рди рддреЛ msgpack рдХреЗ рдЕрдВрджрд░ рджрд┐рдЦрддрд╛ рд╣реИ, рди рд╣реА рдкреЗрд▓реЛрдб рдХреЛ рдПрдХреНрд╕рдЯреНрд░реИрдХреНрдЯ рдпрд╛ рдХрдВрдкреНрд░реЗрд╕ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рдХрд░рддрд╛ рд╣реИред

рдереНрд░рд┐рдлреНрдЯ рд╡рд┐рдХреА :
Apache Thrift рдЖрдкрдХреЛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкрд░рд┐рднрд╛рд╖рд╛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдФрд░ рд╕реЗрд╡рд╛ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЙрд╕ рдлрд╛рдЗрд▓ рдХреЛ рдЗрдирдкреБрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрддреЗ рд╣реБрдП, рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛрдб рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ RPC рдХреНрд▓рд╛рдЗрдВрдЯреНрд╕ рдФрд░ рд╕рд░реНрд╡рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд▓реИрдВрдЧреНрд╡реЗрдЬ рдореЗрдВ рдореВрд▓ рд╕рдВрдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред рдЕрдкрдиреА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдХреНрд░рдордмрджреНрдз рдФрд░ рд╕реБрд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреЙрдпрд▓рд░рдкреНрд▓реЗрдЯ рдХреЛрдб рдХрд╛ рднрд╛рд░ рд▓рд┐рдЦрдиреЗ рдХреЗ рдмрдЬрд╛рдп рдФрд░ рджреВрд░рд╕реНрде рддрд░реАрдХреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░реЗрдВред

рд╣рдордиреЗ рдЗрд╕рдХреА RPC рдФрд░ рдПрдХ рд╣реА рдмрд╛рд░ рдореЗрдВ рдХрдИ рднрд╛рд╖рд╛ рд╕рдорд░реНрдерди рдХреЗ рдХрд╛рд░рдг рдереНрд░рд┐рдлрд╝реНрдЯ рдлреНрд░реЗрдорд╡рд░реНрдХ рд▓рд┐рдпрд╛ред рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, рдЖрд╕рд╛рди рднрд╛рдЧреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдЖрд╕рд╛рди рд╣реИ: рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд░рд╛рдЙрдЯрд░ рдХреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рдХрдареЛрд░ рдЕрдЦрд░реЛрдЯ рдерд╛, рдЙрд╕ рд╕рдордп рддреИрдпрд╛рд░ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рдХрд╛рд░рдг рднрд╛рдЧ рдореЗрдВ рдерд╛ред

рдХреБрдЫ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ, рдЬреИрд╕реЗ рдкреНрд░реЛрдЯреЛрдмреБрдлрд╝ / рдЬреАрдЖрд░рдкреАрд╕реА, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЬрдм рд╣рдордиреЗ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╢реБрд░реВ рдХреА рдереА, рддреЛ рдЬреАрдЖрд░рдкреАрд╕реА рдЕрдкрд░рд┐рдкрдХреНрд╡ рдерд╛ рдФрд░ рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдВрдХреЛрдЪ рдХрд░рддреЗ рдереЗред

рдмреЗрд╢рдХ, рд╣рдо (рдФрд░ рдЪрд╛рд╣рд┐рдП!) рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рдПрдХ рдкрд╣рд┐рдпрд╛ рдмрдирд╛рдПрдБред рд░рд╛рдЙрдЯрд░ рдХреЗ рд╕рд╛рде рд╣рдореЗрдВ рдЬреЛ рдЪрд╛рд╣рд┐рдП, рдЙрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдХрд╕реНрдЯрдо рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдмрдирд╛рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд░реНрд╡рд░ рдереНрд░рд┐рдлреНрдЯ рдХреЗ рд╕рд╛рде рд╡рд░реНрдХрд┐рдВрдЧ рд░рд╛рдЙрдЯрд░ рдмрдирд╛рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕рд░рд▓ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХрд╕реНрдЯрдо рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдФрд░ рд▓реЛрдХрдкреНрд░рд┐рдп рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдкреНрд░рддрд┐ рдкрд╛рд░рдВрдкрд░рд┐рдХ рдирдХрд╛рд░рд╛рддреНрдордХрддрд╛ рд╣реИ, рдФрд░ рд╣рдореЗрд╢рд╛ "рд╣рдо рдЗрд╕реЗ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдХреИрд╕реЗ рдкреЛрд░реНрдЯ рдХрд░рддреЗ рд╣реИрдВред" рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ рдорд┐рддрд╡реНрдпрдпреА рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред

Msgpack рд╡рд┐рд╡рд░рдг :
MessagePack рдПрдХ рдХреБрд╢рд▓ рджреНрд╡рд┐рдЖрдзрд╛рд░реА рдХреНрд░рдорд╛рдВрдХрди рдкреНрд░рд╛рд░реВрдк рд╣реИред рдпрд╣ рдЖрдкрдХреЛ JSON рдЬреИрд╕реА рдХрдИ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рдмреАрдЪ рдбреЗрдЯрд╛ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рджреЗрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рддреЗрдЬ рдФрд░ рдЫреЛрдЯрд╛ рд╣реИред рдЫреЛрдЯреЗ рдкреВрд░реНрдгрд╛рдВрдХреЛрдВ рдХреЛ рдПрдХ рд╣реА рдмрд╛рдЗрдЯ рдореЗрдВ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╢реЙрд░реНрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рд╕реНрд╡рдпрдВ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЗрд╡рд▓ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдмрд╛рдЗрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдкрд╣рд▓реА рдкрд░рдд рдкрд░, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рд░рд╛рдЙрдЯрд░ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдиреНрдпреВрдирддрдо рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде рдПрдХ рдереНрд░рд┐рдлреНрдЯ рд╣реИред рджреВрд╕рд░реА рдкрд░рдд рдкрд░, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ msgpack рд╕рдВрд░рдЪрдирд╛рдПрдВ рд╕рдВрдкреАрдбрд╝рд┐рдд рд╣реИрдВред
рд╣рдордиреЗ msgpack рдХреЗ рд▓рд┐рдП рдорддрджрд╛рди рдХрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ JSON рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдпрд╣ рдЕрдзрд┐рдХ рддреЗрдЬ рдФрд░ рдЕрдзрд┐рдХ рдХреЙрдореНрдкреИрдХреНрдЯ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЬреЛ рднреА рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╕реНрдЯрдо рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ "рд╡реНрд╣рд╛рдЗрдЯ-рдЖрдЙрдЯ" рдФрд░ рдХрдЪреНрдЪреЗ рдмрд╛рдЗрдирд░реА рдбреЗрдЯрд╛ рдЯреНрд░рд╛рдВрд╕рдлрд░ рдЬреИрд╕реА рдХреБрдЫ рд░реЛрдорд╛рдВрдЪрдХ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

JMESPath
JMESPath JSON рдХреЗ рд▓рд┐рдП рдПрдХ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рд╣реИред
рдпрд╣ рдПрдХрдорд╛рддреНрд░ рд╡рд┐рд╡рд░рдг рд╣реИ рдЬреЛ рд╣рдореЗрдВ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ JMESPath рдкреНрд░рд▓реЗрдЦрди рд╕реЗ рдорд┐рд▓рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рд╕рд┐рд░реНрдл рдЙрд╕рд╕реЗ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рд╣реИред JMESPath рдордирдорд╛рдиреА рдкреЗрдбрд╝ рдЬреИрд╕реА рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдФрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдордХреНрдЦреА рдкрд░ рдбреЗрдЯрд╛ рдкрд░рд┐рд╡рд░реНрддрди рднреА рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред рд╣рдо рдЗрд╕ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрдбрд╝реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмреНрд▓реЙрдм рд╕реЗ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рддреЗ рд╣реИрдВред
рдЬрдмрдХрд┐ рдкреВрд░реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдПрдХ рдкреЗрдбрд╝ рдЬреИрд╕реА рд╕рдВрд░рдЪрдирд╛ рд╣реЛрддреА рд╣реИ, рд╣рдо рд╡рд┐рднрд┐рдиреНрди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд▓рдХреНрд╖реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдЙрдк-рдкреЗрдбрд╝ рдирд┐рдХрд╛рд▓рддреЗ рд╣реИрдВред

рдпрд╣ рдЙрдк-рдЯреНрд░реА рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рд▓рдЪреАрд▓рд╛ рд╣реИ, рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЯреЗрдореНрдкрд▓реЗрдЯ рдпрд╛ рдЕрдиреНрдп рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд▓рдЧ рдЗрди рд╕реЗред рдЗрд╕реЗ рдФрд░ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЬреЗрдПрдордИрдПрд╕ рдкрде рдЖрд╕рд╛рдиреА рд╕реЗ рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд▓ рд╣реИ рдФрд░ рдХрд╕реНрдЯрдо рдлрд╝рд┐рд▓реНрдЯрд░ рдФрд░ рдбреЗрдЯрд╛ рдЯреНрд░рд╛рдВрд╕рдлрд╝реЙрд░реНрдо рд░реВрдЯреАрди рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЗрд╕реЗ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рджрд┐рдорд╛рдЧреА рддрд╛рдХрдд рдХреА рдЬрд░реВрд░рдд рд╣реЛрддреА рд╣реИред

рдЬрд┐рдВрдЬрд╛
рдХреБрдЫ рд▓рдХреНрд╖реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдПрдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЗрдВрдЬрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА, рдЬрд╣рд╛рдВ рдЬрд┐рдВрдЬрд╛ рдПрдХ рд╕реНрдкрд╖реНрдЯ рд╡рд┐рдХрд▓реНрдк рд╣реИред рдЬрд┐рдиреНрдЬрд╛ рдЦрд╛рдХрд╛ рд╕реЗ рдмрд╛рд╣рд░ рдПрдХ рд╡рд┐рдиреНрдпрд╛рд╕ рдлрд╝рд╛рдЗрд▓ рдФрд░ рдЧрдВрддрд╡реНрдп рдмрд┐рдВрджреБ рдкрд░ рдкреНрд░рд╛рдкреНрдд рдбреЗрдЯрд╛ рдЙрддреНрдкрдиреНрди рдХрд░ рд░рд╣рд╛ рд╣реИред

рдХреЙрдиреНрдлрд┐рдЧ рдлрд╛рдЗрд▓ рдХреЛ рд░реЗрдВрдбрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдЬреЗрдорд╕реНрдкрде рд░рд┐рдХреНрд╡реЗрд╕реНрдЯ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдкрд╛рде рдФрд░ рдбреЗрд╕реНрдЯрд┐рдиреЗрд╢рди рдлрд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдЯреЗрдореНрдкреНрд▓реЗрдЯ, рдЦреБрдж рд╣реА рдХреЙрдиреНрдлрд┐рдЧ рдХреЗ рд▓рд┐рдП рдЯреЗрдореНрдкреНрд▓реЗрдЯред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рдлрд╝рд╛рдЗрд▓ рдПрдХреНрд╕реЗрд╕ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реИред рдпрд╣ рд╕рдм рд╕реМрднрд╛рдЧреНрдп рд╕реЗ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдорд┐рд▓рд╛рдпрд╛ рдЧрдпрд╛ - рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реЗ рдкрд╣рд▓реЗ, рд╣рдордиреЗ рдмрд╛рдХреА рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реБрдП рдПрдХ YAML рд╣реЗрдбрд░ рд▓рдЧрд╛рдпрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
---
selector: "[@][?@.fft._meta.version == `42`] | items([0].fft_config || `{}`)"
destination_filename: "fft/{{ match[0] }}.json"
file_mode: 0644
reload_daemons: [fft]
...
{{ dict(match[1]) | json(indent=2, sort_keys=True) }}

рдирдИ рдкрд░рд┐рдзрд┐ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдХ рдирдИ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рдХреЛрдИ рд╕реЛрд░реНрд╕ рдХреЛрдб рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ рдФрд░ PoP рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдЕрдкрдбреЗрдЯ рдХреА рдЬрд░реВрд░рдд рд╣реЛрддреА рд╣реИред

QControl рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдмрдВрдзрди рдЙрдкрдХрд░рдг рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдХреНрдпрд╛ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ?
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг, рд╣рдореЗрдВ рдЕрдкрдиреЗ рд╕рднреА рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рд╕реБрд╕рдВрдЧрдд рдФрд░ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЕрдкрдбреЗрдЯ рдорд┐рд▓реЗред
рджреВрд╕рд░рд╛, рд╣рдо рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рддреНрдпрд╛рдкрди рдХреЗ рд▓рд┐рдП рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдЙрдкрдХрд░рдг рд░рдЦрддреЗ рд╣реИрдВ рдФрд░ рд╣рдорд╛рд░реА рд╕рд╣рд╛рдпрддрд╛ рдЯреАрдо рдФрд░ рд╣рдорд╛рд░реЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд╣рд╛рдереЛрдВ рдореЗрдВ рдмрджрд▓рддреЗ рд╣реИрдВред

рд╣рдордиреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рд░реНрд╡рд░ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдмреАрдЪ рд╕рдВрдЪрд╛рд░ рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд╛рд▓ рдХреЗ-рд╕реНрдерд┐рд░ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЛ рдирд┐рдпреЛрдЬрд┐рдд рдХрд░рдХреЗ рдкреВрд░рд╛ рдХрд┐рдпрд╛ рд╣реИ, рдкреЗрд▓реЛрдб-рдЕрдЬреНрдЮреЗрдп рд░рд╛рдЙрдЯрд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╡рд┐рдзрддрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдиреНрдЬрд╛-рдЖрдзрд╛рд░рд┐рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд░реЗрдВрдбрд░рд┐рдВрдЧ рдЗрдВрдЬрди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ-рдкрд░рдд рд╕рдВрдЪрд╛рд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗред рд╣рдорд╛рд░реЗ рд╡рд┐рд╡рд┐рдз рдкрд░рд┐рдзрд┐ рдХреЗ рд▓рд┐рдП рд╡рд┐рдиреНрдпрд╛рд╕ рдлрд╛рдЗрд▓ред

Source: https://habr.com/ru/post/hi463735/


All Articles