рд▓рд┐рдирдХреНрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреНрд░рджрд░реНрд╢рдиред рдкрд░рд┐рдЪрдп

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

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

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

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

рддрдкрд╛рдИрдВрд▓реЗ рдпреЛ рдЬреНрдЮрд╛рдирд▓рд╛рдИ рд╕реНрдХреНрд░реНрдпрд╛рдЪрдмрд╛рдЯ рдПрдк рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ рдпреЛ рдкреВрд░реНрдг рд░реВрдкрдорд╛ рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬ рд╣реБрдиреЗрдЫ, рддреНрдпрд╕реЛ рдирдЧрд░реНрдиреБ рдиреИ рдЙрддреНрддрдо рд╣реБрдиреНрдЫред рдпрджрд┐ рддрдкрд╛рдЗрдБ рддрдкрд╛рдЗрдБрдХреЛ рд╕рдВрдЧрдардирдХреЛ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧрдХреЛ рд▓рд╛рдЧрд┐ C рд╡рд╛ C++ рдорд╛ рдирдпрд╛рдБ рд╡реЗрдм рд╕рд░реНрднрд░ рд▓реЗрдЦреНрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рдпреЛ рддрдкрд╛рдЗрдБрдХреЛ рдХрд╛рдордХреЛ рдЕрдиреНрддрд┐рдо рджрд┐рди рд╣реБрди рд╕рдХреНрдЫред рдпрджреНрдпрдкрд┐, рдпреА рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдХреЛ рд╕рдВрд░рдЪрдирд╛ рдерд╛рд╣рд╛ рдкрд╛рдЙрдБрджрд╛ рдЕрд╡рд╕реНрдерд┐рдд рдХрд╛рд░реНрдпрдХреНрд░рдорд╣рд░реВ рдЫрдиреЛрдЯ рдЧрд░реНрди рдорджреНрджрдд рдЧрд░реНрдиреЗрдЫред рддрдкрд╛рдЗрдБ рдкреНрд░рдХреНрд░рд┐рдпрд╛-рдЖрдзрд╛рд░рд┐рдд рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВ рдереНрд░реЗрдб-рдЖрдзрд╛рд░рд┐рдд рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВ рд╕рд╛рдереИ рдШрдЯрдирд╛-рдЖрдзрд╛рд░рд┐рдд рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрд╕рдБрдЧ рддреБрд▓рдирд╛ рдЧрд░реНрди рд╕рдХреНрд╖рдо рд╣реБрдиреБрд╣реБрдиреЗрдЫред рддрдкрд╛рдИрдВрд▓реЗ рдмреБрдЭреНрдиреБрд╣реБрдиреЗрдЫ рд░ рдкреНрд░рд╢рдВрд╕рд╛ рдЧрд░реНрдиреБрд╣реБрдиреЗрдЫ рдХрд┐рди Nginx рд▓реЗ Apache httpd рднрдиреНрджрд╛ рд░рд╛рдореНрд░реЛ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрджрдЫ, рдХрд┐рди рдЯреЛрд░реНрдирд╛рдбреЛ рдЖрдзрд╛рд░рд┐рдд рдкрд╛рдЗрдерди рдЕрдиреБрдкреНрд░рдпреЛрдЧрд▓реЗ Django рдЖрдзрд╛рд░рд┐рдд рдкрд╛рдЗрдерди рдЕрдиреБрдкреНрд░рдпреЛрдЧрдХреЛ рддреБрд▓рдирд╛рдорд╛ рдзреЗрд░реИ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рд╕реЗрд╡рд╛ рджрд┐рди рд╕рдХреНрдЫред

ZeroHTTPd: рд╕рд┐рдХрд╛рдЙрдиреЗ рдЙрдкрдХрд░рдг

ZeroHTTPd рдПрдЙрдЯрд╛ рд╡реЗрдм рд╕рд░реНрднрд░ рд╣реЛ рдЬреБрди рдореИрд▓реЗ рд╕реНрдХреНрд░реНрдпрд╛рдЪрдмрд╛рдЯ C рдорд╛ рд╢рд┐рдХреНрд╖рдг рдЙрдкрдХрд░рдгрдХреЛ рд░реВрдкрдорд╛ рд▓реЗрдЦреЗрдХреЛ рдЫреБред рдпрд╕рдорд╛ Redis рдорд╛ рдкрд╣реБрдБрдЪ рд╕рд╣рд┐рдд рдХреБрдиреИ рдмрд╛рд╣реНрдп рдирд┐рд░реНрднрд░рддрд╛ рдЫреИрдиред рд╣рд╛рдореА рд╣рд╛рдореНрд░реЛ рдЖрдлреНрдиреИ Redis рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рдЪрд▓рд╛рдЙрдБрдЫреМрдВред рдердк рд╡рд┐рд╡рд░рдгрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рддрд▓ рд╣реЗрд░реНрдиреБрд╣реЛрд╕реНред

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

рддрдкрд╛рдИрдВрд▓рд╛рдИ рдмреБрдЭреНрди рдорджреНрджрддрдХреЛ рд▓рд╛рдЧрд┐ рдХреЛрдбрдорд╛ рдзреЗрд░реИ рдЯрд┐рдкреНрдкрдгреАрд╣рд░реВ рдЫрдиреНред рдХреЛрдбрдХреЛ рдХреЗрд╣реА рд▓рд╛рдЗрдирд╣рд░реВрдорд╛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╡реЗрдм рд╕рд░реНрднрд░ рднрдПрдХреЛрд▓реЗ, ZeroHTTPd рд╡реЗрдм рд╡рд┐рдХрд╛рд╕рдХреЛ рд▓рд╛рдЧрд┐ рдиреНрдпреВрдирддрдо рдлреНрд░реЗрдорд╡рд░реНрдХ рдкрдирд┐ рд╣реЛред рдпрд╕рдорд╛ рд╕реАрдорд┐рдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЫ, рддрд░ рд╕реНрдерд┐рд░ рдлрд╛рдЗрд▓рд╣рд░реВ рд░ рдзреЗрд░реИ рд╕рд░рд▓ "рдЧрддрд┐рд╢реАрд▓" рдкреГрд╖реНрдард╣рд░реВ рд╕реЗрд╡рд╛ рдЧрд░реНрди рд╕рдХреНрд╖рдо рдЫред рдореИрд▓реЗ рднрдиреЗрдХреЛ рдЫ рдХрд┐ ZeroHTTPd рдХрд╕рд░реА рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди рд▓рд┐рдирдХреНрд╕ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреЗ рд╕рд┐рдХреНрдирдХреЛ рд▓рд╛рдЧрд┐ рд░рд╛рдореНрд░реЛ рдЫред рд░ рдареВрд▓реЛ рд░реВрдкрдорд╛, рдзреЗрд░реИ рд╡реЗрдм рд╕реЗрд╡рд╛рд╣рд░реВ рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдкрд░реНрдЦрдиреНрдЫрдиреН, рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдЬрд╛рдБрдЪ рдЧрд░реНрдиреБрд╣реЛрд╕реН рд░ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдпреЛ рд╡рд╛рд╕реНрддрд╡рдорд╛ ZeroHTTPd рд▓реЗ рдЧрд░реНрдиреЗрдЫред рдпреЛ рд╕рд┐рдХреНрдиреЗ рдЙрдкрдХрд░рдг рд╣реЛ, рдЙрддреНрдкрд╛рджрди рд╣реЛрдЗрдиред рдпреЛ рддреНрд░реБрдЯрд┐ рд╣реНрдпрд╛рдиреНрдбрд▓рд┐рдЩ рдорд╛ рд░рд╛рдореНрд░реЛ рдЫреИрди рд░ рд╕рдмреИ рднрдиреНрджрд╛ рд░рд╛рдореНрд░реЛ рд╕реБрд░рдХреНрд╖рд╛ рдЕрднреНрдпрд╛рд╕рд╣рд░реВ рдШрдордгреНрдб рдЧрд░реНрди рдЕрд╕рдореНрднрд╡ рдЫ (рдУрд╣ рд╣реЛ, рдореИрд▓реЗ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрдВ strcpy) рд╡рд╛ C рднрд╛рд╖рд╛рдХреЛ рдЪрд▓рд╛рдЦ рдЪрд╛рд▓рд╣рд░реВред рддрд░ рдорд▓рд╛рдИ рдЖрд╢рд╛ рдЫ рдХрд┐ рдпрд╕рд▓реЗ рдЖрдлреНрдиреЛ рдХрд╛рдо рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рдЧрд░реНрдЫред

рд▓рд┐рдирдХреНрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреНрд░рджрд░реНрд╢рдиред рдкрд░рд┐рдЪрдп
ZeroHTTPd рдЧреГрд╣ рдкреГрд╖реНрдаред рдпрд╕рд▓реЗ рдЫрд╡рд┐рд╣рд░реВ рд╕рд╣рд┐рдд рд╡рд┐рднрд┐рдиреНрди рдлрд╛рдЗрд▓ рдкреНрд░рдХрд╛рд░рд╣рд░реВ рдЖрдЙрдЯрдкреБрдЯ рдЧрд░реНрди рд╕рдХреНрдЫ

рдЕрддрд┐рдерд┐ рдкреБрд╕реНрддрдХ рдЖрд╡реЗрджрди

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

рд▓рд┐рдирдХреНрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреНрд░рджрд░реНрд╢рдиред рдкрд░рд┐рдЪрдп
рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧ "рдЧреЗрд╕реНрдЯ рдмреБрдХ" ZeroHTTPd

рдЖрдЧрдиреНрддреБрдХ рдХрд╛рдЙрдиреНрдЯрд░ рд░ рдЕрддрд┐рдерд┐ рдкреБрд╕реНрддрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рд╣рд░реВ Redis рдорд╛ рднрдгреНрдбрд╛рд░рдг рдЧрд░рд┐рдПрдХрд╛ рдЫрдиреНред Redis рд╕рдБрдЧ рд╕рдВрдЪрд╛рд░рдХреЛ рд▓рд╛рдЧрд┐, рдЖрдлреНрдиреИ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рд▓рд╛рдЧреВ рдЧрд░рд┐рдиреНрдЫ; рддрд┐рдиреАрд╣рд░реВ рдмрд╛рд╣реНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдпрдорд╛ рдирд┐рд░реНрднрд░ рд╣реБрдБрджреИрдирдиреНред рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░реВрдкрдорд╛ рдЙрдкрд▓рдмреНрдз рд░ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рдкрд░реАрдХреНрд╖рдг рдЧрд░рд┐рдПрдХрд╛ рд╕рдорд╛рдзрд╛рдирд╣рд░реВ рд╣реБрдБрджрд╛ рдо рд╣реЛрдордмреНрд░реВ рдХреЛрдб рд░реЛрд▓ рдЖрдЙрдЯ рдЧрд░реНрдиреЗ рдареВрд▓реЛ рдкреНрд░рд╢рдВрд╕рдХ рд╣реЛрдЗрдиред рддрд░ ZeroHTTPd рдХреЛ рдЙрджреНрджреЗрд╢реНрдп рд▓рд┐рдирдХреНрд╕ рдкреНрд░рджрд░реНрд╢рди рд░ рдмрд╛рд╣реНрдп рд╕реЗрд╡рд╛рд╣рд░реВрдорд╛ рдкрд╣реБрдБрдЪ рдЕрдзреНрдпрдпрди рдЧрд░реНрдиреБ рд╣реЛ, рдЬрдмрдХрд┐ HTTP рдЕрдиреБрд░реЛрдзрд╣рд░реВ рд╕реЗрд╡рд╛ рдЧрд░реНрджрд╛ рдЧрдореНрднреАрд░ рдкреНрд░рджрд░реНрд╢рди рдкреНрд░рднрд╛рд╡ рд╣реБрдиреНрдЫред рд╣рд╛рдореАрд▓реЗ рд╣рд╛рдореНрд░реЛ рдкреНрд░рддреНрдпреЗрдХ рд╕рд░реНрднрд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рдорд╛ Redis рд╕рдБрдЧ рд╕рдВрдЪрд╛рд░рд▓рд╛рдИ рдкреВрд░реНрдг рд░реВрдкрдорд╛ рдирд┐рдпрдиреНрддреНрд░рдг рдЧрд░реНрдиреБрдкрд░реНрдЫред рдХреЗрд╣реА рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд╣рд░реВрдорд╛ рд╣рд╛рдореА рдмреНрд▓рдХрд┐рдЩ рдХрд▓рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВ, рдЕрд░реВрдорд╛ рд╣рд╛рдореА рдШрдЯрдирд╛-рдЖрдзрд╛рд░рд┐рдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВред рдмрд╛рд╣реНрдп Redis рдЧреНрд░рд╛рд╣рдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдпреЛ рдирд┐рдпрдиреНрддреНрд░рдг рдкреНрд░рджрд╛рди рдЧрд░реНрджреИрдиред рдердк рд░реВрдкрдорд╛, рд╣рд╛рдореНрд░реЛ рд╕рд╛рдиреЛ рд░реЗрдбрд┐рд╕ рдХреНрд▓рд╛рдЗрдиреНрдЯрд▓реЗ рдХреЗрд╣реА рдХрд╛рд░реНрдпрд╣рд░реВ рдорд╛рддреНрд░ рдЧрд░реНрджрдЫ (рдХреБрдЮреНрдЬреА рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреЗ, рд╕реЗрдЯрд┐рдЩ рдЧрд░реНрдиреЗ, рд░ рд╡реГрджреНрдзрд┐ рдЧрд░реНрдиреЗ; рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреЗ рд░ рдПрд░реНрд░реЗрдорд╛ рдЬреЛрдбреНрдиреЗ)ред рдердк рд░реВрдкрдорд╛, Redis рдкреНрд░реЛрдЯреЛрдХрд▓ рдЕрддреНрдпрдиреНрдд рд╕реБрд░реБрдЪрд┐рдкреВрд░реНрдг рд░ рд╕рд░рд▓ рдЫред рддрдкрд╛рдИрдВрд▓реЗ рдпрд╕рд▓рд╛рдИ рд╡рд┐рд╢реЗрд╖ рд░реВрдкрдорд╛ рд╕рд┐рдХрд╛рдЙрдиреБ рдкрдирд┐ рдЖрд╡рд╢реНрдпрдХ рдЫреИрдиред рдкреНрд░реЛрдЯреЛрдХрд▓рд▓реЗ рд▓рдЧрднрдЧ рд╕рдп рд▓рд╛рдЗрдирдХреЛ рдХреЛрдбрдорд╛ рд╕рдмреИ рдХрд╛рдо рдЧрд░реНрдЫ рднрдиреНрдиреЗ рддрдереНрдпрд▓реЗ рдпреЛ рдХрддреНрддрд┐рдХреЛ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рд╕реЛрдЪреЗрдХреЛ рдЫ рднрдиреЗрд░ рджреЗрдЦрд╛рдЙрдБрдЫред

рдирд┐рдореНрди рдЪрд┐рддреНрд░рд▓реЗ рдХреНрд▓рд╛рдЗрдиреНрдЯ (рдмреНрд░рд╛рдЙрдЬрд░) рдЕрдиреБрд░реЛрдз рдЧрд░реНрджрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд▓реЗ рдХреЗ рдЧрд░реНрдЫ рджреЗрдЦрд╛рдЙрдБрдЫ /guestbookURL.

рд▓рд┐рдирдХреНрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреНрд░рджрд░реНрд╢рдиред рдкрд░рд┐рдЪрдп
рдЕрддрд┐рдерд┐ рдкреБрд╕реНрддрдХ рдЖрд╡реЗрджрди рдХрд╕рд░реА рдХрд╛рдо рдЧрд░реНрджрдЫ

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

рд╕рд░реНрднрд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ ZeroHTTPd

рд╣рд╛рдореА рд╕рдорд╛рди рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рддрд░ рдлрд░рдХ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рдХреЛ рд╕рд╛рде ZeroHTTPd рдХреЛ рд╕рд╛рдд рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВ рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрджреИрдЫреМрдВ:

  • рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐
  • рдлреЛрд░реНрдХ рд╕рд░реНрднрд░ (рдкреНрд░рддрд┐ рдЕрдиреБрд░реЛрдз рдПрдХ рдмрдЪреНрдЪрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛)
  • рдкреВрд░реНрд╡-рдлреЛрд░реНрдХ рд╕рд░реНрднрд░ (рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВрдХреЛ рдкреВрд░реНрд╡-рдлреЛрд░реНрдХрд┐рдЩ)
  • рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдереНрд░реЗрдбрд╣рд░реВрд╕рдБрдЧ рд╕рд░реНрднрд░ (рдкреНрд░рддрд┐ рдЕрдиреБрд░реЛрдз рдПрдХ рдереНрд░реЗрдб)
  • рдкреВрд░реНрд╡-рдереНрд░реЗрдб рд╕рд┐рд░реНрдЬрдирд╛ рднрдПрдХреЛ рд╕рд░реНрднрд░
  • рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдЖрдзрд╛рд░рд┐рдд poll()
  • рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдЖрдзрд╛рд░рд┐рдд epoll

рд╣рд╛рдореА HTTP рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рд╕рд╛рде рд╕рд░реНрднрд░ рд▓реЛрдб рдЧрд░реЗрд░ рдкреНрд░рддреНрдпреЗрдХ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛рдХреЛ рдкреНрд░рджрд░реНрд╢рди рдорд╛рдкрди рдЧрд░реНрдЫреМрдВред рддрд░ рдЕрддреНрдпрдзрд┐рдХ рд╕рдорд╛рдирд╛рдиреНрддрд░ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛рд╣рд░реВ рддреБрд▓рдирд╛ рдЧрд░реНрджрд╛, рдкреНрд░рд╢реНрдирд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рдмрдвреНрдЫред рд╣рд╛рдореА рддреАрди рдкрдЯрдХ рдкрд░реАрдХреНрд╖рдг рдЧрд░реНрдЫреМрдВ рд░ рдФрд╕рдд рдЧрдгрдирд╛ рдЧрд░реНрдЫреМрдВред

рдкрд░реАрдХреНрд╖рдг рдкрджреНрдзрддрд┐

рд▓рд┐рдирдХреНрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреНрд░рджрд░реНрд╢рдиред рдкрд░рд┐рдЪрдп
ZeroHTTPd рд▓реЛрдб рдкрд░реАрдХреНрд╖рдг рд╕реЗрдЯрдЕрдк

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

рдпреА рдкреНрд░рддреНрдпреЗрдХ рд╕рд░реНрднрд░рд▓реЗ рдХреЗ рдЧрд░реНрдЫ?

  • load.unixism.net: рд╣рд╛рдореА рдпрд╣рд╛рдБ рдЪрд▓реНрдЫреМрдВ ab, рдЕрдкрд╛рдЪреЗ рдмреЗрдиреНрдЪрдорд╛рд░реНрдХ рдЙрдкрдпреЛрдЧрд┐рддрд╛ред рдпрд╕рд▓реЗ рд╣рд╛рдореНрд░реЛ рд╕рд░реНрднрд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдкрд░реАрдХреНрд╖рдг рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рд▓реЛрдб рдЙрддреНрдкрдиреНрди рдЧрд░реНрджрдЫред
  • nginx.unixism.net: рдХрд╣рд┐рд▓реЗрдХрд╛рд╣реАрдБ рд╣рд╛рдореА рд╕рд░реНрднрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдордХреЛ рдПрдХ рднрдиреНрджрд╛ рдмрдвреА рдЙрджрд╛рд╣рд░рдгрд╣рд░реВ рдЪрд▓рд╛рдЙрди рдЪрд╛рд╣рдиреНрдЫреМрдВред рдпреЛ рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐, рдЙрдкрдпреБрдХреНрдд рд╕реЗрдЯрд┐рдЩрд╣рд░реВрд╕рдБрдЧ Nginx рд╕рд░реНрднрд░рд▓реЗ рд▓реЛрдб рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рдХреЛ рд░реВрдкрдорд╛ рдХрд╛рдо рдЧрд░реНрджрдЫ ab рд╣рд╛рдореНрд░реЛ рд╕рд░реНрднрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВрдорд╛ред
  • zerohttpd.unixism.net: рдпрд╣рд╛рдБ рд╣рд╛рдореА рд╣рд╛рдореНрд░реЛ рд╕рд░реНрднрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд╣рд░реВ рд╕рд╛рдд рдлрд░рдХ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд╣рд░реВрдорд╛ рдЪрд▓рд╛рдЙрдБрдЫреМрдВ, рдПрдХ рдкрдЯрдХрдорд╛ред
  • redis.unixism.net: рдпреЛ рд╕рд░реНрднрд░рд▓реЗ рд░реЗрдбрд┐рд╕ рдбреЗрдорди рдЪрд▓рд╛рдЙрдБрдЫ, рдЬрд╣рд╛рдБ рдЧреЗрд╕реНрдЯрдмреБрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рд╣рд░реВ рд░ рдЖрдЧрдиреНрддреБрдХ рдХрд╛рдЙрдиреНрдЯрд░рд╣рд░реВ рднрдгреНрдбрд╛рд░рдг рдЧрд░рд┐рдиреНрдЫред

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

рд╣рд╛рдореА рдХреЗ рдорд╛рдкрди рдЧрд░реНрджреИрдЫреМрдВ?

рддрдкрд╛рдИрдВ рд╡рд┐рднрд┐рдиреНрди рд╕реВрдЪрдХрд╣рд░реВ рдорд╛рдкрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рд╣рд╛рдореА рдкреНрд░рддреНрдпреЗрдХ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рдХреЛ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрдирд▓рд╛рдИ рджрд┐рдЗрдПрдХреЛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирдорд╛ рд╕рдорд╛рдирд╛рдиреНрддрд░рддрд╛рдХрд╛ рд╡рд┐рднрд┐рдиреНрди рд╕реНрддрд░рд╣рд░реВрдорд╛ рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рд╕рд╛рде рд╕рд░реНрднрд░рд╣рд░реВ рд▓реЛрдб рдЧрд░реЗрд░ рдореВрд▓реНрдпрд╛рдЩреНрдХрди рдЧрд░реНрдЫреМрдВ: рд▓реЛрдб 20 рджреЗрдЦрд┐ 15 рд╕рдорд╡рд░реНрддреА рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрдорд╛ рдмрдвреНрдЫред

рдкрд░реАрдХреНрд╖рдг рдирддреАрдЬрд╛

рдирд┐рдореНрди рдЪрд╛рд░реНрдЯрд▓реЗ рд╕рдорд╛рдирд╛рдиреНрддрд░рдХреЛ рд╡рд┐рднрд┐рдиреНрди рд╕реНрддрд░рд╣рд░реВрдорд╛ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд░рдЪрдирд╛рд╣рд░реВрдорд╛ рд╕рд░реНрднрд░рд╣рд░реВрдХреЛ рдкреНрд░рджрд░реНрд╢рди рджреЗрдЦрд╛рдЙрдБрдЫред y-рдЕрдХреНрд╖ рдкреНрд░рддрд┐ рд╕реЗрдХреЗрдиреНрдб рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рд╣реЛ, x-рдЕрдХреНрд╖ рд╕рдорд╛рдирд╛рдиреНрддрд░ рдЬрдбрд╛рдирд╣рд░реВ рд╣реЛред

рд▓рд┐рдирдХреНрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреНрд░рджрд░реНрд╢рдиред рдкрд░рд┐рдЪрдп

рд▓рд┐рдирдХреНрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреНрд░рджрд░реНрд╢рдиред рдкрд░рд┐рдЪрдп

рд▓рд┐рдирдХреНрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреНрд░рджрд░реНрд╢рдиред рдкрд░рд┐рдЪрдп

рддрд▓ рдирддрд┐рдЬрд╛ рд╕рдВрдЧ рддрд╛рд▓рд┐рдХрд╛ рдЫред

рдкреНрд░рддрд┐ рд╕реЗрдХреЗрдиреНрдб рдЕрдиреБрд░реЛрдзрд╣рд░реВ

рд╕рдорд╛рдирдиреНрддрд░рддрд╛
рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐
рдХрд╛рдБрдЯрд╛
рдкреВрд░реНрд╡ рдХрд╛рдБрдЯрд╛
рд╕реНрдЯреНрд░рд┐рдорд┐
рдкреВрд░реНрд╡-рд╕реНрдЯреНрд░рд┐рдорд┐рдЩ
рд╕рд░реНрд╡реЗрдХреНрд╖рдг
epoll

20
7
112
2100
1800
2250
1900
2050

50
7
190
2200
1700
2200
2000
2000

100
7
245
2200
1700
2200
2150
2100

200
7
330
2300
1750
2300
2200
2100

300
-
380
2200
1800
2400
2250
2150

400
-
410
2200
1750
2600
2000
2000

500
-
440
2300
1850
2700
1900
2212

600
-
460
2400
1800
2500
1700
2519

700
-
460
2400
1600
2490
1550
2607

800
-
460
2400
1600
2540
1400
2553

900
-
460
2300
1600
2472
1200
2567

1000
-
475
2300
1700
2485
1150
2439

1500
-
490
2400
1550
2620
900
2479

2000
-
350
2400
1400
2396
550
2200

2500
-
280
2100
1300
2453
490
2262

3000
-
280
1900
1250
2502
рдареВрд▓реЛ рдлреИрд▓рд╛рд╡рдЯ
2138

5000
-
рдареВрд▓реЛ рдлреИрд▓рд╛рд╡рдЯ
1600
1100
2519
-
2235

8000
-
-
1200
рдареВрд▓реЛ рдлреИрд▓рд╛рд╡рдЯ
2451
-
2100

резреж,реи10
-
-
рдареВрд▓реЛ рдлреИрд▓рд╛рд╡рдЯ
-
2200
-
2200

резреж,реи11
-
-
-
-
2200
-
2122

резреж,реи12
-
-
-
-
970
-
1958

резреж,реи13
-
-
-
-
730
-
1897

резреж,реи14
-
-
-
-
590
-
1466

резреж,реи15
-
-
-
-
532
-
1281

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

ZeroHTTPd рд╕реНрд░реЛрдд рдХреЛрдб

ZeroHTTPd рд╕реНрд░реЛрдд рдХреЛрдб рдпрд╣рд╛рдБред рдкреНрд░рддреНрдпреЗрдХ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛рдХреЛ рд▓рд╛рдЧрд┐ рдЫреБрдЯреНрдЯреИ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реА рдЫред

ZeroHTTPd тФВ тФЬтФАтФА 01_iterative тФВ тФЬтФАтФА main.c тФЬтФАтФА 02_forking тФВ тФЬтФАтФА main.c тФЬтФАтФА main.c тФЬтФАтФА 03_preforking тФЬтФАтФА main. 04_ рдереНрд░реЗрдбрд┐рдЩ тФВ тФЬтФАтФА main.c тФЬтФАтФА 05_рдкреНрд░рд┐рдереНрд░реЗрдбрд┐рдЩ тФВ тФЬтФАтФА main.c тФЬтФАтФА 06_poll тФВ тФЬтФАтФА main.c тФЬтФАтФА 07_epoll тФВ тФЬтФАтФАтФА main.c тФЬтФЬleтФАleтФА main.c тФЬ рдмрдирд╛рдЙрдиреБрд╣реЛрд╕реН тФЬтФАтФА рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ .html тФВ тФФтФАтФА рдЯрдХреНрд╕ png тФФтФАтФА рдЯреЗрдореНрдкреНрд▓реЗрдЯрд╣рд░реВ тФФтФАтФА рдЕрддрд┐рдерд┐ рдкреБрд╕реНрддрд┐рдХрд╛ тФФтФАтФА index.html

рд╕рдмреИ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рдХрд╛ рд▓рд╛рдЧрд┐ рд╕рд╛рдд рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реАрд╣рд░реВ рдмрд╛рд╣реЗрдХ, рд╢реАрд░реНрд╖-рд╕реНрддрд░ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реАрдорд╛ рджреБрдИ рдердк рдЫрдиреН: рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░ рдЯреЗрдореНрдкреНрд▓реЗрдЯрд╣рд░реВред рдкрд╣рд┐рд▓реЛрдорд╛ index.html рдлрд╛рдЗрд▓ рд░ рдкрд╣рд┐рд▓реЛ рд╕реНрдХреНрд░рд┐рдирд╕рдЯрдХреЛ рдЫрд╡рд┐ рд╕рдорд╛рд╡реЗрд╢ рдЫред рддрдкрд╛рдЗрдБ рддреНрдпрд╣рд╛рдБ рдЕрдиреНрдп рдлрд╛рдЗрд▓рд╣рд░реВ рд░ рдлреЛрд▓реНрдбрд░рд╣рд░реВ рд░рд╛рдЦреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рд░ ZeroHTTPd рд▓реЗ рддреА рд╕реНрдерд┐рд░ рдлрд╛рдЗрд▓рд╣рд░реВрд▓рд╛рдИ рдХреБрдиреИ рдкрдирд┐ рд╕рдорд╕реНрдпрд╛ рдмрд┐рдирд╛ рд╕реЗрд╡рд╛ рдЧрд░реНрдиреБрдкрд░реНрдЫред рдпрджрд┐ рдмреНрд░рд╛рдЙрдЬрд░рдХреЛ рдкрде рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдлреЛрд▓реНрдбрд░рдорд╛ рд░рд╣реЗрдХреЛ рдкрдерд╕рдБрдЧ рдореЗрд▓ рдЦрд╛рдиреНрдЫ рднрдиреЗ, ZeroHTTPd рд▓реЗ рдпрд╕ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реАрдорд╛ index.html рдлрд╛рдЗрд▓ рдЦреЛрдЬреНрдЫред рдЕрддрд┐рдерд┐ рдкреБрд╕реНрддрдХрдХреЛ рд▓рд╛рдЧрд┐ рд╕рд╛рдордЧреНрд░реА рдЧрддрд┐рд╢реАрд▓ рд░реВрдкрдорд╛ рдЙрддреНрдкрдиреНрди рд╣реБрдиреНрдЫред рдпрд╕рдорд╛ рдХреЗрд╡рд▓ рдПрдЙрдЯрд╛ рдЧреГрд╣ рдкреГрд╖реНрда рдЫ, рд░ рдпрд╕рдХреЛ рд╕рд╛рдордЧреНрд░реА рдлрд╛рдЗрд▓ 'templates/guestbook/index.html' рдорд╛ рдЖрдзрд╛рд░рд┐рдд рдЫред ZeroHTTPd рд╕рдЬрд┐рд▓реИрд╕рдБрдЧ рд╡рд┐рд╕реНрддрд╛рд░рдХреЛ рд▓рд╛рдЧрд┐ рдЧрддрд┐рд╢реАрд▓ рдкреГрд╖реНрдард╣рд░реВ рдердкреНрдЫред рд╡рд┐рдЪрд╛рд░ рдпреЛ рд╣реЛ рдХрд┐ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рдпрд╕ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реАрдорд╛ рдЯреЗрдореНрдкреНрд▓реЗрдЯрд╣рд░реВ рдердкреНрди рд╕рдХреНрдЫрдиреН рд░ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЕрдиреБрд╕рд╛рд░ ZeroHTTPd рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░реНрди рд╕рдХреНрдЫрдиреНред

рд╕рдмреИ рд╕рд╛рдд рд╕рд░реНрднрд░рд╣рд░реВ рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрди, рдЪрд▓рд╛рдЙрдиреБрд╣реЛрд╕реН make all рд╢реАрд░реНрд╖-рд╕реНрддрд░ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реАрдмрд╛рдЯ - рд░ рд╕рдмреИ рдирд┐рд░реНрдорд╛рдгрд╣рд░реВ рдпрд╕ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реАрдорд╛ рджреЗрдЦрд╛ рдкрд░реНрдиреЗрдЫред рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдпреЛрдЧреНрдп рдлрд╛рдЗрд▓рд╣рд░реВрд▓реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реАрд╣рд░реВ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реАрдорд╛ рдЦреЛрдЬреНрдЫрдиреН рдЬрд╣рд╛рдБрдмрд╛рдЯ рддрд┐рдиреАрд╣рд░реВ рд╕реБрд░реБ рд╣реБрдиреНрдЫрдиреНред

рд▓рд┐рдирдХреНрд╕ API

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

рдкреНрд░рджрд░реНрд╢рди рд░ рд╕реНрдХреЗрд▓реЗрдмрд┐рд▓рд┐рдЯреА

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

CPU рд░ I/O рдХрд╛рд░реНрдпрд╣рд░реВ

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

рд╕рд░реНрднрд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдмрд╛рд░реЗ рдердк рдЬрд╛рдиреНрдиреБрд╣реЛрд╕реН

  1. рднрд╛рдЧ I: рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛
  2. рднрд╛рдЧ IIред рдлреЛрд░реНрдХ рд╕рд░реНрднрд░рд╣рд░реВ
  3. рднрд╛рдЧ IIIред рдкреВрд░реНрд╡-рдлреЛрд░реНрдХ рд╕рд░реНрднрд░рд╣рд░реВ
  4. рднрд╛рдЧ IVред рдирд┐рд╖реНрдкрд╛рджрдирдХреЛ рдереНрд░реЗрдбрд╣рд░реВ рднрдПрдХрд╛ рд╕рд░реНрднрд░рд╣рд░реВ
  5. рднрд╛рдЧ V. рдкреВрд░реНрд╡-рдереНрд░реЗрдбреЗрдб рд╕рд░реНрднрд░рд╣рд░реВ
  6. рднрд╛рдЧ VIред рдкреЛрд▓ рдЖрдзрд╛рд░рд┐рдд рд╡рд╛рд╕реНрддреБрдХрд▓рд╛
  7. рднрд╛рдЧ VIIред рдЗрдкреЛрд▓ рдЖрдзрд╛рд░рд┐рдд рд╡рд╛рд╕реНрддреБрдХрд▓рд╛

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди