рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдЯрд┐рдкреНрд╕ рдФрд░ рдЯреНрд░рд┐рдХреНрд╕: рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рдФрд░ рдкреАрдПрдЪрдкреА-рдПрдлрдкреАрдПрдо рдореЗрдВ рд╢рд╛рдирджрд╛рд░ рд╢рдЯрдбрд╛рдЙрди рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ

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

рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдЯрд┐рдкреНрд╕ рдФрд░ рдЯреНрд░рд┐рдХреНрд╕: рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рдФрд░ рдкреАрдПрдЪрдкреА-рдПрдлрдкреАрдПрдо рдореЗрдВ рд╢рд╛рдирджрд╛рд░ рд╢рдЯрдбрд╛рдЙрди рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ

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

рд▓рд┐рдЦрд┐рддред рдлрд▓реА рдХреИрд╕реЗ рд░рд╣рддреА рд╣реИ

рд╣рдо рдкрд╣рд▓реЗ рд╣реА рдлрд▓реА рдХреЗ рдЬреАрд╡рди рдЪрдХреНрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рдЪреБрдХреЗ рд╣реИрдВ рдпрд╣ рд▓реЗрдЦ. рд╡рд┐рдЪрд╛рд░рд╛рдзреАрди рд╡рд┐рд╖рдп рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ, рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ: рдЙрд╕ рд╕рдордп рдЬрдм рдкреЙрдб рд░рд╛рдЬреНрдп рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ рд╕рдорд╛рдкреНрдд, рдирдП рдЕрдиреБрд░реЛрдз рдЗрд╕реЗ рднреЗрдЬреЗ рдЬрд╛рдиреЗ рдмрдВрдж рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ (рдкреЙрдб)ред рд╣рдЯрд╛рдП рдЧрдП рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд┐рдо рдмрд┐рдВрджреБрдУрдВ рдХреА рд╕реВрдЪреА рд╕реЗ)ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рддреИрдирд╛рддреА рдХреЗ рджреМрд░рд╛рди рдбрд╛рдЙрдирдЯрд╛рдЗрдо рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд░реЛрдХрдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдирд╛ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред

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

рдпрд╣ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдЬрдм рдПрдХ рдкреЙрдб рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ, рдмрд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд┐рддреНрд░ рджреЗрдЦреЗрдВ:

рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдЯрд┐рдкреНрд╕ рдФрд░ рдЯреНрд░рд┐рдХреНрд╕: рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рдФрд░ рдкреАрдПрдЪрдкреА-рдПрдлрдкреАрдПрдо рдореЗрдВ рд╢рд╛рдирджрд╛рд░ рд╢рдЯрдбрд╛рдЙрди рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ

рдП1, рдмреА1 - рдЪреВрд▓реНрд╣рд╛ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛
рдП2 - рдкреНрд░рд╕реНрдерд╛рди рд╕рд┐рдЧрдЯрд░реНрдо
рдмреА2 - рдПрдВрдбрдкреЙрдЗрдВрдЯ рд╕реЗ рдПрдХ рдкреЙрдб рдХреЛ рд╣рдЯрд╛рдирд╛
рдмреА3 - рдкрд░рд┐рд╡рд░реНрддрди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ (рдЕрдВрддрд┐рдо рдмрд┐рдВрджреБрдУрдВ рдХреА рд╕реВрдЪреА рдмрджрд▓ рдЧрдИ рд╣реИ)
рдмреА4 - рдЖрдИрдкреАрдЯреЗрдмрд▓реНрд╕ рдирд┐рдпрдо рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ

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

  • рдХрдиреЗрдХреНрд╢рди рднреЗрдЬреЗрдВ: рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╣реЗрдбрд░ рдореЗрдВ рдмрдВрдж рдХрд░реЗрдВ (рдпрджрд┐ рдпрд╣ HTTP рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ)ред
  • рдпрджрд┐ рдХреЛрдб рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ, рддреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЖрд▓реЗрдЦ рдПрдХ рд╕рдорд╛рдзрд╛рди рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдЕрдиреБрдЧреНрд░рд╣ рдЕрд╡рдзрд┐ рдХреЗ рдЕрдВрдд рддрдХ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред

рд▓рд┐рдЦрд┐рддред рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рдФрд░ рдкреАрдПрдЪрдкреА-рдПрдлрдкреАрдПрдо рдЕрдкрдиреА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдХреИрд╕реЗ рд╕рдорд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ

nginx

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

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

       lifecycle:
          preStop:
            exec:
              command:
              - /usr/sbin/nginx
              - -s
              - quit

рдЕрдм, рдЬрдм рдкреЙрдб рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╣рдо рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рдХрдВрдЯреЗрдирд░ рд▓реЙрдЧ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреЗрдЦреЗрдВрдЧреЗ:

2018/01/25 13:58:31 [notice] 1#1: signal 3 (SIGQUIT) received, shutting down
2018/01/25 13:58:31 [notice] 11#11: gracefully shutting down

рдФрд░ рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рд╣рдореЗрдВ рдХреНрдпрд╛ рдЪрд╛рд╣рд┐рдП: рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░ рджреЗрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдиреАрдЪреЗ рд╣рдо рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╕рдорд╕реНрдпрд╛ рдкрд░ рднреА рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг, рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рднреА nginx -s quit рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЧрд╝рд▓рдд рдврдВрдЧ рд╕реЗ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддреА рд╣реИ.

рдФрд░ рдЗрд╕ рд╕реНрддрд░ рдкрд░ рд╣рдордиреЗ рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рдХрд╛ рдХрд╛рдо рдкреВрд░рд╛ рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ: рдХрдо рд╕реЗ рдХрдо рд▓реЙрдЧ рд╕реЗ рдЖрдк рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╕рдм рдХреБрдЫ рдЙрд╕реА рддрд░рд╣ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬреИрд╕рд╛ рдЙрд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

PHP-FPM рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдбреАрд▓ рд╣реИ? рдпрд╣ рдЧреНрд░реЗрд╕рдлреБрд▓ рд╢рдЯрдбрд╛рдЙрди рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИ? рдЖрдЗрдП рдЗрд╕рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВред

рдкреАрдПрдЪрдкреА-рдПрдл рдкреА рдПрдо

PHP-FPM рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдереЛрдбрд╝реА рдХрдо рдЬрд╛рдирдХрд╛рд░реА рд╣реИред рдпрджрд┐ рдЖрдк рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдореИрдиреБрдЕрд▓ PHP-FPM рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдпрд╣ рдХрд╣реЗрдЧрд╛ рдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд POSIX рд╕рд┐рдЧреНрдирд▓ рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ:

  1. SIGINT, SIGTERM - рддреЗрдЬрд╝ рд╢рдЯрдбрд╛рдЙрди;
  2. SIGQUIT - рд╕реБрд╢реЛрднрд┐рдд рд╢рдЯрдбрд╛рдЙрди (рд╣рдореЗрдВ рдХреНрдпрд╛ рдЪрд╛рд╣рд┐рдП)ред

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

        lifecycle:
          preStop:
            exec:
              command:
              - /bin/kill
              - -SIGQUIT
              - "1"

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

рдЕрднреНрдпрд╛рд╕ред рдЧреНрд░реЗрд╕рдлреБрд▓ рд╢рдЯрдбрд╛рдЙрди рдХреЗ рд╕рд╛рде рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдорд╕реНрдпрд╛рдПрдВ

nginx

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рдпрд╛рдж рд░рдЦрдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реИ: рдХрдорд╛рдВрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ nginx -s quit рдПрдХ рдФрд░ рдЪрд░рдг рд╣реИ рдЬрд┐рд╕ рдкрд░ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЬрд╝рд░реВрд░реА рд╣реИред рд╣рдореЗрдВ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдЬрд╣рд╛рдВ рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рдЕрднреА рднреА SIGQUIT рд╕рд┐рдЧреНрдирд▓ рдХреЗ рдмрдЬрд╛рдп SIGTERM рднреЗрдЬрддрд╛ рдерд╛, рдЬрд┐рд╕рд╕реЗ рдЕрдиреБрд░реЛрдз рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдкреВрд░рд╛ рдирд╣реАрдВ рд╣реЛ рдкрд╛рддрд╛ рдерд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдРрд╕реЗ рд╣реА рдорд╛рдорд▓реЗ рдкрд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣рд╛рдВ. рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд╣рдо рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░рдг рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рдереЗ: рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдВрджреЗрд╣ рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдХреА рдкреБрд╖реНрдЯрд┐ рдирд╣реАрдВ рдХреА рдЧрдИ рдереАред рд▓рдХреНрд╖рдг рдпрд╣ рдерд╛ рдХрд┐ рд╕рдВрджреЗрд╢ рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рдХрдВрдЯреЗрдирд░ рд▓реЙрдЧ рдореЗрдВ рджреЗрдЦреЗ рдЧрдП рдереЗ: "рдХрдиреЗрдХреНрд╢рди 10 рдореЗрдВ рд╢реЗрд╖ рдЦреБрд▓рд╛ рд╕реЙрдХреЗрдЯ #5", рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдкреЙрдб рдмрдВрдж рд╣реЛ рдЧрдпрд╛ред

рд╣рдо рдРрд╕реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдЕрд╡рд▓реЛрдХрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдЗрдирдЧреНрд░реЗрд╕ рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рд╕реЗ:

рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдЯрд┐рдкреНрд╕ рдФрд░ рдЯреНрд░рд┐рдХреНрд╕: рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рдФрд░ рдкреАрдПрдЪрдкреА-рдПрдлрдкреАрдПрдо рдореЗрдВ рд╢рд╛рдирджрд╛рд░ рд╢рдЯрдбрд╛рдЙрди рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ
рддреИрдирд╛рддреА рдХреЗ рд╕рдордп рд╕реНрдерд┐рддрд┐ рдХреЛрдб рдХреЗ рд╕рдВрдХреЗрддрдХ

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

[alert] 13939#0: *154 open socket #3 left in connection 16
[alert] 13939#0: *168 open socket #6 left in connection 13

рд╕реНрдЯреЙрдк рд╕рд┐рдЧреНрдирд▓ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рдж, рдХрдВрдЯреЗрдирд░ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд░реБрдХрдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИ: рдЗрд╕рдХреА рдкреБрд╖реНрдЯрд┐ рдЗрд╕ рддрдереНрдп рд╕реЗ рд╣реЛрддреА рд╣реИ рдХрд┐ 503 рддреНрд░реБрдЯрд┐ рдЕрдм рдирд╣реАрдВ рджреЗрдЦреА рдЬрд╛рддреА рд╣реИред

рдпрджрд┐ рдЖрдк рдЗрд╕реА рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдХрд┐рд╕ рд╕реНрдЯреЙрдк рд╕рд┐рдЧреНрдирд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдкреНрд░реАрд╕реНрдЯреЙрдк рд╣реБрдХ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред рдпрд╣ рдмрд╣реБрдд рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдареАрдХ рдпрд╣реА рд╣реИред

PHP-FPM... рдФрд░ рднреА рдмрд╣реБрдд рдХреБрдЫ

PHP-FPM рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдХреЛ рдПрдХ рддреБрдЪреНрдЫ рддрд░реАрдХреЗ рд╕реЗ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: рдпрд╣ рдмрд╛рд▓ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рдЙрдиреНрд╣реЗрдВ рд╕рдорд╛рдкреНрдд рдХрд░ рджреЗрддрд╛ рд╣реИ, рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рддреИрдирд╛рддреА рдФрд░ рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рджреМрд░рд╛рди 502 рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╣реЛрддреА рд╣реИрдВред 2005 рд╕реЗ bugs.php.net рдкрд░ рдХрдИ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯреЗрдВ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП)ред рдпрд╣рд╛рдВ ╨╕ рдпрд╣рд╛рдВ), рдЬреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рд▓реЙрдЧ рдореЗрдВ рдХреБрдЫ рднреА рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрдЧрд╛: PHP-FPM рдмрд┐рдирд╛ рдХрд┐рд╕реА рддреНрд░реБрдЯрд┐ рдпрд╛ рддреГрддреАрдп-рдкрдХреНрд╖ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреЗ рдЕрдкрдиреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреА рдШреЛрд╖рдгрд╛ рдХрд░реЗрдЧрд╛ред

рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рд╕реНрд╡рдпрдВ рдХреБрдЫ рд╣рдж рддрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░ рд╣реА рдирд┐рд░реНрднрд░ рд╣реЛ рд╕рдХрддреА рд╣реИ рдФрд░ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рдЧрд░рд╛рдиреА рдореЗрдВ рд╕реНрд╡рдпрдВ рдкреНрд░рдХрдЯ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдПрдХ рд╕рд░рд▓ рд╕рдорд╛рдзрд╛рди рджрд┐рдорд╛рдЧ рдореЗрдВ рдЖрддрд╛ рд╣реИ: рдЗрд╕рдХреЗ рд╕рд╛рде рдПрдХ рдкреНрд░реАрд╕реНрдЯреЙрдк рд╣реБрдХ рдЬреЛрдбрд╝реЗрдВ sleep(30). рдпрд╣ рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рдХреЗ рд╕рднреА рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ (рдФрд░ рд╣рдо рдирдП рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ pod рдкрд╣рд▓реЗ рд╣реА рдпреЛрдЧреНрдп рд╕рдорд╛рдкреНрдд), рдФрд░ 30 рд╕реЗрдХрдВрдб рдХреЗ рдмрд╛рдж рдкреЙрдб рд╕реНрд╡рдпрдВ рдПрдХ рд╕рд┐рдЧреНрдирд▓ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдЧрд╛ SIGTERM.

рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ lifecycle рдХрдВрдЯреЗрдирд░ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:

    lifecycle:
      preStop:
        exec:
          command:
          - /bin/sleep
          - "30"

рд╣рд╛рд▓рд╛рдБрдХрд┐, 30-рд╕реЗрдХрдВрдб рдХреЗ рдХрд╛рд░рдг sleep рд╣рдо рджреГрдврд╝рддрд╛ рд╕реЗ рд╣рдо рдкрд░рд┐рдирд┐рдпреЛрдЬрди рд╕рдордп рдмрдврд╝рд╛ рджреЗрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдкреЙрдб рд╕рдорд╛рдкреНрдд рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдХрдо рд╕реЗ рдХрдо 30 рд╕реЗрдХрдВрдб, рдЬреЛ рдЦрд╝рд░рд╛рдм рд╣реИ. рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?

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

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

рдЗрд╕рд▓рд┐рдП, рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░ рдкрд╣рд▓реЗ рд╕реЗ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╕рд╛рде process_control_timeout рдЖрдк рдЗрд╕рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ lifecycle:

lifecycle:
  preStop:
    exec:
      command: ["/bin/bash","-c","/bin/sleep 1; kill -QUIT 1"]

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рджреЗрд░реА рдХреА рднрд░рдкрд╛рдИ рдХрд░реЗрдВрдЧреЗ sleep рдФрд░ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рд╕рдордп рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╡реГрджреНрдзрд┐ рди рдХрд░реЗрдВ: рдХреНрдпрд╛ 30 рд╕реЗрдХрдВрдб рдФрд░ рдПрдХ рдХреЗ рдмреАрдЪ рдХреЛрдИ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдЕрдВрддрд░ рд╣реИ?.. рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рд╣реИ process_control_timeoutрдФрд░ lifecycle рдЕрдВрддрд░рд╛рд▓ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдХреЗрд╡рд▓ "рд╕реБрд░рдХреНрд╖рд╛ рдЬрд╛рд▓" рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

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

рдЕрднреНрдпрд╛рд╕ред рдкреЙрдб рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреА рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП рд▓реЛрдб рдкрд░реАрдХреНрд╖рдг

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

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

рдПрдХ рдФрд░ рдмрд╛рд░реАрдХрд┐рдпрд╛рдВ рдЗрд╕рдХреА рд╕рдорд╛рдкреНрддрд┐ рдХреЗ рджреМрд░рд╛рди рдХрдВрдЯреЗрдирд░ рд▓реЙрдЧ рдХреЛ рджреЗрдЦрдирд╛ рд╣реИред рдХреНрдпрд╛ рдЧреНрд░реЗрд╕рдлреБрд▓ рд╢рдЯрдбрд╛рдЙрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╡рд╣рд╛рдВ рджрд░реНрдЬ рдХреА рдЧрдИ рд╣реИ? рдХреНрдпрд╛ рдЕрдиреНрдп рд╕рдВрд╕рд╛рдзрдиреЛрдВ рддрдХ рдкрд╣реБрдБрдЪрддреЗ рд╕рдордп рд▓реЙрдЧ рдореЗрдВ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрдбрд╝реЛрд╕реА PHP-FPM рдХрдВрдЯреЗрдирд░ рддрдХ)? рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд╣реА рддреНрд░реБрдЯрд┐рдпрд╛рдБ (рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ)? рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд▓реЗрдЦ рдХреА рдкрд░рд┐рдЪрдпрд╛рддреНрдордХ рдЬрд╛рдирдХрд╛рд░реА рдЖрдкрдХреЛ рдпрд╣ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд╕рдордЭрдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧреА рдХрд┐ рд╕рдорд╛рдкреНрддрд┐ рдХреЗ рджреМрд░рд╛рди рдХрдВрдЯреЗрдирд░ рдХрд╛ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИред

рддреЛ, рдкрд╣рд▓рд╛ рдЯреЗрд╕реНрдЯ рд░рди рдмрд┐рдирд╛ рд╣реБрдЖ lifecycle рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдмрд┐рдирд╛ (process_control_timeout PHP-FPM рдореЗрдВ)ред рдЗрд╕ рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рдЕрдиреБрдорд╛рдирд┐рдд рд╕рдВрдЦреНрдпрд╛ (рдФрд░ рдХреНрдпрд╛ рдХреЛрдИ рд╣реИрдВ) рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдирд╛ рдерд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рд╕реЗ, рдЖрдкрдХреЛ рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдкреЙрдб рдХреЗ рд▓рд┐рдП рдФрд╕рдд рддреИрдирд╛рддреА рдХрд╛ рд╕рдордп рд▓рдЧрднрдЧ 5-10 рд╕реЗрдХрдВрдб рдерд╛ рдЬрдм рддрдХ рдХрд┐ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рддреИрдпрд╛рд░ рди рд╣реЛ рдЬрд╛рдПред рдкрд░рд┐рдгрд╛рдо рд╣реИрдВ:

рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдЯрд┐рдкреНрд╕ рдФрд░ рдЯреНрд░рд┐рдХреНрд╕: рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рдФрд░ рдкреАрдПрдЪрдкреА-рдПрдлрдкреАрдПрдо рдореЗрдВ рд╢рд╛рдирджрд╛рд░ рд╢рдЯрдбрд╛рдЙрди рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ

Yandex.Tank рд╕реВрдЪрдирд╛ рдкреИрдирд▓ 502 рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рд╡реГрджреНрдзрд┐ рджрд┐рдЦрд╛рддрд╛ рд╣реИ, рдЬреЛ рддреИрдирд╛рддреА рдХреЗ рд╕рдордп рд╣реБрдИ рдФрд░ рдФрд╕рддрди 5 рд╕реЗрдХрдВрдб рддрдХ рдЪрд▓реАред рд╕рдВрднрд╡рддрдГ рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рдерд╛ рдХреНрдпреЛрдВрдХрд┐ рдкреБрд░рд╛рдиреЗ рдкреЙрдб рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рддреЗ рд╕рдордп рдореМрдЬреВрджрд╛ рдЕрдиреБрд░реЛрдз рд╕рдорд╛рдкреНрдд рд╣реЛ рд░рд╣реЗ рдереЗред рдЗрд╕рдХреЗ рдмрд╛рдж, 503 рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╕рд╛рдордиреЗ рдЖрдИрдВ, рдЬреЛ рдПрдХ рд░реБрдХреЗ рд╣реБрдП рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рдХрдВрдЯреЗрдирд░ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдерд╛, рдЬрд┐рд╕рдиреЗ рдмреИрдХрдПрдВрдб рдХреЗ рдХрд╛рд░рдг рдХрдиреЗрдХреНрд╢рди рднреА рдЧрд┐рд░рд╛ рджрд┐рдпрд╛ (рдЬрд┐рд╕рдиреЗ рдЗрдирдЧреНрд░реЗрд╕ рдХреЛ рдЗрд╕рд╕реЗ рдХрдиреЗрдХреНрдЯ рд╣реЛрдиреЗ рд╕реЗ рд░реЛрдХ рджрд┐рдпрд╛)ред

рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХреИрд╕реЗ process_control_timeout PHP-FPM рдореЗрдВ рд╣рдореЗрдВ рдЪрд╛рдЗрд▓реНрдб рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓реЗрдЧреА, рдпрд╛рдиреАред рдРрд╕реА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд╕реБрдзрд╛рд░реЗрдВ. рдЗрд╕ рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреБрдирдГ рддреИрдирд╛рдд рдХрд░реЗрдВ:

рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдЯрд┐рдкреНрд╕ рдФрд░ рдЯреНрд░рд┐рдХреНрд╕: рдПрдирдЬреАрдЖрдИрдПрдирдПрдХреНрд╕ рдФрд░ рдкреАрдПрдЪрдкреА-рдПрдлрдкреАрдПрдо рдореЗрдВ рд╢рд╛рдирджрд╛рд░ рд╢рдЯрдбрд╛рдЙрди рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ

500рд╡реАрдВ рддреИрдирд╛рддреА рдХреЗ рджреМрд░рд╛рди рдХреЛрдИ рдФрд░ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рд╣реИ! рдкрд░рд┐рдирд┐рдпреЛрдЬрди рд╕рдлрд▓ рд╣реИ, рд╕реБрдВрджрд░ рд╢рдЯрдбрд╛рдЙрди рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИред

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

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

рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╢рд╛рд▓реАрдирддрд╛рдкреВрд░реНрд╡рдХ рд╕рдорд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВ:

  1. рдХреБрдЫ рд╕реЗрдХрдВрдб рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВ рдФрд░ рдлрд┐рд░ рдирдП рдХрдиреЗрдХреНрд╢рди рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрдВред
  2. рд╕рднреА рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рддрдХ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВ рдФрд░ рдЙрди рд╕рднреА рдХреАрдкреЗрд▓рд┐рд╡ рдХрдиреЗрдХреНрд╢рдиреЛрдВ рдХреЛ рдмрдВрдж рдХрд░ рджреЗрдВ рдЬреЛ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред
  3. рдЕрдкрдиреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕рдорд╛рдкреНрдд рдХрд░реЗрдВ.

рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╕рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛рдУрдВ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ:

  • рдПрдХ рдкреНрд░реА-рд╕реНрдЯреЙрдк рд╣реБрдХ рдЬреЛрдбрд╝рдирд╛ рдЬреЛ рдХреБрдЫ рд╕реЗрдХрдВрдб рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдЧрд╛;
  • рдЙрдкрдпреБрдХреНрдд рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдмреИрдХрдПрдВрдб рдХреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдирд╛ред

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

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

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

рдкреБрдирд╢реНрдЪ

K8s рдЯрд┐рдкреНрд╕ рдФрд░ рдЯреНрд░рд┐рдХреНрд╕ рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╕реЗ рдЕрдиреНрдп:

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ