рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреА рд▓рдбрд╝рд╛рдИред рднрд╛рдЧ 1 - рд╣рдХреАрдХрдд рд╕реЗ HTTP рддрд▓рд╛рдХ:

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

рдпрд╣ рдкрд░реАрдХреНрд╖рдг рдПрдХ рдирд┐рд░реНрд╡рд╛рдд рдореЗрдВ рдПрдХ рдЧреЛрд▓рд╛рдХрд╛рд░ рдШреЛрдбрд╝реЗ рдХреА рдорд╛рдк рд╣реИ, рдЬреЛ рдкреНрд░рд╛рдкреНрдд рдЖрдВрдХрдбрд╝реЛрдВ рд╕реЗ рдЕрдзрд┐рдХ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЕрдм рд╣рдореЗрдВ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЙрдирдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИред


рддрдХрдиреАрдХ


рдЖрдИрдЖрдИрдПрд╕ рд╡рд┐рдВрдбреЛрдЬ рд╕рд░реНрд╡рд░ рдХреЛрд░ 2019 рдХреЗ рд▓рд┐рдП рдирд┐рдЧрдиреЗрдХреНрд╕ рдФрд░ рдЕрдкрд╛рдЪреЗ рдХреЗ рд▓рд┐рдП рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдЙрдмрдВрдЯреВ 18.04 рдПрд▓рдЯреАрдПрд╕ рд╣реИред рдкрд░реАрдХреНрд╖рдгреЛрдВ рд╕реЗ рдкрд╣рд▓реЗ рд╕рднреА рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо 4 рджрд┐рд╕рдВрдмрд░, 2019 рдХреЛ рдирд╡реАрдирддрдо рдЕрдкрдбреЗрдЯ рдкреНрд░рд╛рдкреНрдд рд╣реБрдПред

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

Httpd-tools рдХреЗ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдмреИрдВрдбрд╡рд┐рдбреНрде рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛:

ab -n 50000 -c 500 http://192.168.76.204:80/ 

рд╕рд░реНрд╡рд░ 8, 4 рдФрд░ рдПрдХ рдХреЛрд░ рдкрд░ 10, 5 рдФрд░ 1 рдкреНрд░рддрд┐рд╢рдд рдХреЛрд░ рдХреА рд╕реАрдорд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдкрд░реАрдХреНрд╖рдг рдмреЗрдВрдЪ рдХреЗ рд░реВрдк рдореЗрдВ, 9900K @ 5400 рдореЗрдЧрд╛рд╣рд░реНрдЯреНрдЬ рд╡рд╛рд▓рд╛ рдПрдХ рдХрдВрдкреНрдпреВрдЯрд░ рдерд╛, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╕рд░реНрд╡рд░, рдЬрд┐рд╕рдореЗрдВ 10% рдХреА рд╕реАрдорд╛ рдкреНрд░рд╛рдкреНрдд рд╣реБрдИ рдереА, рдкреНрд░рддрд┐ рдХреЛрд░ 540 рдореЗрдЧрд╛рд╣рд░реНрдЯреНрдЬ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред

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

рдкрд░реАрдХреНрд╖рдХ рдФрд░ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдПрдХ рд╣реА рд╣реЛрд╕реНрдЯ рдФрд░ рдПрдХ рд╣реА рд╡рд░реНрдЪреБрдЕрд▓ рд╕реНрд╡рд┐рдЪ рдкрд░ рдереЗред

рдбрд┐рд╕реНрдХ рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдХрд╛ рддреБрд░рдВрдд рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╛рдзрд╛рдУрдВ рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП ATTO рдФрд░ CrystalDIskMark рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдХреЗ рдкрд░рд┐рдгрд╛рдоред

рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдбреЗрдЯрд╛:





рдкрд░рд┐рдгрд╛рдо:


TTFB:


IIS рдХреЗ рд▓рд┐рдП рдФрд╕рдд TTFB рд╕рдмрд╕реЗ рдХрдо, 0.5ms, Apache рдХреЗ рд▓рд┐рдП 1.4ms рдФрд░ Nginx рдХреЗ рд▓рд┐рдП 4ms рд╣реИред

рдкреНрд░рд╡рд╛рд╣ рдХреНрд╖рдорддрд╛:

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


рдЧреНрд░рд╛рдл рд╡реЗрдм рд╕рд░реНрд╡рд░ рдФрд░ рд╡рд┐рд▓рдВрдмрддрд╛ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдХ рдХреЙрд▓ рдХреА рд╕рдВрдЦреНрдпрд╛ рджрд┐рдЦрд╛рддрд╛ рд╣реИред рдЧреНрд░рд╛рдл рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ NGINX рдиреЗ рд╕рднреА рд╣рд┐рдЯреНрд╕ рдХреЗ 98% рдХреЛ рдкреВрд░рд╛ рдХрд┐рдпрд╛, рдЬрд┐рд╕рд╕реЗ 20ms рдпрд╛ рдЙрд╕рд╕реЗ рдХрдо рдХреА рд╕рд╛рдЗрдЯ рдорд┐рд▓реАред IIS рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЕрдкрд╛рдЪреЗ рдХреЗ рдЕрдВрддрд┐рдо 5% рдХреЙрд▓ рдореЗрдВ рдХреНрд░рдорд╢рдГ 76ms рдФрд░ 14ms рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛ред




рдЧреНрд░рд╛рдл рдПрдХ рддрдирд╛рд╡ рдкрд░реАрдХреНрд╖рдг рдХреЗ рджреМрд░рд╛рди рдПрдХ рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП рдФрд╕рдд рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕рдордп рджрд┐рдЦрд╛рддрд╛ рд╣реИред

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рд░реЗрдЦрд╛рдВрдХрди рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, IIS рдиреЗ Apache рдФрд░ Nginx рджреЛрдиреЛрдВ рдХреЛ рдЙрдбрд╝рд╛ рджрд┐рдпрд╛, рдЙрдЪреНрдЪ рднрд╛рд░ рдХреЗ рддрд╣рдд рдХрд╛рдлреА рдзреАрдорд╛ред

рдЖрдИрдЖрдИрдПрд╕ рдиреЗ рдЖрда рдореЗрдВ рд╕реЗ 4 рдХреЛрд░ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд╕рдВрдж рдХрд┐рдпрд╛, рдЪрд╛рд░ рдкрд░ рдХрдо рджреЗрд░реА рджрд┐рдЦрд╛рддреЗ рд╣реБрдП, рд▓реЗрдХрд┐рди рдПрдХ рдХреЛрд░ рдХреЛ рджреГрдврд╝рддрд╛ рд╕реЗ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд┐рдпрд╛ред

NGINX рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рднреА 8 рдХреЛрд░ рдХреЗ рд▓рд┐рдП рддрд░рд╛рдЬреВ, рдФрд░ рдЕрдкрд╛рдЪреЗ рдХреЗ рд▓рд┐рдП, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдПрдХрд▓-рдХреЛрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд▓рдЧрддрд╛ рд╣реИред

scalability:


nginx:

рдЕрдм рдЖрд╡реГрддреНрддрд┐ рдФрд░ рдХреЛрд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдорд╛рдкрдиреАрдпрддрд╛ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред


4 рдФрд░ 1 рдЧреБрдард▓реА Nginx рдкрд░ 1% рдХреА рд╕реАрдорд╛ рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдкрд╛рд╕ рдирд╣реАрдВ рд╣реБрдЖ, 2000 рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдпрд╣ рдкрд░реАрдХреНрд╖рдХ рд╕реЗ рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ рд╣реЛ рдЧрдпрд╛ред

рдЕрдкрд╛рдЪреЗ:


2500 рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдирдЧрдиреЗрдХреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдкрд╛рдЪреЗ рдиреЗ рдЖрддреНрдорд╕рдорд░реНрдкрдг рдФрд░ рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ рдХрд░ рджрд┐рдпрд╛ред рдЕрдкрд╛рдЪреЗ рдиреЗ 8, 4 рдФрд░ 1 рдЧреБрдард▓реА рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХреЛ 1% рдХреА рд╕реАрдорд╛ рдХреЗ рд╕рд╛рде рдкрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдХ рдХреЛрд░ рдкрд░ 5% рдХреА рд╕реАрдорд╛ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдкрд╛рд╕ рдирд╣реАрдВ рд╣реБрдЖ, рдЬреЛ рдХрд┐ рдирдЧреНрдиреЗрдХреНрд╕ рд╕реЗ рднреА рдмрджрддрд░ рд╣реИред

рдЖрдИрдЖрдИрдПрд╕:


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


рдЖрд░реЗрдЦ рдкрд░реАрдХреНрд╖рдг рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдореЗрдВ рд▓рдЧрдиреЗ рд╡рд╛рд▓реЗ рд╕рдордп рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред рдмреЗрддреБрдХрд╛ рдмреЗрддреБрдХрд╛ рдкрд░реАрдХреНрд╖рдг рд╡рд┐рдиреНрдпрд╛рд╕ рдЧрд┐рд░рд╛ рджрд┐рдП рдЧрдП рдереЗред рдЖрд░реЗрдЦ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ IIS рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдкрд░ рдХреИрд╕реЗ рдорд╛рдВрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдФрд░ NGINX рдХрд┐рддрдирд╛ рд╕реБрдВрджрд░ рд╣реИред

рдбрд┐рд╕реНрдХ рд╕реНрдХреЗрд▓реЗрдмрд┐рд▓рд┐рдЯреА:


nginx:

рдЕрдм рдЖрд╡реГрддреНрддрд┐ рдФрд░ рдХреЛрд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдбрд┐рд╕реНрдХ рдХреА рдЧрддрд┐ рдореЗрдВ рдорд╛рдкрдиреАрдпрддрд╛ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред


рдЗрд╕ рдмрд╛рд░ рдиреЗрдЧреНрдиреЗрдХреНрд╕ рджреЛ рдХреЗ рдмрдЬрд╛рдп 4 рдЯреЗрд╕реНрдЯ рдореЗрдВ рдлреЗрд▓ рд╣реЛ рдЧрдпрд╛ред

рдЕрдкрд╛рдЪреЗ:


рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдХреА рддрд░рд╣ рд╣реА рдЕрдкрд╛рдЪреЗ рдХрдИ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рд╛ред

рдЖрдИрдЖрдИрдПрд╕:


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

рдЗрд╕ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓рдирд╛ рдЬрд▓реНрджрдмрд╛рдЬреА рд╣реЛрдЧреА, рд╣рдордиреЗ рдЕрднреА рддрдХ HTTPS, рд╕рдВрдкреАрдбрд╝рди, рдФрд░ HTTP / 2 рдХреЛ рд▓реЗрдЯ рдПрдирдХреНрд░рд┐рдкреНрдЯ рд╕реЗ рдПрдХ рдЬреАрд╡рд┐рдд рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред рд╣рдо рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред

рд╣рдо рд╕реНрдерд╛рдкрд┐рдд рд╡рд┐рдВрдбреЛрдЬ рд╕рд░реНрд╡рд░ 2019 рдХреЛрд░ рдХреЗ рд╕рд╛рде 99 рд░реВрдмрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрджреНрдпрддрди рдЕрд▓реНрдЯреНрд░рд╛рд▓рд╛рдЗрдЯ рд╡рд┐рдВрдбреЛрдЬ рд╡реАрдбреАрдПрд╕ рдЯреИрд░рд┐рдл рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред

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


All Articles