рдЬреАрдЖрд░рдкреАрд╕реА рдХреНрдпрд╛ рд╣реИ?
рдЬреАрдЖрд░рдкреАрд╕реА рдПрдкреАрдЖрдИ рдбрд┐рдЬрд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рд░рдВрдкрд░рд┐рдХ рдЖрд░рдкреАрд╕реА рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЕрджреНрдпрддрди рд╕рдВрд╕реНрдХрд░рдг рд╣реИред рдЬреАрдЖрд░рдкреАрд╕реА рдФрд░ рдЗрд╕рдХреЗ рдкреЗрд╢реЗрд╡рд░реЛрдВ рдФрд░ рд╡рд┐рдкрдХреНрд╖реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдм рдХреБрдЫ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдкрдврд╝реЗрдВ!

рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдХрдИ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдЕрдиреНрдп рдХреЛрдб рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдПрдХреАрдХрд░рдг рд╕реЗ рд▓реЗрдХрд░ рдирдИ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЬреЛрдбрд╝рдиреЗ рддрдХ рдХреБрдЫ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдЕрдиреНрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рд▓рд┐рдВрдХ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЕрдиреНрдп рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдореЗрдВ рдЙрдирдХрд╛ рдПрдХреАрдХрд░рдг рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдПрдкреНрд▓реАрдХреЗрд╢рди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдЗрдВрдЯрд░рдлреЗрд╕ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рд╕рднреА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдореЗрдВ рдПрдХ рд╕реЗрддреБ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдкрдиреА рднреВрдорд┐рдХрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рдПрдкреАрдЖрдИ рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреА рд╡реЗрдм рд╕реЗрд╡рд╛рдУрдВ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдкреАрдЖрдИ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рддрдХрдиреАрдХ рдЪреБрдирдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред
рдХреЛрдИ рднреА рд╕рдВрдЧрдарди рдЬреЛ рдЕрдкрдиреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдпрд╛ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЛ рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рдЙрд╕реЗ рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдПрдкреАрдЖрдИ рдХреЛ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдПрдХрджрдо рдлрд┐рдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдФрд░ рдлрд╛рдЗрди-рдЯреНрдпреВрдирд┐рдВрдЧ рдХрд░рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВред рдПрдкреАрдЖрдИ рдбрд┐рдЬрд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдЬрд┐рди рдирд╡реАрдирддрдо рддрд░реАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ gRPC рд╣реИред рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ gRPC рдХреНрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдлрд╛рдпрджреЗ рдФрд░ рдиреБрдХрд╕рд╛рди рдХреНрдпрд╛ рд╣реИрдВред
gRPC рдХреНрдпрд╛ рд╣реИ?
gRPC рдорддрд▓рдм Google Remote Procedure Call рд╣реИред gRPC рдПрдХ рдУрдкрди-рд╕реЛрд░реНрд╕ рдЖрд░рдкреАрд╕реА рдврд╛рдВрдЪрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реНрдХреЗрд▓реЗрдмрд▓ рдФрд░ рддреНрд╡рд░рд┐рдд рдПрдкреАрдЖрдИ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдиреЗрдЯрд╡рд░реНрдХ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╡рд┐рдХрд╛рд╕ рдФрд░ gRPC рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдмреАрдЪ рдЦреБрд▓реЗ рд╕рдВрдЪрд╛рд░ рдХреЛ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред Google, IBM, Netflix рдФрд░ рдЕрдиреНрдп рд╕рд╣рд┐рдд рдХрдИ рд╢реАрд░реНрд╖ рддрдХрдиреАрдХреА рдХрдВрдкрдирд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ gRPC рдХреЛ рдЕрдкрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред gRPC рдврд╛рдВрдЪрд╛ рдЕрддреНрдпрд╛рдзреБрдирд┐рдХ рддрдХрдиреАрдХреА рд╕реНрдЯреИрдХ рдЬреИрд╕реЗ рдПрдЪрдЯреАрдЯреАрдкреА/2, рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдмрдлрд╝рд░реНрд╕, рдФрд░ рдЕрдзрд┐рдХ рдХреЗ рд▓рд┐рдП рдЗрд╖реНрдЯрддрдо рдПрдкреАрдЖрдИ рд╕реБрд░рдХреНрд╖рд╛, рдЙрдЪреНрдЪ-рдкреНрд░рджрд░реНрд╢рди рджреВрд░рд╕реНрде рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЙрд▓ рдФрд░ рд╕реНрдХреЗрд▓реЗрдмрд┐рд▓рд┐рдЯреА рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред

RPC рдХреНрдпрд╛ рд╣реИрдВ?
RPC рдФрд░ REST - Representational State Transfer - рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рд░реВрдк рд╕реЗ API рдмрдирд╛рдиреЗ рдХреЗ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд░рд╣реЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдЗрд╕ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП SOAP рдФрд░ GraphQL рдЬреИрд╕реЗ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рджреВрд░рд╕реНрде рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЙрд▓ рдЖрдкрдХреЛ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд▓рд┐рдЦрдиреЗ рджреЗрддреА рд╣реИ рдЬреИрд╕реЗ рдХрд┐ рдпрд╣ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдЪрд▓реЗрдЧрд╛, рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрд╣ рдХрд┐рд╕реА рднрд┐рдиреНрди рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдЪрд▓ рд╕рдХрддрд╛ рд╣реИред
рд╡реЗ рдПрдкреАрдЖрдИ рдбрд┐рдЬрд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдкрд╛рд░рдВрдкрд░рд┐рдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдврд╛рдВрдЪреЗ рд╣реИрдВред рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЙрд▓ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдПрдХ RPC рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд░реНрд╡рд░ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреА рдкреНрд░рд╛рдердорд┐рдХ рд╡рд┐рдзрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдХреЛ рдирд┐рдпреЛрдЬрд┐рдд рдХрд░рддрд╛ рд╣реИред RPC рдПрдкреАрдЖрдИ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрддреНрдкрд╛рджрдХ рддрдХрдиреАрдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдПрдХреНрд╕рдЪреЗрдВрдЬ рд╕рд░рд▓ рд╣реИрдВ, рдФрд░ рд╕рд╛рдордЧреНрд░реА рд╣рд▓реНрдХреА рд╣реИред gRPC рд╕реЗрд╡рд╛рдПрдВ рднреА рдЗрд╕ рд╕рдВрдЪрд╛рд░ рд╕рдВрд░рдЪрдирд╛ рдХреА рдирдХрд▓ рдХрд░рддреА рд╣реИрдВред RPC рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдФрд░ рд▓рд╛рдЧреВ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдЕрдиреБрдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП IDL - Interface Definition Language рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИред рд╣рд╛рд▓ рдХреЗ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рдЖрд░рдкреАрд╕реА рд╕реЗ рдЕрдкрдирд╛рдИ рдЧрдИ gRPC рд╕реЗрд╡рд╛рдПрдВ рдмрд╣реБрдд рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реЛ рдЧрдИ рд╣реИрдВред
gRPC рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдХреНрдпреЛрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛?
рдЬреИрд╕реЗ-рдЬреИрд╕реЗ рдЕрдзрд┐рдХ рдЙрджреНрдпрдо рдПрдХреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдЪреИрдирд▓ рдЦреЛрд▓рддреЗ рд╣реИрдВ, рдРрд╕реЗ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХреЛ рд▓рд┐рдВрдХ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрддрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред RPC рдПрдкреАрдЖрдИ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреБрдиреМрддреАрдкреВрд░реНрдг рдФрд░ рд╡рд┐рддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛрдЦрд┐рдо рднрд░рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЖрдВрддрд░рд┐рдХ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛рдУрдВ рдХрд╛ рдЦреБрд▓рд╛рд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡реЗ рдХрдИ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдврд╛рдВрдЪреЗ рд╕реЗ рдирд┐рдХрдЯрддрд╛ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реЛрддреЗ рд╣реИрдВред
рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ 2000 рдореЗрдВ рдЖрд░рдИрдПрд╕рдЯреА рдПрдкреАрдЖрдИ рд▓реЙрдиреНрдЪ рд╣реЛрдиреЗ рдкрд░ рдПрдкреАрдЖрдИ рдПрдХреНрд╕реЗрд╕рд┐рдмрд┐рд▓рд┐рдЯреА рдмрдврд╝ рдЧрдИ рдереАред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЗрд╕рдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ GET, PUT, POST рдФрд░ рдЕрдиреНрдп рдЬреИрд╕реА рдорд╛рдирдХ HTTP рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рд░реВрдк рд╕реЗ рдЬрд╛рдирдХрд╛рд░реА рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╕рддрдд рддрд░реАрдХрд╛ рджрд┐рдпрд╛ред REST API рд╕реЗ RPC рдХрд╛ рдкреНрд░рд╛рдердорд┐рдХ рдЕрдВрддрд░ рдпрд╣ рд╣реИ рдХрд┐ RPC рдХреЗ рд╕рд╛рде, рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдореЗрдВ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдВ рдХреНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред
REST API рд╕реАрдзреЗ рдФрд░ рд╣рд▓реНрдХреЗ RPC рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдиреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд┐рдпрд╛, рдЬрдмрдХрд┐ рдЗрд╕рдиреЗ рдХрдИ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдиреНрдирдд рдкреНрд░рд╛рд░реВрдк рдХреА рдкреЗрд╢рдХрд╢ рдХреАред рдЗрд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЕрдВрддрддрдГ рдлреЗрд╕рдмреБрдХ рдХреЗ GraphQL рдФрд░ рдЧреВрдЧрд▓ рдХреА gRPC рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдЙрджрдп рд╣реБрдЖред
Google рдиреЗ 2015 рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рддрдХрдиреАрдХреЛрдВ рдХреЗ рд╕рд╛рде рдмрдирд╛рдП рдЧрдП рдХрдИ рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрд╡рд┐рд╕ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП RPC рдврд╛рдВрдЪреЗ рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд gRPC рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ред gRPC рдореВрд▓ рд░реВрдк рд╕реЗ Google рдХреЗ рдореВрд▓ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рд╕реЗ рдирд┐рдХрдЯрддрд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдерд╛, рд▓реЗрдХрд┐рди рдЕрдВрддрддрдГ рдЗрд╕реЗ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдмрдирд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ рдЖрдо рдЬрдирддрд╛ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдорд╛рдирдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ред
gRPC рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХрд╛ рдЕрд╡рд▓реЛрдХрди
рдЕрддреНрдпрд╛рдзреБрдирд┐рдХ рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ, рдЬрд┐рдирдХрд╛ JSON рдФрд░ XML рдкрд░ рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди рд╣реИ рдФрд░ рдЕрдзрд┐рдХ API рдЕрдЦрдВрдбрддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ, gRPC рдХреЗ рдирд┐рд░реНрдорд╛рдг рдФрд░ рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдХреБрдЫ gRPC рдЕрд╡рдзрд╛рд░рдгрд╛рдПрдБ рдЬрд┐рдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрдкрдХреЛ рдЬрд╛рдирдХрд╛рд░реА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рд╡реЗ рд╣реИрдВ:
рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдмрдлрд╝рд░реНрд╕
рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдмрдлрд╝рд░реНрд╕, рдЬрд┐рдиреНрд╣реЗрдВ Protobuf рдХреЗ рд░реВрдк рдореЗрдВ рднреА рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрд░рдорд╛рдВрдХрди рдпрд╛ рдЕрдХреНрд░рдорд╛рдВрдХрди рдорд╛рдирдХ рд╣реИрдВ рдЬреЛ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХреНрд▓рд╛рдЗрдВрдЯ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдХреЛрдб рдЬрдирд░реЗрд╢рди рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг, рдкреНрд░реЛрдЯреЛ 3, рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрд╕рд╛рди рд╣реИ рдФрд░ proto3 рдХреЗ рд▓рд┐рдП рдирд╡реАрдирддрдо рдХреНрд╖рдорддрд╛рдПрдВ рдкреНрд░рджрд╛рди gRPC рд╣реИред
.Proto рдлрд╝рд╛рдЗрд▓реЗрдВ gRPC рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рдмреАрдЪ gRPC рд╕реЗрд╡рд╛рдУрдВ рдФрд░ рд╕рдВрдЪрд╛рд░ рдХреЛ рд╕рдХреНрд╖рдо рдмрдирд╛рддреА рд╣реИрдВред .proto рдХрдВрдкрд╛рдЗрд▓рд░ - Protobuf рджреНрд╡рд╛рд░рд╛ рдирд┐рд╖реНрдкрд╛рджрди рдкрд░ protoc рдлрд╝рд╛рдЗрд▓ рдХреЛ рдореЗрдореЛрд░реА рдореЗрдВ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдХрдВрдкрд╛рдЗрд▓рд░ gRPC рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ gRPC рд╕рд░реНрд╡рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рддрд╛ рд╣реИ рдЬреЛ рдмрд╛рдЗрдирд░реА рдбреЗрдЯрд╛ рдХреЛ рдХреНрд░рдордмрджреНрдз рдФрд░ deserialize рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрди-рдореЗрдореЛрд░реА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдирд┐рдпреЛрдЬрд┐рдд рдХрд░рддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдЪрд╛рд░ gRPC рдореЗрдВ рдХреЛрдб рдЬрдирд░реЗрд╢рди рдХреЗ рдмрд╛рдж рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ рджреВрд░рд╕реНрде рд╕реЗрд╡рд╛ рдХреЗ рдмреАрдЪ рднреЗрдЬрд╛ рдФрд░ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЪреВрдВрдХрд┐ рдбреЗрдЯрд╛ рдХреЛ рдмрд╛рдЗрдирд░реА рд░реВрдк рдореЗрдВ рдЕрдиреБрд╡рд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рд╕рд┐рдЧреНрдирд▓ рдЫреЛрдЯреЗ рд╣реЛрддреЗ рд╣реИрдВ, gRPCProtobuf рд▓рд┐рдП рдХрдо CPU рдкрд╛рд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдХрдордЬреЛрд░ CPU рд╡рд╛рд▓реЗ рдХрдВрдкреНрдпреВрдЯрд░реЛрдВ рдкрд░ рднреА, рдЬреИрд╕реЗ рд╕реЗрд▓ рдлреЛрди, рд╕рдВрджреЗрд╢ gRPC рдХреЗ рд╕рд╛рде рдЕрдзрд┐рдХ рддреЗрдЬрд╝реА рд╕реЗ рднреЗрдЬреЗ рдЬрд╛рддреЗ рд╣реИрдВред
HTTP / 2
gRPC рд╕реЗрд╡рд╛ рдПрдЪрдЯреАрдЯреАрдкреА/2 рдкрд░ рдмрдиреА рд╣реИ, рдЬреЛ рдПрдЪрдЯреАрдЯреАрдкреА/1.1 рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рд╣реИ рдЬрд┐рд╕рдХреА рдХрдо рд╕реАрдорд╛рдПрдВ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдкреБрд░рд╛рдиреЗ HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, HTTP/2 рдореЗрдВ gRPC рдХреЗ рд▓рд┐рдП рдХрдИ рдкрд░рд┐рд╖реНрдХреГрдд рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВред рдЗрд╕рдореЗрдВ рдПрдХ рдмрд╛рдЗрдирд░реА рдлрд╝реНрд░реЗрдорд┐рдВрдЧ рдкрд░рдд рд╢рд╛рдорд┐рд▓ рд╣реИ, рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ HTTP / 2 рдХреНрд╡реЗрд░реА рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рддреА рд╣реИ рдФрд░ рдЫреЛрдЯреЗ рд╕рдВрджреЗрд╢реЛрдВ рдореЗрдВ рдЙрддреНрддрд░ рджреЗрддреА рд╣реИ рдФрд░ рд╕рдВрджреЗрд╢ рд╡рд┐рддрд░рдг рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдмрд╛рдЗрдирд░реА рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдлрд╝реНрд░реЗрдо рдХрд░рддреА рд╣реИред рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, gRPC рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ gRPC рд╕рд░реНрд╡рд░ рд╕реЗ рджреНрд╡рд┐рджрд┐рд╢ рдкреВрд░реНрдг-рджреНрд╡реИрдз рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдореЗрдВ рдХрдИ рдЕрдиреБрд░реЛрдзреЛрдВ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред
HTTP / 2 рдореЗрдВ рдПрдХ рдкреНрд░рд╡рд╛рд╣ рдирд┐рдпрдВрддреНрд░рдг рд╡рд┐рдзрд┐ рд╣реИ рдЬреЛ рдЗрди-рдлреНрд▓рд╛рдЗрдЯ рдкреИрдХреЗрдЯ рдХреЛ рдмрдлрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ RAM рдХреЗ рд╕рдЯреАрдХ рдирд┐рдпрдВрддреНрд░рдг рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдпрд╣ gRPC рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╣реЗрдбрд░ рдХрдореНрдкреНрд░реЗрд╢рди рднреА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред HTTP / 2 рдореЗрдВ рд╕рдм рдХреБрдЫ рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рд╕реЗ рдкрд╣рд▓реЗ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣рд╛рдВ рддрдХ рдХрд┐ рд╣реЗрдбрд░ рднреА, рдЬреЛ рдЙрдЪреНрдЪ-рдкреНрд░рджрд░реНрд╢рди рджреВрд░рд╕реНрде рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЙрд▓ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред gRPC рдПрдЪрдЯреАрдЯреАрдкреА/2 рдХреЗ рд╕рд╛рде рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдФрд░ рд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рджреЛрдиреЛрдВ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╡рд┐рднрд┐рдиреНрди рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдФрд░ рд╕реНрдЯреНрд░реАрдо рдХрд┐рдП рдЧрдП рдЖрд░рдкреАрд╕реА рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЛ рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
HTTP / 2 рдХреА рдЗрди рд╕рднреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдорджрдж рд╕реЗ, gRPC рд╕реЗрд╡рд╛рдПрдВ рдХрдо рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреА рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдХреНрд▓рд╛рдЙрдб-рдЖрдзрд╛рд░рд┐рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдФрд░ gRPC рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдмреАрдЪ рддреЗрдЬреА рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдордп рдФрд░ рдореЛрдмрд╛рдЗрд▓ рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ gRPC рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдмреИрдЯрд░реА рдЬреАрд╡рди рд╣реЛрддрд╛ рд╣реИред
рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ
gRPC рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╡рд┐рдЪрд╛рд░ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рд╣реИ, рдЬреЛ рдПрдХ рд╣реА рдЕрдиреБрд░реЛрдз рдХреЗ рднреАрддрд░ рдХрдИ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред gRPC рдЗрд╕реЗ рдПрдЪрдЯреАрдЯреАрдкреА/2 рдХреА рдорд▓реНрдЯреАрдкреНрд▓реЗрдХреНрд╕рд┐рдВрдЧ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдВрднрд╡ рдмрдирд╛рддрд╛ рд╣реИ, рдЬреЛ рдПрдХ TCP - Transmission Control Protocol - рдХрдиреЗрдХреНрд╢рди рдкрд░ рдХрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдпрд╛ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рднреЗрдЬрдиреЗ рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдкреНрд░рд╛рдердорд┐рдХ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░рд╛рд░реВрдк рд╕рд░реНрд╡рд░-рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ RPCs, рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ RPC s, рдФрд░ рджреНрд╡рд┐рджрд┐рд╢-рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ RPC s рд╣реИрдВред
рдЪреИрдирд▓
HTTP / 2 рд╕реНрдЯреНрд░реАрдо рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЬреЛ рдПрдХ рд╣реА рдЕрдиреБрд░реЛрдз рдХрдиреЗрдХреНрд╢рди рдкрд░ рдХрдИ рдПрдХ рд╕рд╛рде рд╕реНрдЯреНрд░реАрдо рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, gRPC рд╡рд╛рд▓рд╛ рдПрдХ рдЪреИрдирд▓ рдХрдИ рдЕрдиреБрд░реЛрдзреЛрдВ рдореЗрдВ рдХрдИ рдирд┐рд░рдВрддрд░ рд╕реНрдЯреНрд░реАрдо рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рд╡реЗ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реНрдЯрдм рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрд░рдд рд╣реИрдВ рдФрд░ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЖрдИрдкреА рдФрд░ рдкреЛрд░реНрдЯ рдкрд░ gRPC рд╕рд░реНрд╡рд░ рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рддрдВрддреНрд░ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред
gRPC рд╡рд╛рд╕реНрддреБрдХрд▓рд╛
gRPC рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдореЗрдВ gRPC рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ gRPC рд╕рд░реНрд╡рд░ рджреЛрдиреЛрдВ рд╣реЛрддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ gRPC рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗрд╡рд╛ рдореЗрдВ рдПрдХ рд╕реНрдЯрдм рдпрд╛ рдПрдХ рдСрдЯреЛ-рдЬреЗрдирд░реЗрдЯреЗрдб рдлрд╝рд╛рдЗрд▓ рд╣реЛрддреА рд╣реИ, рдЬреЛ рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рд╕рдорд╛рди рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕рдХреНрд░рд┐рдп рджреВрд░рд╕реНрде рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдВ рд╣реЛрддреА рд╣реИрдВред gRPC рдХреНрд▓рд╛рдЗрдВрдЯ gRPC рд╕рд░реНрд╡рд░ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрд░реНрдХреЛрдВ рд╡рд╛рд▓реЗ рд╕реНрдЯрдм рдкрд░ рдПрдХ рд╕реНрдерд╛рдиреАрдп рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЙрд▓ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИред gRPC рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реНрдЯрдм Protobuf рдорд╛рд░реНрд╢рд▓рд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рддрд░реНрдХреЛрдВ рдХреЛ рдХреНрд░рдордмрджреНрдз рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╕реНрдерд╛рдиреАрдп рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд╕реНрдерд╛рдиреАрдп рдХреНрд▓рд╛рдЗрдВрдЯ-рдЯрд╛рдЗрдо рдпреВрдирд┐рдЯ рдХреЛ рдХреНрд╡реЗрд░реА рднреЗрдЬрддрд╛ рд╣реИред
рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рджреВрд░рд╕реНрде рд╕рд░реНрд╡рд░ рдХрдВрдкреНрдпреВрдЯрд░ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП HTTP / 2 рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рд╕рд░реНрд╡рд░ рдХрд╛ рдУрдПрд╕ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕рд░реНрд╡рд░ рд╕реНрдЯрдм рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЖрдордВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдбреАрдХреЛрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЙрдЪрд┐рдд рд╕рдВрдЪрд╛рд▓рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Protobuf рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдХреНрд▓рд╛рдЗрдВрдЯ рдЯреНрд░рд╛рдВрд╕рдкреЛрд░реНрдЯ рд▓реЗрдпрд░ рддрдм рд╕рд░реНрд╡рд░ рд╕реНрдЯрдм рд╕реЗ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред gRPC рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реНрдЯрдм рдХреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдФрд░ рджрд┐рдП рдЧрдП рддрд░реНрдХреЛрдВ рдХреЛ рдЦреЛрд▓рдиреЗ рдХреЗ рдмрд╛рдж рдирд┐рд╖реНрдкрд╛рджрди рдХреЙрд▓ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреЗ рдкрд╛рд╕ рд╡рд╛рдкрд╕ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред
gRPC рдХреЗ рдкреЗрд╢реЗрд╡рд░реЛрдВ
рдЕрдиреНрдп рдПрдкреАрдЖрдИ рдбрд┐рдЬрд╛рдЗрдирд┐рдВрдЧ рддрдВрддреНрд░реЛрдВ рдкрд░ gRPC рдХреЗ рдХрдИ рдлрд╛рдпрджреЗ рд╣реИрдВред gRPCRPC рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рднреА рд╕реБрдзрд╛рд░ рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдВ gRPC рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рдмрд╕реЗ рдкреНрд░рдореБрдЦ рд▓рд╛рдн рджрд┐рдП рдЧрдП рд╣реИрдВ:
- рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди рджреВрд░рд╕реНрде рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЙрд▓
Protobuf рдФрд░ рдПрдЪрдЯреАрдЯреАрдкреА/2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, gRPC рд╕реЗрд╡рд╛рдПрдВ рдЖрд░рдИрдПрд╕рдЯреА+рдЬреЗрдПрд╕рдУрдПрди рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЗ рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди рдФрд░ рдПрдкреАрдЖрдИ рд╕реБрд░рдХреНрд╖рд╛ рдХрд╛ 10 рдЧреБрдирд╛ рддрдХ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИрдВред рд╕рд░реНрд╡рд░ рдкреБрд╢, рдорд▓реНрдЯреАрдкреНрд▓реЗрдХреНрд╕рд┐рдВрдЧ рдФрд░ рд╣реЗрдбрд░ рдХрдореНрдкреНрд░реЗрд╢рди рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде, HTTP / 2 gRPC рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЙрдЪреНрдЪ-рдкреНрд░рджрд░реНрд╢рди рд░реИрдВрдХрд┐рдВрдЧ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЬрдмрдХрд┐ рдорд▓реНрдЯреАрдкреНрд▓реЗрдХреНрд╕рд┐рдВрдЧ рд╣реЗрдб-рдСрдл-рд▓рд╛рдЗрди рджреЗрд░реА рдХреЛ рджреВрд░ рдХрд░рддрд╛ рд╣реИ, рд╕рд░реНрд╡рд░ рдкреБрд╢ HTTP / 2 рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕рд░реНрд╡рд░ рд╕реЗ рдХреНрд▓рд╛рдЗрдВрдЯ рддрдХ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдкреБрд╢ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддрд╛ рд╣реИред HTTP / 2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдЕрдзрд┐рдХ рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк gRPC рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рде рддреЗрдЬреА рд╕реЗ рд▓реЛрдб рд╣реЛрддрд╛ рд╣реИред
- рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ
gRPC рд╕реЗрд╡рд╛рдУрдВ рдХреА рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╕реЗрд╡рд╛ рд╡рд┐рд╡рд░рдг рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреНрд▓рд╛рдЗрдВрдЯ- рдпрд╛ рд╕рд░реНрд╡рд░-рдПрдВрдб рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рд╕рд┐рджреНрдзрд╛рдВрдд рд╢рд╛рдорд┐рд▓ рд╣реИрдВред gRPC рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд╛рдлреА рдЖрд╕рд╛рди рд╣реЛ рдЧрдпрд╛ рд╣реИред
- рдХреЛрдб рдЬрдирд░реЗрд╢рди
gRPC рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ gRPC рд╕рд░реНрд╡рд░ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд▓рд┐рдП рдХреЛрдб рдЬрдирд░реЗрд╢рди gRPC рд╡реЗрдм рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдкреНрд░рдореБрдЦ рдШрдЯрдХ рд╣реИред .proto рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдХреЛрдб рдЬрдирд░реЗрд╢рди рдХреЗ рд▓рд┐рдП, gRPC рдореЙрдбреНрдпреВрд▓ .protoc рдХрдВрдкрд╛рдЗрд▓рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред Protobuf рдкреНрд░рд╛рд░реВрдк рдХреЛ gRPC рдореЗрдВ рдХреЛрдб рдЬрдирд░реЗрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдбреЗрдЯрд╛ рдкреНрд░рд╛рд░реВрдк рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдПрдВрдбрдкреЙрдЗрдВрдЯ рджреЛрдиреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд╛рдЗрдб рдиреЗрдЯрд╡рд░реНрдХ рд╕реНрдЯрдмреНрд╕ рдФрд░ рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рдХрдВрдХрд╛рд▓ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ gRPC рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЧреНрд░рд╛рдо рдбрд┐рдЬрд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕рдордп рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИред
- рдЗрдВрдЯрд░реЛрдСрдкрд░реЗрдмрд┐рд▓рд┐рдЯреА
рдХрдИ рд╕рд┐рд╕реНрдЯрдо рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдПрдВ, рдЬреИрд╕реЗ рдЬрд╛рд╡рд╛, рд░реВрдмреА, Go, рд╕реА #, рдФрд░ рдмрд╣реБрдд рдХреБрдЫ, gRPC рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдФрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИрдВред рдЗрди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде, рдбреЗрд╡рд▓рдкрд░ gRPC рдХреЗ рд╕рд╛рде рдкреВрд░реНрдг рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╕рдВрдЧрддрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдкреНрд░рджрд░реНрд╢рдирдХрд╛рд░реА рдРрдк рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ Protobuf рдмрд╛рдЗрдирд░реА рд╡рд╛рдпрд░рд┐рдВрдЧ рдлреЙрд░реНрдо рдФрд░ рд▓рдЧрднрдЧ рд╕рднреА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рднрд╛рд╡реА рдХреЛрдб рдЬрдирд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рд╣реИред
- рд╕реБрд░рдХреНрд╖рд╛
рдЯреАрдПрд▓рдПрд╕ рдПрдВрдб-рдЯреВ-рдПрдВрдб рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рд╕рддреНрд░ рдореЗрдВ HTTP / 2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ gRPC рдореЗрдВ рдПрдкреАрдЖрдИ рд╕реБрд░рдХреНрд╖рд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред gRPC рд╕рд░реНрд╡рд░ рдФрд░ gRPC рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рдмреАрдЪ рдбреЗрдЯрд╛ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдФрд░ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрд╕рдПрд╕рдПрд▓ / рдЯреАрдПрд▓рдПрд╕ рдХреЛ рдЕрдкрдирд╛рдиреЗ рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрддрд╛ рд╣реИред
- рдЙрддреНрдкрд╛рджрдХрддрд╛ рдФрд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛
рдЪреВрдВрдХрд┐ gRPC рдПрдХ рдкреВрд░реНрдг RPC рд╡рд┐рдХрд▓реНрдк рд╣реИ, рдпрд╣ рд╕рд┐рд╕реНрдЯрдо рдФрд░ рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рдкрд░ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд░реЛрдХ-рдЯреЛрдХ рдХреЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред gRPC рдореЗрдВ рднреА рдмреЗрд╣рддрд░реАрди рдЯреВрд▓рд┐рдВрдЧ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЖрд╡рд╢реНрдпрдХ рдмреЙрдпрд▓рд░рдкреНрд▓реЗрдЯ рдХреЛрдб рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛрддреЗ рд╣реИрдВред gRPC рдХреЗ рд╕рд╛рде рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдордп рдХреА рдмрдЪрдд рдХреЗ рдХрд╛рд░рдг рдЗрдВрдЬреАрдирд┐рдпрд░ рдЕрдм рдореБрдЦреНрдп рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкрд░ рдЕрдзрд┐рдХ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
gRPC рдХреЗ рд╡рд┐рдкрдХреНрд╖
рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣рдо рдЙрдореНрдореАрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ gRPC рдХреА рдХрдорд┐рдпрд╛рдВ рдЕрдВрддрддрдГ рд╣рд▓ рд╣реЛ рдЬрд╛рдПрдВрдЧреА, рд▓реЗрдХрд┐рди рдЕрдм рд╡реЗ рдЗрд╕рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдПрдВ рдЦрдбрд╝реА рдХрд░рддреЗ рд╣реИрдВред рдЖрдкрдХреЛ gRPC рдХреЗ рдХреБрдЫ рдиреБрдХрд╕рд╛рдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:
- рдкрд░рд┐рдкрдХреНрд╡рддрд╛ рдХреА рдХрдореА
рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдЕрдкрдирд╛рдиреЗ рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдзрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред gRPC рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рднреА рд╕реНрдкрд╖реНрдЯ рд╣реИред GraphQL рдХреЗ рд╕рд╛рдерд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ, GraphQL рдХреЗ рдкрд╛рд╕ StackOverflow рдкрд░ 14k рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рд╢реНрди рд╣реИрдВ, рдЬрдмрдХрд┐ gRPC рдХреЗ рдкрд╛рд╕ рдЗрд╕ рд╕рдордп рдХреЗрд╡рд▓ 4k рд╕реЗ рдереЛрдбрд╝рд╛ рдиреАрдЪреЗ рд╣реИред gRPC рд╕рдореБрджрд╛рдп рдореЗрдВ рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рдерд╛рдУрдВ, рд╕рдорд╛рдзрд╛рдиреЛрдВ рдФрд░ рд╕рдлрд▓рддрд╛рдУрдВ рдХреЗ рдЬреНрдЮрд╛рди рдХрд╛ рдЕрднрд╛рд╡ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ HTTP / 2 рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╕рд╣рд╛рдпрддрд╛ рдирд╣реАрдВ рд╣реИ, рд╕рд╛рде рд╣реА рд╕рд╛рде Google рдХреЗ рдмрд╛рд╣рд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдмрдлрд╝рд░реНрд╕ рднреА рдирд╣реАрдВ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЬреИрд╕реЗ-рдЬреИрд╕реЗ gRPC рд╕рдореБрджрд╛рдп рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдирдП рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЖрдХрд░реНрд╖рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рдпрд╣ рдЕрдВрддрддрдГ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдЧрд╛ред
- рд╕реАрдорд┐рдд рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕рдорд░реНрдерди
рдЪреВрдВрдХрд┐ рдХреЛрдИ рднреА рд╡рд░реНрддрдорд╛рди gRPC рд╡реЗрдм рдмреНрд░рд╛рдЙрдЬрд╝рд░ HTTP / 2 рдлреНрд░реЗрдо рдХреЛ рд╕рдВрднрд╛рд▓ рдирд╣реАрдВ рд╕рдХрддрд╛ рд╣реИ, рдЖрдк рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реЗ gRPC рд╕реЗрд╡рд╛ рдХреЛ рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рдХреЙрд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдХреНрдпреЛрдВрдХрд┐ gRPC рд╡реЗрдм рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдПрдЪрдЯреАрдЯреАрдкреА / 2 рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдЖрдкрдХреЛ gRPC рдХреЗ рд╕рд╛рде рдкреНрд░реЙрдХреНрд╕реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдХрдИ рдХрдорд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИред
- рдордиреБрд╖реНрдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рдЕрдкрдардиреАрдп
рдПрдХреНрд╕рдПрдордПрд▓ рдФрд░ рдЬреЗрдПрд╕рдУрдПрди рдХреЗ рд╡рд┐рдкрд░реАрдд, Protobuf рдлрд╛рдЗрд▓реЗрдВ рдорд╛рдирд╡-рдкрдардиреАрдп рдирд╣реАрдВ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдбреЗрдЯрд╛ рдХреЛ рдмрд╛рдЗрдирд░реА рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдкреЗрд▓реЛрдб рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ, рд╕рдорд╕реНрдпрд╛ рдирд┐рд╡рд╛рд░рдг рдХрд░рдиреЗ рдФрд░ рдореИрдиреНрдпреБрдЕрд▓ рдХреНрд╡реЗрд░реА рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рд░рд┐рдлреНрд▓реЗрдХреНрд╢рди рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдФрд░ gRPC рдХрдорд╛рдВрдб рдкреНрд░реЙрдореНрдкреНрдЯ рдЬреИрд╕реЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
- рдкреНрд░рдЧрддрд┐ рдЪрд╛рд░реНрдЯ рдореЗрдВ рдЧрд╣рд░рд╛ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдореЛрдбрд╝
рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдмрдлрд╝рд░реНрд╕ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдиреЗ рдФрд░ HTTP / 2 рдШрд░реНрд╖рдг рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рддрд░реАрдХреЛрдВ рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рдореЗрдВ рдХреБрдЫ рд╕рдордп рд▓рдЧреЗрдЧрд╛, REST рдФрд░ GraphQL рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЬрд┐рдирдореЗрдВ рд╕реЗ рджреЛрдиреЛрдВ рдЬреНрдпрд╛рджрд╛рддрд░ JSON рдХреЛ рдирд┐рдпреЛрдЬрд┐рдд рдХрд░рддреЗ рд╣реИрдВред
AppMaster рдХреИрд╕реЗ рдорджрдж рдХрд░рддрд╛ рд╣реИ?

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


