PHP рдореЗрдВ рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ "рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░" рдЕрдиреБрдкрд╕реНрдерд┐рдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рдХрдИ рдмреЗрд╣рддрд░реАрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрд┐рд╕рдореЗрдВ рдПрдХреНрд╕рдЯреЗрдВрд╢рди
pthreads ,
AzaThread (CThread), рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдХреБрдЫ PHP рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ
рд╕реНрд╡рдпрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
рдЗрди рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рд▓рд┐рдП рдореБрдЦреНрдп рдиреБрдХрд╕рд╛рди рдмрд╣реБрдд рд╕рд╛рд░реЗ "рдШрдВрдЯрд┐рдпрд╛рдБ рдФрд░ рд╕реАрдЯреА" рдереЗ - рд╣рдореЗрд╢рд╛ рдереНрд░реЗрдб рдФрд░ рдореВрд▓ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдмреАрдЪ рдпрд╛ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЬрд▓реНрджреА рдФрд░ рд▓рд╛рдЧрдд рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣рдореЗрд╢рд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдЖрд░рдХреНрд╖рдг рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЗрд╕ рдкреЛрд╕реНрдЯ рдореЗрдВ рдорд╣рд╛рди рд░рд╣рд╕реНрдп рдирд╣реАрдВ рдЦреБрд▓рддреЗ рд╣реИрдВ - рдпрд╣ рднрд╛рд╖рд╛ рдореЗрдВ рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдФрд░ рдореИрдВрдиреЗ рдЗрд╕реЗ рдХреЗрд╡рд▓ рдЗрд╕рд▓рд┐рдП рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЦреБрдж рдПрдХ рд╕рдорд╕реНрдпрд╛ рдореЗрдВ рдЪрд▓рд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдПрдХ рддреИрдпрд╛рд░ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдорд┐рд▓рд╛, рдореИрдВрдиреЗ рдЦреБрдж рдХреЛ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдПрдореБрд▓реЗрд╢рди рдмрдирд╛рдпрд╛ред
рдЗрд╕рд▓рд┐рдП, рдХрд╛рд░реНрдп рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдирд╛ рд╣реИ рдЬреЛ рд╣рдорд╛рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЖрдпрд╛ рд╣реИред рдореЗрд░рд╛ рдХрд╛рдо рдкрд╛рдареНрдп рд╕реВрдЪрдирд╛рдУрдВ рдХреЗ JSON рд╕рд░рдгреА рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдирд╛ рдерд╛, рдЬрд┐рд╕реЗ рдкрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдкреЛрд╕реНрдЯрдЧреНрд░реЙрдХреНрд╕реАрдХреНрдпреВрдПрд▓ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдмрдбрд╝реА рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рд╕реЗ рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ рдерд╛ред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рдореВрд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдбреЗрдЯрд╛ рдПрдХрддреНрд░ рдХрд░рддреЗ рд╣реИрдВ:
index.php
рд╕рд░рдгреА рдЖрдХрд╛рд░ рдореЗрдВ 400mb рдХреЗ рдЖрд╕рдкрд╛рд╕ рдЙрддрд╛рд░-рдЪрдврд╝рд╛рд╡ рд╣реБрдЖ (рдмрд╛рдж рдореЗрдВ рдЗрд╕реЗ рдШрдЯрд╛рдХрд░ ~ 50mb рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛), рдФрд░ рд╕рднреА рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдмреНрджрд┐рдХ рдереАред рдЙрд╕ рдЧрддрд┐ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдпрд╣ рд╕рдм рдкрдЪ рдЧрдпрд╛ рдерд╛, рдФрд░ рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣рд░ 15 рдорд┐рдирдЯ рдореЗрдВ рдХреНрд░реЛрди рдкрд░ рдЪрд▓рд╛рдИ рдЧрдИ рдереА, рдФрд░ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рд╢рдХреНрддрд┐ рдЗрддрдиреА рдЕрдзрд┐рдХ рдереА - рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмрд╣реБрдд рдиреБрдХрд╕рд╛рди рд╣реБрдЖред
рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдЙрдирдХреА рдорд╛рддреНрд░рд╛ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рдкреНрд░рддреНрдпреЗрдХ рд╕реАрдкреАрдпреВ рдХреЛрд░ рдХреЗ рд▓рд┐рдП рдереНрд░реЗрдбреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХ рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░реЗрдВ, рдпрд╛ рдЖрдк рдмрд╕ рдпрд╣ рддрдп рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ 4 рдереНрд░реЗрдб рд╣реЛрдВрдЧреЗ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдереНрд░реЗрдб рдХреЗ рд▓рд┐рдП рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░реЗрдВ:
index.php
рдпрд╣ рддреБрд░рдВрдд рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ - рдЗрд╕ рддрд░рд╣ рдХреЗ "рд╣реЗрдб-рдСрди" рдЧрдгрдирд╛ рдкреНрд░рддреНрдпреЗрдХ рд╕реНрдЯреНрд░реАрдо рдХреЗ рд▓рд┐рдП рддрддреНрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдЯреАрдХ рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рджреЗрдЧреАред рдЧрдгрдирд╛рдУрдВ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреА рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред
рдФрд░ рдЕрдм рдмрд╣реБрдд рд╕рд╛рд░ - рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рдереНрд░реЗрдб рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдп рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдЪрд▓рд╛рддреЗ рд╣реИрдВред рд╣рдо рдЗрд╕реЗ "рдорд╛рдереЗ" рдХрд░реЗрдВрдЧреЗ - рджреВрд╕рд░реА рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрд╛рд░реНрдп рдмрдирд╛рдирд╛ - рдереНрд░реЗрдбред рдПрдлрдкреАред рдпрд╣ рдПрдХ "рд╕реНрдЯреНрд░реАрдо" рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░реЗрдЧрд╛, рдореБрдЦреНрдп рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдФрд░ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрддреНрд╡реЛрдВ рдХреА рдПрдХ рд╕реАрдорд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдЧрд╛:
index.php
рдкрд╕рд╕реНрдЯреНрд░реБ () рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдВрд╕реЛрд▓ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдВрддрдЬрд╛рд░ рдХрд░реЗрдЧреАред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рд▓реЙрдиреНрдЪ рдХрдорд╛рдВрдб рдХреЛ рдРрд╕реЗ рдмрдпрд╛рдиреЛрдВ рдХреЗ рд╕реЗрдЯ рдореЗрдВ рд▓рдкреЗрдЯрддреЗ рд╣реИрдВ рдЬреЛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╢реБрд░реВ рдХрд░реЗрдВрдЧреЗ рдФрд░ рддреБрд░рдВрдд рдХреБрдЫ рднреА рдирд╣реАрдВ рд▓реМрдЯрд╛рдПрдВрдЧреЗ, рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдФрд░ рдореВрд▓ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреНрд░рддреНрдпреЗрдХ рдмрдЪреНрдЪреЗ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдВрддрдЬрд╛рд░ рдХрд░рдирд╛ рдмрдВрдж рдирд╣реАрдВ рдХрд░реЗрдЧреА:
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣рд╛рдБ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддрд╛ - рдореЗрд░реЗ рдкрд░рд┐рдЪрд┐рдд рд▓рд┐рдирдХреНрд╕реЙрдЗрдб рджреНрд╡рд╛рд░рд╛ рдореБрдЭреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╕реБрдЭрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрджрд┐ рдЖрдк рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЗрд╕ рдЬрд╛рджреВ рдХреЛ рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдЖрднрд╛рд░реА рд░рд╣реВрдВрдЧрд╛ рдФрд░ рдкреЛрд╕реНрдЯ рдХреЛ рдкреВрд░рдХ рдХрд░реВрдВрдЧрд╛ред
рдлрд╝рд╛рдЗрд▓ рдереНрд░реЗрдбред Php:
$start = $argv[1]; $stop = $argv[2]; for ($i = $start; $i <= $stop; $i++) {
рдЗрд╕рдореЗрдВ, рдХрд╛рдлреА рд╕рд░рд▓, рддрд░реАрдХрд╛, рдЖрдк PHP рдореЗрдВ рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдПрдореБрд▓реЗрд╢рди рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдпрджрд┐ рд╣рдо рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рд╕реБрдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреВрд░реЗ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдХрдо рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдзреНрд╡рдирд┐ рдХрд░реЗрдЧрд╛: рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХрд╛ рдереНрд░реЗрдб рдЪрд╛рдЗрд▓реНрдб рдкреНрд░реЛрд╕реЗрд╕ рд▓реЙрдиреНрдЪ рдХрд░рддрд╛ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИред
рдЬрдм рдореИрдВ "рдПрдореБрд▓реЗрд╢рди" рдХрд╣рддрд╛ рд╣реВрдВ, рддреЛ рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЗрд╕ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╡рд┐рдзрд┐ рдХреЗ рд╕рд╛рде рдереНрд░реЗрдбреНрд╕ рдХреЗ рдмреАрдЪ рдпрд╛ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдФрд░ рдмрдЪреНрдЪреЗ рдХреЗ рдереНрд░реЗрдбреНрд╕ рдХреЗ рдмреАрдЪ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдЙрдкрдпреБрдХреНрдд рд╣реИ рдЕрдЧрд░ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред