рд╣рдо Erlang рдкрдВрдЦреЛрдВ рдкрд░ PHP рдХреА рдЙрдбрд╝рд╛рди рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рддреЗ рд╣реИрдВ

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

рдкреНрд░рд╛рдЧрд┐рддрд┐рд╣рд╛рд╕

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

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, PHP рдХреЛ "рдкрдВрдк" рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдмреЗрд╢рдХ, рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдХрдЯреНрдЯрд░рдкрдВрдереА рд╕рдорд╛рдзрд╛рди рд╣реИ - рдЬрд╛рд╡рд╛ рдореЗрдВ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ - рдмрд╣реБрдд рд╕рд╛рд░реЗ рдирд╣реАрдВ-рдЦрд░рд╛рдм рдХреЛрдб рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреБрдЫ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЬреЗрд╡реАрдПрдо рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдзреВрдордХреЗрддреБ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд╣рд╛рдВ, рдФрд░ PHP рд▓рд┐рдЦрдирд╛ рдмрд╣реБрдд рдЬрд▓реНрджреА рд╣реИ - рдпрд╣ рдЕрднреА рднреА рд╡реЗрдм рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рднрд╛рд╖рд╛ рд╣реИ (рдХрдо рд╕реЗ рдХрдо рд░реВрд╕ рдореЗрдВ), рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдвреВрдВрдврдирд╛ рдЖрд╕рд╛рди рд╣реИред

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

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ рдХрд┐ "рд╢реБрджреНрдз" PHP рдХреА рдорджрдж рд╕реЗ рдХреМрди рд╕реЗ рдХрд╛рд░реНрдп рдХрдард┐рди рд╣реИрдВ рдФрд░ рд╣рдо рдХрд┐рди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдпрд╛рдж рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдореИрдВ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди рдХрд╛ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛ред рдЗрд╕рд▓рд┐рдП ...

рд╕рдорд╕реНрдпрд╛рдУрдВ

рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рдЗрд╕ рддрдереНрдп рд╕реЗ рдЖрдЧреЗ рдмрдврд╝рддрд╛ рд╣реВрдВ рдХрд┐ рдкреАрдПрдЪрдкреА рдореЗрдВ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдЪрд▓рдиреЗ рд╡рд╛рд▓реА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдВ рдПрдХ рдмреЗрд╣рдж рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдмреИрд╕рд╛рдЦреА рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рддрд╣рдд рдЖрдкрдХреЛ рдХрд┐рд╕реА рдФрд░ рддрд░рд╣ рд╕реЗ рд░рд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдмреИрд╕рд╛рдЦреА рд╕реНрдерд╛рдирд╛рдкрдиреНрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рднреА рдЙрддреНрд╕рд╛рд╣рдЬрдирдХ рдирд╣реАрдВ рд╣реИ рдХрд┐ PHP 5.3 рдореЗрдВ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдХрдЪрд░рд╛ рдХрд▓реЗрдХреНрдЯрд░ рд╣реИ ред PhpDaemon , рдЬрд┐рд╕реЗ рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкрд░рд┐рд╡рд╛рдж рд╕реЗ рдмрдВрдзрд╛ рд╣реБрдЖ рд╣реИ, рдордирд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рддрд╣рдд рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдлрд┐рд▓рд╣рд╛рд▓, рдХреЛрдИ рд╕рд╛рдорд╛рдиреНрдп рдореВрд▓ рдирд┐рд╡рд╛рд╕реА рдирд╣реАрдВ рд╣реИ рдФрд░, рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг, PHP рдкреНрд░реЛрдЧреНрд░рд╛рдореЛрдВ рдХреЛ "рдбрд┐рдорд╛рдЗрдЬ" рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рддрд░реАрдХрд╛ рд╣реИред рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдк FastCGI рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рднреА рдЖрдкрдХреЛ рдЗрд╕ рдЕрд░реНрдерд╡реНрдпрд╡рд╕реНрдерд╛ рдкрд░ рдПрдХ рдбрд┐рд╕реНрдкреИрдЪрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдЬреЛ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдЧрд╛ред рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, PHP рдХрд╛ рдПрдХрдорд╛рддреНрд░ рдЙрддреНрдкрд╛рджрди рдореЛрдб рдХреНрд▓рд╛рд╕рд┐рдХ FastCGI (рдпрд╛ рдпреВрдирд┐рдХреНрд╕ рдЬреИрд╕реА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рддрд╣рдд Apache + prefork + mod_php) рд╣реИред

рд▓рдЧрднрдЧ рд╕рднреА рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреА рдЬреЛ рдЗрд╕ рдкрд░рд┐рд╕реНрдерд┐рддрд┐ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВред

рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рд▓реЙрдиреНрдЪ


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

рдзреВрдордХреЗрддреБ


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

<?php
    Event::publish( 'common.users.onlinecountchanged', array('count' => 10) );
?>

:

Event.subscribe( 'common.users.onlinecountchanged', function(data) {
    $('#onlinecount').html(data.count);
} );

, web-jabber-, .

cron


Cron- PHP-, cron' :
. , , , ┬л cron' тАФ - ┬╗, , , PHP-.

,

(message queue)


тАФ . , , , . , ┬л ┬╗ .

, , .

, PHP , , Erlang.

Erlang?
, , PHP- CMS YAWS (YAWS тАФ -, Erlang') PHP Erlang', тАФ , , , ! :)


, .

:
, .

тАФ RabbitMQ


тАФ , . ┬л ┬╗ , .

AMQP. , . , : . , PHP: , .

(pub-sub)


RabbitMQ pub-sub . , PHP , - . PHP ( PECL AMQP):

<?php
//   RabbitMQ
    $cnn = new AMQPConnection();
    $cnn->connect();
//  ,     
    $ex = new AMQPExchange( $cnn );
    $ex->declare( 'event-exchange', AMQP_EX_TYPE_TOPIC );
//  
    $ex->publish( 'message', 'some.object.event' );
?>

, - Erlang', some.object.event REST: http://example.com/example-action. Erlang, , ( -PHP, ):

//    
    amqp_declare_exchange( 'event-exchange', AMQP_EX_TYPE_TOPIC );
    amqp_declare_queue( 'external-app-queue' );
//         
    amqp_bind( 'external-app-queue', 'event-exchange', 'some.object.*' );
//     
    amqp_subscribe( 'external-app-queue' );
// ,       
    while ( 1 )
    {
        $msg = receive_message();
        file_get_contents( "http://example.com/example-action?msg=$msg" );
    }

, PHP- event-exchange some.object.event, , external-app-queue , some.object.event, . , , Erlang-, , callback' ( тАФ REST- HTTP).
, :)

FastCGI


FastCGI- Erlang'? - . , php-fpm Windows, , , , , . - PHP, LAMP.

, , , .

- Comet


- Erlang' тАФ (long-polling) тАФ Erlang' . , comet -, .

Comet , , Erlang-- -, long-polling , http- push- . :
  1. Javascript- , .
  2. Erlang-, RabbitMQ , . , , .
  3. PHP- RabbitMQ, comet-, .
  4. , . push-.
  5. callback push- .
  6. Push- ( long-polling).


, , , , : , . :

Cron


Erlang. , . , , . Erlang' , , , (. ), . , AMQP, REST API .

, cron', , , ( , - ), , PHP (, ), , , PHP-.

, :)
, , :
, :)

? Welcome!

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


All Articles