Gunicorn: Windows рд╕рдорд░реНрдерди рдЬреЛрдбрд╝реЗрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 1 рдордИ 2013  ┬╖  90рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: benoitc/gunicorn

рдпрд╣ рдЙрди рдЪреАрдЬреЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдЬрд┐рди рдкрд░ рд╣рдордиреЗ PyCon . рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреА рдереА

Improvement FeaturCore help wanted - Mailing List - Platforwindows

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

@jtan4nih рд╡рд╣ рд░рд╡реИрдпрд╛ рдЕрдиреБрдЪрд┐рдд рд╣реИред

рдкрд╛рдпрдерди рдХреНрд░реЙрд╕ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рд╣реИ, рдЧрдирд┐рдХреЛрд░реНрди рдирд╣реАрдВ рд╣реИред

рд╕рднреА 90 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╡рд┐рдкред R18 рдХреЗ рд▓рд┐рдП рдпреЛрдЬрдирд╛ рдмрдирд╛рдИред

рдЙрд╕ рдкрд░ рдХреБрдЫ рдЕрдкрдбреЗрдЯ:

  • SOCKET рд╕рдорд░реНрдерди рдХрд╛рдлреА рд╣реЛ рдЪреБрдХрд╛ рд╣реИ, рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ рдПрдХ рд╢рд╛рдЦрд╛ рдСрдирд▓рд╛рдЗрди рдкреЛрд╕реНрдЯ рдХреА рдЬрд╛рдПрдЧреА

рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:

рдПрдХ рдкреВрд░реНрдг рд╡рд┐рдВрдбреЛрдЬрд╝ рд╕реЗрд╡рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЧрдирд┐рдХреЛрд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрд╡рд╛ рдХреЛ рдкреНрд░рд╛рд░рдВрдн/рдмрдВрдж/рдкреБрдирд░рд╛рд░рдВрдн рдХрд░реЗрдВред рдпрд╣ рдХрд┐рд╕реА рддрд░рд╣ рдпреВрдирд┐рдХреНрд╕ рдХреЗ рддрд╣рдд рд╕рдВрдХреЗрддреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреА рдЬрдЧрд╣ рд▓реЗ рд░рд╣рд╛ рд╣реИред

рд╕рдорд░реНрдерди рдЕрдВрддрддрдГ R20 рдореЗрдВ рд╣реЛрдЧрд╛ред рдореИрдВ рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдпрд╛ рдкреАрдЖрд░ рддреИрдпрд╛рд░ рдХрд░реВрдВрдЧрд╛ред

рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреАрдЬреЗрдВ рд╣реИрдВ:

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

рдЧрдирд┐рдХреЛрд░реНрди рдХреЗ рд▓рд┐рдП рд╡рд┐рдВрдбреЛрдЬрд╝ рд╕рдкреЛрд░реНрдЯ рдЬреЛрдбрд╝рдиреЗ рдкрд░ рдХреНрдпрд╛ рдкреНрд░рдЧрддрд┐ рд╣реБрдИ рд╣реИ? рдпрд╛ рдпреЛрдВ рдХрд╣реЗрдВ рдХрд┐ рдЖрдк R20 рд╕реЗ рдХрд┐рддрдиреА рджреВрд░ рд╣реИрдВ? рдореБрдЭреЗ #587 . рдЬреИрд╕реА рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ

рдзреАрдореА рдкреНрд░рдЧрддрд┐ред рдореИрдВ рдЕрдм рдереНрд░реЗрдбреЗрдб рдХрд╛рд░реНрдп рдХреЗ рд╕рд╛рде R19 рдЬрд╛рд░реА рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдореИрдВ рд╕реЛрдорд╡рд╛рд░ рдХреЛ рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдКрдВрдЧрд╛ред рд╡рд┐рдВрдбреЛрдЬрд╝ рд╕рдкреЛрд░реНрдЯ рдареАрдХ рдмрд╛рдж рдореЗрдВ рдЖ рдЬрд╛рдПрдЧрд╛ред

рдХреНрдпрд╛ рдпрд╣ рд╡рд┐рдВрдбреЛрдЬрд╝ рд╕рдорд░реНрдерд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдХрд╣реАрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ?

рд╡рд┐рдВрдбреЛрдЬ рд╕рдкреЛрд░реНрдЯ R20 рдореЗрдВ рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рдХреБрдЫ рд╕рдордп рд▓рдЧреЗрдЧрд╛ рдЬрдм рддрдХ рдХрд┐ рдЧрд┐рдирдХреЙрд░реНрди рдореЗрдВ рд╡рд┐рдВрдбреЛрдЬрд╝ рд╕рдкреЛрд░реНрдЯ рдирд╣реАрдВ рд╣реЛрдЧрд╛ ... рдореИрдВрдиреЗ рдЙрдмрдВрдЯреВ рдХреЗ рд╕рд╛рде рдПрдХ рд╡реАрдПрдо рдмрдирд╛рдпрд╛, рдФрд░ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ .....

рдЗрд╕рдореЗрдВ рдХрд┐рд╕реА рднреА рдкреНрд░рдЧрддрд┐ рдХреЗ рд▓рд┐рдП рдмрд╕ рдЙрддреНрд╕реБрдХред рдкрд╣рд▓реЗ рдкрд╛рд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕реЗ рддреЗрдЬрд╝ рд╣реЛрдиреЗ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ; рдПрдХ рдмрдбрд╝рд╛ рдлрд╛рдпрджрд╛ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдЧрдирд┐рдХреЛрд░реНрди рдХреЗ рд╕рд╛рде рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдмрджрд▓реЗ рдмрд┐рдирд╛ рд▓рд┐рдирдХреНрд╕ рд╕рд░реНрд╡рд░ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╣реЗрд░реЛрдХреВ) рдкрд░ рдзрдХреНрдХрд╛ рджреЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ред

@robertlagrant рдпрд╣ рдореЗрд░реЗ рдЯреВрдбреВ рдкрд░ рд╣реИред рдореБрдЭреЗ рдкрд╣рд▓реЗ рдПрдХ рд╡рд┐рдВрдбреЛрдЬрд╝ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдЦреЛрдЬрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИред R20 рдЕрдХреНрдЯреВрдмрд░ рдореЗрдВ рд░рд┐рд▓реАрдЬ рд╣реЛрдЧреА,

рдХреИрд╕реЗ VM рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрдзреБрдирд┐рдХ.ie ? рд╡реЗ рд╕реНрд╡рддрдВрддреНрд░ рдФрд░ рдХрд╛рдиреВрдиреА рд╣реИрдВ
22 рд╕рд┐рддрдВрдмрд░ 2014 рдХреЛ рдЕрдкрд░рд╛рд╣реНрди 3:30 рдмрдЬреЗ, "рдмреЗрдиреЛрдЗрдЯ рдЪреЗрд╕рдиреНрдпреВ" рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:

@robertlagrant https://github.com/robertlagrant рдпрд╣ рдореЗрд░реЗ рдХрд╛рд░реНрдп рдкрд░ рддрдм рддрдХ рд╣реИ рдЬрдм рддрдХ
рд╡рд░реНрд╖ рдХреА рд╕рдорд╛рдкреНрддрд┐ред рдореБрдЭреЗ рдкрд╣рд▓реЗ рдПрдХ рд╡рд┐рдВрдбреЛрдЬрд╝ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдЦреЛрдЬрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИред

-
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ рдпрд╛ рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/benoitc/gunicorn/issues/524#issuecomment -56372470ред

рдореИрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ IE8 рдореЗрдВ рдПрдХ рд╡реЗрдм рдРрдк рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Modern.ie рдЫрд╡рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИред рдЬрд╛рдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рдФрд░ рдмрдврд╝рд┐рдпрд╛ рдХрд╛рдо рдХрд┐рдпрд╛ред

@benoitc рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ PSF рдЖрдкрдХреЛ рд╡рд┐рдВрдбреЛрдЬрд╝ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИред

@benoitc рдХреНрдпрд╛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ WIP рд╢рд╛рдЦрд╛ рд╣реИ? рдореИрдВ рд╡рд┐рдВрдбреЛрдЬ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╣реАрдВ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВред

@berkerpeksag рдЕрднреА рддрдХ рдирд╣реАрдВ:/рд╣рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ asap рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЬреИрд╕реЗ @cyberdelia рдиреЗ рдХрд╣рд╛ рдХрд┐ рд╣рдо PSF рдореЗрдВ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХрд╛ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдорд╛рдВрдЧ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЧрдирд┐рдХреЛрд░реНрди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд╡рд┐рдЪрд╛рд░?

рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИред https://www.python.org/psf/grants/ рдореЗрдВ рдЕрдиреБрджрд╛рди рдкреНрд░рд╕реНрддрд╛рд╡реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рднреА рдЬрд╛рдирдХрд╛рд░реА рд╣реИред

рдЗрд╕ рдкрд░ рдХреЛрдИ рдЕрдкрдбреЗрдЯ?

рдореИрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрдкрдбреЗрдЯ рднреА рдвреВрдВрдв рд░рд╣рд╛ рд╣реВрдВред

@berkerpeksag рдЖрдЗрдП рдЖрдИрдЖрд░рд╕реА рдкрд░ рдмрд╛рдд рдХрд░реЗрдВ, рдмрд╕ рдореБрдЭреЗ рдХрднреА-рдХрднреА рдкрд╣рд▓реЗ рдкрд┐рдВрдЧ рдХрд░реЗрдВ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЗрди рджрд┐рдиреЛрдВ рдХрд┐рд╕реА рднреА рддрддреНрдХрд╛рд▓ рдЪреАрдЬрд╝ рд╕реЗ рджреВрд░ рд╣реВрдВ :)

@benoitc рдЗрд╕ рдкрд░ рдХреЛрдИ рдЕрдкрдбреЗрдЯ?

@lealhugui рдЬрд╣рд╛рдБ рддрдХ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рддрдм рд╕реЗ рдХреЛрдИ рдкреНрд░рдЧрддрд┐ рдирд╣реАрдВ рд╣реБрдИ рд╣реИред рд╡реИрд╕реЗ рднреА рдореИрдВ рдПрдХ рдпреЛрдЬрдирд╛ рд▓реЗрдХрд░ рдЖрдпрд╛ рд╣реВрдВ:

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

рдореИрдВ рдХрднреА-рдХрднреА рдорд╛рд░реНрдЪ рдореЗрдВ рд░рд┐рд▓реАрдЬ рдХреА рдЙрдореНрдореАрдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рд╢рд╛рдпрдж рдЬрд▓реНрджреА рд▓реЗрдХрд┐рди рдХреЛрдИ рд╡рд╛рджрд╛ рдирд╣реАрдВ :) рдХрд╛рдо рддреЗрдЬреА рд╕реЗ рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддрд╛ рд╣реИ рдЕрдЧрд░ рдХреЛрдИ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореБрдЭрд╕реЗ рдмреЗрд╣рддрд░ рдЦрд┐рдбрд╝рдХреА рдЬрд╛рдирддрд╛ рд╣реИ (рд╕рдВрдХреЗрдд рдореИрдВрдиреЗ 1995 рд╕реЗ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ ...) рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ!

@benoitc рдордзреНрдп рдЬрдирд╡рд░реА рдХреЗ рдмрд╛рдж, рдореИрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ (рдореВрд▓ рд░реВрдк рд╕реЗ рдкрд░реАрдХреНрд╖рдг, рдпрд╛ рдХреБрдЫ рднреА рдЬреЛ рдЖрдкрдХреЛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдореИрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ)ред

@lealhugui рдзрдиреНрдпрд╡рд╛рдж! рдореИрдВ ASAP рдЕрдкрдбреЗрдЯ рдкреНрд░рджрд╛рди рдХрд░реВрдВрдЧрд╛

рдЙрдореНрдореАрдж рд╣реИ рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИред рдХреНрдпрд╛ рд╣рдо рдЕрднреА рднреА рдорд╛рд░реНрдЪ рдореЗрдВ рдЗрд╕ рд░рд┐рд▓реАрдЬрд╝ рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреЗ рд╣реИрдВ?

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

@tilgovi рдЖрдИрдкреАрд╕реА рдХрд╛ рдХрд╛рдо рдХрднреА-рдХрднреА рдЕрдЧрд▓реЗ рд╣рдлреНрддреЗ рдЕрдВрдд рдореЗрдВ рдПрдХ рд╢рд╛рдЦрд╛ рдореЗрдВ

рдЕрдм рд╡рд┐рдВрдбреЛрдЬрд╝ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдпрд╣рд╛рдБ рд╡рд╣ рдпреЛрдЬрдирд╛ рд╣реИ рдЬреЛ рдореЗрд░реЗ рджрд┐рдорд╛рдЧ рдореЗрдВ рд╣реИред рдореБрджреНрджреЛрдВ рдХреЛ рдиреЛрдЯ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ Gunicorn рдХреЛ windows CI рд╕реЗ

  • рд╕рд┐рдЧреНрдирд▓ рд╣реИрдВрдбрд▓рд┐рдВрдЧ : рд╕рд┐рдЧреНрдирд▓ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреЗ рдиреАрдЪреЗ рдЕрд▓рдЧ рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд░рд╛рд╕реНрддрд╛ рдЦреЛрдЬрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ: http://docs.gunicorn.org/en/stable/signals.html
  • рд╡рд░реНрдХрд░ рд╕реНрдкреЙрдирд┐рдВрдЧ : рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рд╢рд╛рдпрдж рдХреБрдЫ рдЕрдВрддрд░ рд╣реИред рдЖрдИрдкреАрд╕реА рдХрд╛рд░реНрдп рдЕрд╕реНрдерд╛рдпреА рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдЯрд╛ рджреЗрдЧрд╛ рдХрд┐ рдХрд░реНрдордЪрд╛рд░реА рдЬреАрд╡рд┐рдд рд╣реИрдВ рдпрд╛ рдирд╣реАрдВ, рдЗрд╕реЗ рдПрдХ рдкрд╛рдЗрдк рджреНрд╡рд╛рд░рд╛ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕ рднрд╛рдЧ рдХреЛ рд╕рдВрдЧрдд рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП
  • рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ : рдореБрдЭреЗ рдЕрднреА рддрдХ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдкрд░ рдЧреАрд╡реЗрдВрдЯ, рдЗрд╡реЗрдВрдЯрд▓реЗрдЯ рдФрд░ рдмрд╡рдВрдбрд░ рд╢реНрд░рдорд┐рдХреЛрдВ рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреИрд╕рд╛ рд╣реИред рд╡реИрд╕реЗ рднреА рдЙрдиреНрд╣реЗрдВ рдЧрдирд┐рдХреЛрд░реНрди рдХреЗ рдмрд╛рд╣рд░ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рдЕрдЪреНрдЫреА рдХреЙрд▓ рд╣реИред рдЗрд╕рд▓рд┐рдП рд╣рдо рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ рд╕реЗ рдЕрдкрдЧреНрд░реЗрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐ рд╣рдо рдЕрдЬрдЧрд░ 3 рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ рддреЛ gthread рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдкрд╛рд░рджрд░реНрд╢реА рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред

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

рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рд╕рд┐рдЧреНрдирд▓ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рдпрдерди 3.5 рдПрдХ рдЙрдкрдпреЛрдЧреА рдлреАрдЪрд░ рдЬреЛрдбрд╝рддрд╛ рд╣реИ: signal.set_wakeup_fd() рдЕрдм рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рд╕реЙрдХреЗрдЯ рд╣реИрдВрдбрд▓ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред
https://docs.python.org/dev/library/signal.html#signal.set_wakeup_fd

рдЬреИрд╕реЗ @cyberdelia рдиреЗ рдХрд╣рд╛ рдХрд┐ рд╣рдо PSF рдореЗрдВ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХрд╛ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдорд╛рдВрдЧ рд╕рдХрддреЗ рд╣реИрдВ

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

@ рд╣рд╛рдпрдкреЛ рдзрдиреНрдпрд╡рд╛рджред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдпреВрдирд┐рдХреНрд╕ рдкрд░ рднреА рдордзреНрдпрд╕реНрде рдХреЛ рдЬрдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ... рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреАред

рдпрджрд┐ рдХреЛрдИ рдХреЛрд░ рджреЗрд╡ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ рддреЛ рд╡рд╣ рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ :) рдХреЛрдИ рдмрд╛рд╣рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реЛрдиреЗ рдкрд░ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдкреВрдЫрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рд╡рд┐рдЪрд╛рд░?

рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреНрд╖рдорддрд╛ рдХреЗ рд▓рд┐рдП рд▓рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рдкрд╛рд╕

рдХреНрдпрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ рдХрд┐ рд╕реАрдорд┐рдд рд▓рд┐рдирдХреНрд╕ рдФрд░ рдЧрдирд┐рдХреЛрд░реНрди рдЬреНрдЮрд╛рди рд╡рд╛рд▓рд╛ рд╡реНрдпрдХреНрддрд┐ рдЗрд╕реЗ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ рдХреНрдпрд╛ рд╕рдорд╕реНрдпрд╛рдПрдВ рдмрд╣реБрдд рдЧреИрд░-рддреБрдЪреНрдЫ рд╣реИрдВ?

рдпрд╣ рдореБрджреНрджрд╛ рдХреНрдпреЛрдВ рдмрдВрдж рд╣реИ? рдореБрдЭреЗ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣реА рд╣реИ

рдпрд╣ рдореБрджреНрджрд╛ рдЕрднреА рднреА рдЦреБрд▓рд╛ рд╣реИред

@DominikDitoIvosevic рдпрд╣ рдЕрднреА рднреА рдЦреБрд▓рд╛ рд╣реИред рдореИрдВ рдЗрд╕ рд╕рдкреНрддрд╛рд╣ рдХрднреА-рдХрднреА рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рд░реЛрдбрдореИрдк рдкреНрд░рджрд╛рди рдХрд░реВрдВрдЧрд╛ред

рдореИрдВ рдЖрдЬ рдХреБрдЫ рд╕рдВрдЧрддрддрд╛ рдкрдврд╝рдиреЗ рдореЗрдВ рдареЛрдХрд░ рдЦрд╛рдИред рдореИрдВ #1310 рдкрд░ рдЕрдкрдирд╛ рдХрд╛рдо рджреЗрдЦ рд░рд╣рд╛ рдерд╛ред рдореИрдВрдиреЗ FD_CLOEXEC рдХреЛ systemd C рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рд╕рдВрднрд╛рд▓рд╛ред рдпрд╣ рдореБрдЭреЗ fork рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрддреЗ рд╣реБрдП PEP 446 рддрдХ рд▓реЗ рдЧрдпрд╛, рдФрд░ рдпрд╣ рдпрд╛рдж рд░рдЦрдирд╛ рдХрд┐ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдХреЛрдИ fork рд╣реИред

рдЪреАрдЬреЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд░реЛрдбрдореИрдк рдкрд░ рд╣рдореЗрдВ рдХреБрдЫ рдЪреАрдЬреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

  • рд╕реАрдЖрдИ рд╕реЗрдЯ рдХрд░реЗрдВ
  • os.fork рдмрджрд▓реЗрдВ, рд╢рд╛рдпрдж multiprocessing.Process
  • WorkerTemp рдХреЛ multiprocessing.Pipe рдмрджрд▓реЗрдВ
  • FD рдЗрдирд╣реЗрд░рд┐рдЯреЗрдВрд╕ рд╣реЗрд▓реНрдкрд░реНрд╕ рдХреЗ рд╕рдВрдЧрддрддрд╛ рд╕рдВрд╕реНрдХрд░рдг рдЬреЛрдбрд╝реЗрдВ
  • (рдЕрдиреНрдп рдЦреЛрдЬреЗрдВ, рд╕рдВрднрд╡рддрдГ рдЕрдзрд┐рдХ рдорд╛рдореВрд▓реА, рдЪреАрдЬреЗрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдареАрдХ рдХрд░реЗрдВ)

рдХрд╛рдо рдкрд░ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреЗ рд╕рд╛рде рдЕрдЯрдХ рдЧрдпрд╛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореЗрд░реА рдорджрдж рдХрд░реЗрдЧрд╛ред рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреА рдмрд╣реБрдд рдЙрдореНрдореАрдж рд╣реИ!

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

реирежрезрем-режрео-режрео реиреи:рейреп рдЬреАрдПрдордЯреА+режрей:режреж рд╣рд┐рд░реЛрд▓реМ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com :

рдХрд╛рдо рдкрд░ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреЗ рд╕рд╛рде рдЕрдЯрдХ рдЧрдпрд╛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореЗрд░реА рдорджрдж рдХрд░реЗрдЧрд╛ред рдЕрддреНрдпрдзрд┐рдХ рдкреНрд░рддреНрдпрд╛рд╢рд┐рдд
рдпрд╣ рд╕реБрд╡рд┐рдзрд╛!

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЗрд╕ рдереНрд░реЗрдб рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реА рд╣реИред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/benoitc/gunicorn/issues/524#issuecomment -238351654,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AALnfBAXBrmPlU1JPx6RXI0vFQPLmBlyks5qd4XhgaJpZM4AnyCw
.

рдЖрдкрдХрд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕реА,
рдЧреНрд▓реЗрдм

@ рдЪреЗрд╕реНрдЯрд░89 рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╡рд╣рд╛рдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реИ ....

@hirolau рдореБрдЭреЗ рдкрд┐рдЫрд▓реЗ рдорд╣реАрдиреЗ рдПрдХ MSDN рдбреЗрд╡рд▓рдкрд░ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдорд┐рд▓рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕реЗ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ @berkerpeksag рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ред рдореИрдВ рдПрдХ рдпреЛрдЬрдирд╛ рдХрд╛ рдорд╕реМрджрд╛ рддреИрдпрд╛рд░ рдХрд░реВрдВрдЧрд╛ рддрд╛рдХрд┐ рд╣рдо рдЗрд╕реЗ рдЕрдЧрд▓реЗ рдорд╣реАрдиреЗ рдХрднреА-рдХрднреА рдЙрдкрд▓рдмреНрдз рдХрд░рд╛ рд╕рдХреЗрдВ :)

@benoitc - рдмреЗрд╢рд░реНрдо рдЯрдХреНрдХрд░!

рдореИрдВ рдЖрдорддреМрд░ рдкрд░ рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЗрд╕рд▓рд┐рдП рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдкрд░ рдЧрдирд┐рдХреЛрд░реНрди рдХреЗ рдХрд╛рдо рдХреА рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛рдПрдЧреАред рдзрдиреНрдпрд╡рд╛рдж !
рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдпреЛрдЬрдирд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрдм рддреИрдпрд╛рд░ рд╣реЛрдЧреА?

рдЗрд╕ рдкрд░ рдХреЛрдИ рднреА рд╕рдорд╛рдЪрд╛рд░? рд╣рдо рдЙрддреНрдкрд╛рджрди рдореЗрдВ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рд╣реИрдВред рдпрджрд┐ рдХрд╛рдо рдардк рд╣реЛ рдЧрдпрд╛ рд╣реИ рддреЛ рдХреНрдпрд╛ рдЖрдк рдорд╕реМрджрд╛ рдпреЛрдЬрдирд╛ рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдЪреАрдпрд░реНрд╕!

@cmorgan рдпрд╣рд╛рдБ рднреА рдпрд╣реА рд╕реНрдерд┐рддрд┐ рд╣реИред рдХреНрдпрд╛ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЕрдкрдбреЗрдЯ рд╣реИ?

@benoitc рдЗрд╕ рдкрд░ рдХреЛрдИ рдЦрдмрд░?

рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░
рдЗрд╕ рдкрд░ рдХреЛрдИ рднреА рд╕рдорд╛рдЪрд╛рд░?

рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдореЗрдВ рдХреЛрдИ рднреА рдЕрдкрдбреЗрдЯ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПрдЧрд╛ред рдЕрдкрдбреЗрдЯ рдорд╛рдВрдЧрдиреЗ рдХреА рдХреЛрдИ рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИред

рдирдорд╕реНрддреЗ,

рдЦреЗрдж рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдЙрддреНрддрд░ рдирд╣реАрдВ рджрд┐рдпрд╛ред рдореИрдВ рдЗрди рджрд┐рдиреЛрдВ рдХрд╛рдлреА рд╡реНрдпрд╕реНрдд рд╣реВрдВред рддреЛ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд▓реЛрдЧ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕реЗ рдмрдирд╛рдиреЗ рдХрд╛ рд╕рдордп рдЖ рдЧрдпрд╛ рд╣реИред II рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд░рд╡рд┐рд╡рд╛рд░ рддрдХ рдПрдХ рдпреЛрдЬрдирд╛ рдХрд╛ рдорд╕реМрджрд╛ рддреИрдпрд╛рд░ рдХрд░реЗрдЧрд╛ рдФрд░ рдЗрд╕реЗ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд░рд╛рд╕реНрддрд╛ рдЦреЛрдЬреЗрдЧрд╛ :)

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдЗрд╕реЗ рдЫреЛрдЯреЗ рдФрд░ рдЕрдзрд┐рдХ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдпреЛрдЧреНрдп рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдирд╛ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ AppVeyor рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдкреАрдЖрд░ #1468 рдХреЗ рд╕рд╛рде "рд╕реЗрдЯ рдЕрдк рд╕реАрдЖрдИ" рднрд╛рдЧ рдХреЗ рд▓рд┐рдП #1467 рджрд╛рдпрд░ рдХрд┐рдпрд╛ рд╣реИред рдПрдХ рдЙрджрд╛рд╣рд░рдг рдЯреЗрд╕реНрдЯ рд░рди рдпрд╣рд╛рдВ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
https://ci.appveyor.com/project/edmorley/gunicorn/build/windows-ci.18

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

@edmorley рдзрдиреНрдпрд╡рд╛рдж, рдЗрд╕реЗ рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж рджреЗрдЦреЗрдВрдЧреЗ :)

рдореИрдВ рдЗрд╕ рд╕рдорд╛рд░реЛрд╣ рдХрд╛ рд╕рдореНрдорд╛рди рдХрдм рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВя╝Я рдпрд╣ рдореБрджреНрджрд╛ рд▓рдЧрднрдЧ рдЪрд╛рд░ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рд╢реБрд░реВ рд╣реБрдЖ рдерд╛уАВ

рдирдорд╕реНрддреЗ,
рд╣рдо рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рднреА рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ, рдХреНрдпрд╛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рд╣реИ рдХрд┐ рдпрд╣ рдХрдм рд╢реБрд░реВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?

рдирдорд╕реНрддреЗ, рдпрд╣ рдХрдм рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ? :)

рдЕрдЧрд░ рдХреЛрдИ рдорджрдж рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ @edmorley рдХреЛ рдорд┐рд▓реА рдХрд┐рд╕реА рднреА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдирд┐рдкрдЯрдирд╛ рдЙрдкрдпреЛрдЧреА

рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рдЗрд╕реЗ рд╕рдВрднрд╡ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЪреАрдЬреЗрдВ рдЕрдзрд┐рдХ рдирд╛рдЯрдХреАрдп рд░реВрдк рд╕реЗ рдмрджрд▓ рд╕рдХрддреА рд╣реИрдВред

рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрднреА рдХреЛрдИ рдЯрд╛рдЗрдорд▓рд╛рдЗрди рдирд╣реАрдВ рд╣реИред рдЕрдЧрд░ рдЖрдк рдорджрдж рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдИрдЖрд░рд╕реА рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреА рдЬрдЧрд╣ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдпрд╛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХрд╛рдо рдХреА рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП рдЫреЛрдЯреЗ рдореБрджреНрджреЛрдВ рдХреЛ рдЦреЛрд▓ рд╕рдХрддреА рд╣реИред

рдпрджрд┐ рдЖрдк рдкреНрд░рдЧрддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рд╕реВрдЪрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдХреГрдкрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрдВред рдЕрднреА рдХреЛрдИ рдЯрд╛рдЗрдорд▓рд╛рдЗрди рдирд╣реАрдВ рд╣реИред

FWIW, Gunicorn рд╡рд┐рдВрдбреЛрдЬ рдкрд░ Cygwin рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╣реИ ...

@Zorlin рдореИрдВ рдЗрд╕реЗ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬ рд╕реЗ рдЙрджрд╛рд╣рд░рдг рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА

$ pip install gunicorn
$ cat myapp.py
  def app(environ, start_response):
    data = b"Hello, World!\n"
    start_response("200 OK", [
        ("Content-Type", "text/plain"),
        ("Content-Length", str(len(data)))
    ])
    return iter([data])
$ gunicorn -w 4 myapp:app

рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рд╕рд┐рдЧрд╡рд┐рди рдореЗрдВ рдорд┐рд▓рддреА рд░рд╣рддреА рд╣реИ

<project-name>\flask\lib\site-packages\gunicorn\util.py", line 9, in <module>
    import fcntl
ModuleNotFoundError: No module named 'fcntl'

рдпрд╣ рд╡рд┐рдВрдбреЛрдЬрд╝ 10 рдкрд░ рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рднреА рдЪрд▓рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╢рд╛рдпрдж рдЗрд╕рдХреА рдЕрдм рдФрд░ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ?

рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреЛ рдореВрд▓ рд░реВрдк рд╕реЗ рд╕рдорд░реНрдерди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

  • [] рдХреЛрдб рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП python3 рдкрд░ рдЬрд╛рдПрдВ
  • [ ] CreateProcessW рдХрд╛ рдЙрдкрдпреЛрдЧ os.fork рдХреЗ рдмрдЬрд╛рдп рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░реЗрдВ (рд╢рд╛рдпрдж рдорд▓реНрдЯреАрдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ _winapi рдПрдмреНрд╕реНрдЯреНрд░реИрдХреНрд╢рди рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛?
  • [] рд╕реЙрдХреЗрдЯреНрд╕ рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреБрдЫ рдХреЛрдб asyncio рдХреЗ рд▓рд┐рдП рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЕрдЬрдЧрд░ рей рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ gthreads рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
  • [] рдЕрдиреБрдорддрд┐рдпрд╛рдБред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╣рдореЗрдВ рдЙрд╕ рддрд░рд╣ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╡рд┐рдВрдбреЛрдЬрд╝ рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреЛ рднреА рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП

(рд╢рд╛рдпрдж рдорд▓реНрдЯреАрдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ _winapi рдЕрдореВрд░реНрддрддрд╛ рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛?

рдмреАрдЯреАрдбрдмреНрд▓реВ, рдорд▓реНрдЯреАрдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ CreateProcess рдореЗрдВ popen_spawn_win32.py рдФрд░ рдпрд╣ рдкрд╛рдЗрдерди рдХреА рдкрд┐рдЫрд▓реА рд╕рдВрдЧрддрддрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдЖрдВрддрд░рд┐рдХ рдореЙрдбреНрдпреВрд▓ рд╣реИред

рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░! рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдкреНрд░рдЧрддрд┐ рдХреИрд╕реЗ рд╣реЛ рд░рд╣реА рд╣реИ? рдХреНрдпрд╛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд▓рдХреНрд╖реНрдп рддрд┐рдерд┐рдпрд╛рдВ рд╣реИрдВ? рдзрдиреНрдпрд╡рд╛рдж!

@bartmika рдирдВред рдХреЛрдИ рд▓рдХреНрд╖реНрдп рддрд┐рдерд┐ рдирд╣реАрдВ рд╣реЛрдЧреАред рдЬреИрд╕рд╛ рдХрд┐ рдмреЗрдиреЛрдЗрдЯрдХ рдиреЗ рдмрддрд╛рдпрд╛ рд╣реИ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХрд╛рдо рд╣реИрдВред рд╣рдо рдорджрдж рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рдХрд░рддреЗ рд╣реИрдВред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдКрдкрд░ рдХрд╣рд╛, рдХреГрдкрдпрд╛ рдЕрдкрдбреЗрдЯ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдореБрджреНрджреЗ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрдВред рдЬрдм рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╣реЛрдЧрд╛ рддреЛ рд╣рдо рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВрдЧреЗред

рдзрдиреНрдпрд╡рд╛рдж @tilgovi ,

рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдкрд░ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдЗрдирд╛рдо рджреЗрдиреЗ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред Gunicorn рдХреЗ рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдХреГрдкрдпрд╛ рдореБрдЭрд╕реЗ bart [ at ] simalam.com рдкрд░ рд╕рдВрдкрд░реНрдХ рдХрд░реЗрдВ

рд╢реБрдХреНрд░рд┐рдпрд╛!

@bartmika рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рдПрдХ рд╡реНрдпрд╕реНрдд рд╕рдкреНрддрд╛рд╣ рдерд╛ред @tilgovi рдФрд░ @berkerpeksag рдХреЗ рд╕рдВрдкрд░реНрдХ рдореЗрдВ рдЖрдиреЗ рдХреЗ рдмрд╛рдж рдореИрдВ рдХрд▓ рдЖрдкрд╕реЗ рд╕рдВрдкрд░реНрдХ

@benoitc рд╕рд┐рд░реНрдл рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП Gunicorn рдкрд░ рд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдореИрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рдЕрднреА рддрдХ рдХреЛрдИ рд░рд┐рд▓реАрдЬ рдХреА рддрд╛рд░реАрдЦ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдпрд╣ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдХреНрдпрд╛ рдХреБрдЫ рдмреАрдЯрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

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

@bartmika рдореБрдЭреЗ рдЗрди рджрд┐рдиреЛрдВ рд╕рд╛рдЗрдб-рдЯреНрд░реИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореИрдВ рдЗрд╕ рд╕рдкреНрддрд╛рд╣ рдХреЗ рдЕрдВрдд рдореЗрдВ рдЗрд╕реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдпреЛрдЬрдирд╛ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВрдЧрд╛ред

рддреЛ рдХреНрдпрд╛ рдЕрдм рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП рд╕рдкреЛрд░реНрдЯ рд╣реИ?. рдпрд╣ рджрд┐рд╕рдВрдмрд░ рд╣реИ

рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ! рдЬрдирд╡рд░реА рд╣реИред

@benoitc рдХреЛрдИ рдЕрдкрдбреЗрдЯ?

рдирдорд╕реНрддреЗ,

рдмрд╕ рдлрд┐рд░ рд╕реЗ рдЬрд╛рдБрдЪ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ, рдХреНрдпрд╛ рдХреБрдЫ рдирдпрд╛ рд╣реИ?

рдзрдиреНрдпрд╡рд╛рдж
рдорд╛рдЗрдХ

рдирдорд╕реНрддреЗ

рдХреНрдпрд╛ рдореИрдВ рдЕрдм рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдЕрдкрд╛рдЪреЗ рдПрдпрд░рдлреНрд▓реЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ?

рдзрдиреНрдпрд╡рд╛рдж
рд╕реБрдзрд╛рдХрд░реА

рдирдорд╕реНрддреЗ,

рдореИрдВ рдирд┐рдореНрди рдЖрджреЗрд╢ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИред рдХреНрдпрд╛ рдЖрдк рдЗрд╕рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

(flaskms) C:\Users\Socrates>gunicorn --bind 0.0.0.0:8000 hello-world:app
Traceback (most recent call last):
  File "c:\programdata\anaconda3\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\programdata\anaconda3\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\ProgramData\Anaconda3\Scripts\gunicorn.exe\__main__.py", line 5, in <module>
  File "c:\programdata\anaconda3\lib\site-packages\gunicorn\app\wsgiapp.py", line 10, in <module>
    from gunicorn.app.base import Application
  File "c:\programdata\anaconda3\lib\site-packages\gunicorn\app\base.py", line 12, in <module>
    from gunicorn import util
  File "c:\programdata\anaconda3\lib\site-packages\gunicorn\util.py", line 9, in <module>
    import fcntl
ModuleNotFoundError: No module named 'fcntl'

рдПрдХ рд╣реИрдХ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВрдиреЗ рдиреАрдЪреЗ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде fcntl.py рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдИ, рдЗрд╕реЗ fcntl.cpython-36.pyc рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛, рдЗрд╕реЗ __pycache__ рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рдиреАрдЪреЗ рд░рдЦрд╛, рдЯрд░реНрдорд┐рдирд▓ рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд┐рдпрд╛, рдФрд░ gunicorn --bind 0.0.0.0:8000 hello-world:app рдХрдорд╛рдВрдб рдЪрд▓рд╛рдпрд╛

fcntl.py рд╕рд╛рдордЧреНрд░реА:

FD_CLOEXEC = 1
F_DUPFD = 0
F_GETFD = 1
F_SETFD = 2
F_GETFL = 3
F_SETFL = 4
F_GETOWN = 5
F_SETOWN = 6
F_GETLK = 7
F_SETLK = 8
F_SETLKW = 9
F_RGETLK = 10
F_RSETLK = 11
F_CNVT = 12
F_RSETLKW = 13
F_RDLCK = 1
F_WRLCK = 2
F_UNLCK = 3
F_UNLKSYS = 4

def fcntl(fd, op, arg=0):
    return 0

def ioctl(fd, op, arg=0, mutable_flag=True):
    if mutable_flag:
        return 0
    else:
        return ""

def flock(fd, op):
    return

def lockf(fd, operation, length=0, start=0, whence=0):
    return

рдЗрд╕реЗ https://stackoverflow.com/questions/11087682/does-gunicorn-run-on-windows рд╕реЗ рдорд┐рд▓рд╛

рдХреНрдпрд╛ рдХреЛрдИ рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛ рдЬреЛ рдлрд┐рд▓рд╣рд╛рд▓ рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЧрдирд┐рдХреЛрд░реНрди рд╡рд┐рдХрд▓реНрдк рд╕реБрдЭрд╛ рд╕рдХрддрд╛ рд╣реИ?

рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ: рдореИрдВ рдЕрдм рд╡реЗрдЯреНрд░реЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк :)

5 рд╕рд╛рд▓ рд╣реЛ рдЧрдП рд╣реИрдВ рдФрд░ рдЗрд╕ рдкрд░ рдХреЛрдИ рдЕрдкрдбреЗрдЯ? рдзрдиреНрдпрд╡рд╛рджред

@hsluoyz рдЖрдЦрд┐рд░реА рдмрд╛рдд рдЬреЛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░реВрдк рд╕реЗ рд╣реБрдИ рд╡рд╣ рдЗрд╕ рд╕рд╛рд▓ рдХреЗ 16 рдорд╛рд░реНрдЪ рдХреЛ рдереА, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИред

рдирдорд╕реНрддреЗ,
рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрднреА рддрдХ рдХреЛрдИ рднрд╛рдЧреНрдп рдирд╣реАрдВ рд╣реИ?

рдирдорд╕реНрддреЗ,

рдореБрдЭреЗ рдЗрд╕ рдЯрд┐рдХрдЯ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реЛрдЧреАред
рдмрдВрджрд░рдЧрд╛рд╣ рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреНрдпрд╛ рд╣реИ?

рдмрдВрджрд░рдЧрд╛рд╣ рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреНрдпрд╛ рд╣реИ?

рдкреАрдЖрд░ #1468 рдХреЛ рдПрдХ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рд╡рд┐рд▓рдп рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬрд┐рд╕рдиреЗ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдРрдкрд╡реАрдпрд░ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдЬреЛрдбрд╝рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдРрдкрд╡реАрдпрд░ рдЦрд╛рддреЗ рдХреЛ рдЪрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред

рдЙрд╕рдХреЗ рдмрд╛рдж, рдХрд┐рд╕реА рдХреЛ рд╡рд┐рдВрдбреЛрдЬ рдЯреЗрд╕реНрдЯ рд░рди рдореЗрдВ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рд╡рд┐рдлрд▓рддрд╛рдУрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

@edmorley рдореИрдВ рдЖрдЬ appveyor рдХреА рджреЗрдЦрднрд╛рд▓ рдХрд░реВрдВрдЧрд╛ред

@ рд╕реНрд╡реАрдирдкреЗрдЯ рдЕрднреА рдЬреНрдпрд╛рджрд╛ рдХреБрдЫ рдирд╣реАрдВ рд╣реИред рдкрд╣рд▓реА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдкрд░реАрдХреНрд╖рд╛ рдкрд░рд┐рдгрд╛рдо рджреЗрдЦреЗрдВ рдФрд░ рдЙрд╕рд╕реЗ рдЯрд┐рдХрдЯ рдмрдирд╛рдПрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╣рдореЗрдВ рджрд╛рдпрд░реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдлреИрд╕рд▓рд╛ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ:

  • [ ] рдХреНрдпрд╛ рдпрд╣ рдЧреИрд░ WSL рдЪрд▓рд╛рддрд╛ рд╣реИ ? рдЖрдИ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдХрдореА рд╣реИ?
  • [ ] рд╕рд╛рдЗрдмрд░рд╡рд┐рди рд╕рдорд░реНрдерди?
  • [ ] рдореВрд▓ рд╕рдорд░реНрдерди : рд╣рдо рдХрд┐рд╕ рддрд░рд╣ рдХрд╛ рдкрд░реНрдпрд╡реЗрдХреНрд╖рдг рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕реЗ рдПрдХ рд╕реЗрд╡рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓рд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдореИрдВ рдЖрдИрдЖрд░рд╕реА рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░рддрд╛ рд╣реВрдВ, рдХрднреА-рдХрднреА рдХрд▓ рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ?

рдореИрдВрдиреЗ рднрдВрдбрд╛рд░ рдкрд░ рдРрдкрд╡реЗрдпрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛:

https://ci.appveyor.com/project/benoitc/gunicorn

@benoitc , рдореЗрд░реЗ рдкрд╛рд╕ рдЙрдмрдВрдЯреВ 18.04 рдФрд░ рдкрд╛рдпрдерди 3.6.5 рдХреЗ рд▓рд┐рдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди (рдЙрджрд╛рд╣рд░рдг/flaskapp.py) рдФрд░ рдбрдмреНрд▓реВрдПрд╕рдПрд▓ рдкрд░ рдЪрд▓ рд░рд╣реЗ рд╕рднреА рдкрд░реАрдХреНрд╖рдг рд╣реИрдВред рд╕рдВрднрд╡рддрдГ рдЗрд╕реЗ рдЯреЙрдХреНрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЕрдиреНрдп рд╕рднреА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдбрдмреНрд▓реВрдПрд╕рдПрд▓ рдкрд░ рдЪрд▓рддрд╛ рд╣реИ, рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡рд┐рдВрдбреЛрдЬрд╝ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░реЗрдЧрд╛ рдЬрдм рддрдХ рдХрд┐ рд╡реЗ рд╡рд┐рдВрдбреЛрдЬ 10 рдкрд░ рдирд╣реАрдВ рдЪрд▓ рд░рд╣реЗ рд╣реЛрдВред рдХреНрдпрд╛ рд╕рд┐рдЧрд╡рд┐рди рдЕрднреА рднреА рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?

рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдореВрд▓ рд╕рдорд░реНрдерди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд▓ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реБрдИ, рдХреМрди рд╕рд╛ рд╕рдордп рдЙрдкрдпреБрдХреНрдд рд╣реИ?

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

рдПрдлрдбрдмреНрд▓реНрдпреВрдЖрдИрдбрдмреНрд▓реНрдпреВ, рдореИрдВ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рд╕рд╛рдЗрдЧрд╡рд┐рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ

рдпрджрд┐ рдкрд╛рдпрдерди рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рдареАрдХ рд╕реЗ рдирд╣реАрдВ рдЪрд▓рддрд╛ рд╣реИ (рдЬреИрд╕реЗ psycopg2, weasyprint рдФрд░ рдХреНрдпрд╛ рдирд╣реАрдВ), рддреЛ рдкрд╛рдЗрдерди рдЕрднреА рднреА рдХреНрдпреЛрдВ рдмрдХрд╡рд╛рд╕ рд╣реИ рдХрд┐ рдпрд╣ рдХреНрд░реЙрд╕ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рд╣реИ? рдЕрднреА рддрдХ рдпрд╣ рд╡рд┐рдВрдбреЛрдЬ 10 рдкрд░ рднреА рдареАрдХ рд╕реЗ рдирд╣реАрдВ рдЪрд▓рддрд╛ рд╣реИред

@jtan4nih рд╡рд╣ рд░рд╡реИрдпрд╛ рдЕрдиреБрдЪрд┐рдд рд╣реИред

рдкрд╛рдпрдерди рдХреНрд░реЙрд╕ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рд╣реИ, рдЧрдирд┐рдХреЛрд░реНрди рдирд╣реАрдВ рд╣реИред

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

cs01/gdbgui#18 рджреЗрдЦреЗрдВ, рд╢рд╛рдпрдж рдорджрдж рдХрд░реЗрдВ

7 рд╕рд╛рд▓ рд╣реЛ рдЧрдП рд╣реИрдВ, рдФрд░ рдЗрд╕реЗ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдХрд┐рд╕реНрдордд?

рдореЗрд░реЗ рдкрд╛рд╕ рдорд╛рд░реНрдЪ рдХреЗ рджреМрд░рд╛рди рдХреБрдЫ рд╕рд╛рдЗрдХрд┐рд▓ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬреЛ рдЖрдк рдЙрд╕ рдкрд░ рдЦрд░реНрдЪ рдХрд░рддреЗ рд╣реИрдВред рдореБрдЭреЗ рдЦреЛрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА a
рдХрд╣реАрдВ рд╡рд┐рдВрдбреЛрдЬрд╝ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ред рдЖрдк рдЗрд╕реЗ рдкрд╣рд▓реЗ рд╣реА рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ
рд╡реИрд╕реЗ рднреАред

рдХреЛрдИ рднреА рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЙрд╕ рд╡рд┐рд╖рдп рдкрд░ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ waitress ред
gunicorn рдХрд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рд╡реЗрдм рд╕рд░реНрд╡рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдпреВрдирд┐рдХреНрд╕ рдФрд░ рдпреВрдирд┐рдХреНрд╕ рдЬреИрд╕реА рдЧреБрдард▓реА рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдирд╛ рд╣реИред

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

рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ waitress ред
gunicorn рдХрд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рд╡реЗрдм рд╕рд░реНрд╡рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдпреВрдирд┐рдХреНрд╕ рдФрд░ рдпреВрдирд┐рдХреНрд╕ рдЬреИрд╕реА рдЧреБрдард▓реА рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдирд╛ рд╣реИред

рд╡реЗрдЯреНрд░реЗрд╕ рдЙрдЪрд┐рдд рдорд▓реНрдЯреАрдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреА рд╣реИред

рдХреНрдпрд╛ рдХреЛрдИ рдореЛрдЯрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ рдХрд┐ рдЙрдЪрд┐рдд рдорд▓реНрдЯреАрдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдпрд╣ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?
рдХреНрдпрд╛ рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдореЗрдВ рдЕрдм рддрдХ рдХреМрди рд╕реА рдкреНрд░рдореБрдЦ рдмрд╛рдзрд╛рдПрдВ рд╣реИрдВ?

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

рдХреНрдпрд╛ Win10 dev VM рдЖрдкрдХреЗ рд▓рд┐рдП рд╡рд┐рдВрдбреЛрдЬрд╝ рдЪрд▓рд╛рдиреЗ рдФрд░ рдЧрдирд┐рдХреЛрд░реНрди рд╕рдВрдЧрддрддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?

рд╢рд╛рдпрдж рд╣рдо рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ fnctl рдмрдЬрд╛рдп рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреЗ рд▓рд┐рдП pywin32 рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рдлрд╝рд╛рдЗрд▓ рд▓реЙрдХрд┐рдВрдЧ рдХреНрд╖рдорддрд╛рдПрдВ рд╣реИрдВред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

Abraxos picture Abraxos  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

bywangxp picture bywangxp  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

benoitc picture benoitc  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

gr790 picture gr790  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

thomasjungblut picture thomasjungblut  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ