PHP GR8: PHP 8 рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░реЗрдЧрд╛



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

рдпрджрд┐ рдЖрдк рдЧреБрдлрд╛ рд╕реЗ рдмрд╛рд╣рд░ рдирд╣реАрдВ рдирд┐рдХрд▓реЗ рд╣реИрдВ рдпрд╛ рдЕрддреАрдд рд╕реЗ рдирд╣реАрдВ рдЖрдП рд╣реИрдВ (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИ), рддреЛ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ PHP 8 рдореЗрдВ JIT рд╣реЛрдЧрд╛: рджреВрд╕рд░реЗ рджрд┐рди, рд╡реЛрдЯ рдЪреБрдкрдЪрд╛рдк рдФрд░ рд╢рд╛рдВрддрд┐ рд╕реЗ рдерд╛ рдФрд░ рдкреНрд░рддрд┐рднрд╛рдЧрд┐рдпреЛрдВ рдХреЗ рд╡рд┐рд╢рд╛рд▓ рдмрд╣реБрдордд рдиреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рдорддрджрд╛рди рдХрд┐рдпрд╛, рддрд╛рдХрд┐ рд╕рднреА рдХрд╛ рдлреИрд╕рд▓рд╛ рд╣реЛ рдЬрд╛рдП ред

рдЖрдирдВрдж рдХреЗ рдПрдХ рдлрд┐рдЯ рдореЗрдВ, рдЖрдк рдлреЛрдЯреЛ рдХреЗ рд░реВрдк рдореЗрдВ рдХрдИ рдкрд╛рдЧрд▓ рдЖрдВрджреЛрд▓рдиреЛрдВ рдХреЛ рднреА рдЪрд┐рддреНрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдпрд╣, рд╡реИрд╕реЗ, "рдбреЗрдЯреНрд░реЛрдЗрдЯ рдЬреЗрдЖрдИрдЯреА" рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ:



рдЕрдм, рдмреИрда рдЬрд╛рдУ рдФрд░ рдЗрд╕ рдорд┐рде-рдбрд┐рдмрдВрдХрд┐рдВрдЧ рд▓реЗрдЦ рдХреЛ рдкрдврд╝реЗрдВред рдореИрдВ JIT рд╕реЗ рдЬреБрдбрд╝реА рдЧрд▓рддрдлрд╣рдореА рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рдпрд╣ рдХреИрд╕реЗ рдЙрдкрдпреЛрдЧреА рд╣реИ, рдФрд░ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ (рд▓реЗрдХрд┐рди рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдирд╣реАрдВ рддрд╛рдХрд┐ рдЖрдк рдКрдм рди рдЬрд╛рдПрдВ)ред

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

JIT рдХреНрдпрд╛ рд╣реИ?


PHP рдХреЛ рдПрдХ рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди (рд╣рдо рдЗрд╕реЗ Zend VM рдХрд╣рддреЗ рд╣реИрдВ) рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рднрд╛рд╖рд╛ PHP рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддреА рд╣реИ рдЬреЛ рдЖрднрд╛рд╕реА рдорд╢реАрди рд╕рдордЭрддреА рд╣реИ (рдЗрд╕реЗ рд╕рдВрдХрд▓рди рдЪрд░рдг рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ)ред рд╕рдВрдХрд▓рди рдЪрд░рдг рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдЖрднрд╛рд╕реА рдорд╢реАрди рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдУрдкрдХреЛрдб рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рд░рдирдЯрд╛рдЗрдо рд╕реНрдЯреЗрдЬ рдкрд░, Zend VM рдСрдкрдХреЛрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЖрд╡рд╢реНрдпрдХ рдХрд╛рд░реНрдп рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддрд╛ рд╣реИред

рдпрд╣ рд╕рд░реНрдХрд┐рдЯ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдкреАрд╕реА (рдкрд╣рд▓реЗ) рдФрд░ рдУрдкрдЪреЗ (рдЖрдЬ) рдЬреИрд╕реЗ рдЙрдкрдХрд░рдг рд╕рдВрдХрд▓рди рдЪрд░рдг рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдХреИрд╢ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЪрд░рдг рдХреЗрд╡рд▓ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдиреЗ рдкрд░ рд╣реА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

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

PHP рдореЗрдВ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ JIT рд╕рдВрдХрд▓рди рдЪрд░рдг рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдХреЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдПрдХ рдордзреНрдпрд╡рд░реНрддреА рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдЧрд╛ рдФрд░ рдорд╢реАрди рдХреЛрдб рджреЗрдЧрд╛ рдЬреЛ рдЕрдм Zend VM рджреНрд╡рд╛рд░рд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рд╕реАрдзреЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рджреНрд╡рд╛рд░рд╛ред

PHP рдХреЛ JIT рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ?


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

PHP 7.0 рдХреА рд░рд┐рд▓реАрдЬрд╝ рдХреЗ рдмрд╛рдж, рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдЬрд╛рд░реА рд░рд╣рд╛: рдПрдХ рд╣реИрд╢ рдЯреЗрдмрд▓ (PHP рдореЗрдВ рдореБрдЦреНрдп рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛) рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛, Zend VM рдореЗрдВ рдХреБрдЫ opcodes рдХреА рд╡рд┐рд╢реЗрд╖рдЬреНрдЮрддрд╛ рдФрд░ рд╕рдВрдХрд▓рдХ рдореЗрдВ рдХреБрдЫ рдЕрдиреБрдХреНрд░рдореЛрдВ рдХреЗ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮрддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛, рдЕрдиреБрдХреВрд▓рдХ (OpCort рдШрдЯрдХ) рдореЗрдВ рд▓рдЧрд╛рддрд╛рд░ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛, рдФрд░ рдХрдИ рдЕрдиреНрдп рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ред

рдХрдареЛрд░ рд╕рддреНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЗрди рд╕рднреА рдЕрдиреБрдХреВрд▓рди рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдо рдЬрд▓реНрджреА рд╕реЗ рдЙрддреНрдкрд╛рджрдХрддрд╛ рд╕реБрдзрд╛рд░ рдХреЗ рдЕрд╡рд╕рд░реЛрдВ рдХреА рд╕реАрдорд╛ рддрдХ рдкрд╣реБрдВрдЪ рд░рд╣реЗ рд╣реИрдВред

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ: "рд╕реБрдзрд╛рд░ рдХреЗ рдЕрд╡рд╕рд░реЛрдВ рдХреА рд╕реАрдорд╛" рд╕реЗ рдореЗрд░рд╛ рддрд╛рддреНрдкрд░реНрдп рдЗрд╕ рддрдереНрдп рд╕реЗ рд╣реИ рдХрд┐ рдЖрдЧреЗ рдХреЗ рд╕реБрдзрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╡реНрдпрд╛рдкрд╛рд░-рдЙрддрд╛рд░ рдЕрдм рдЖрдХрд░реНрд╖рдХ рдирд╣реАрдВ рд▓рдЧрддреЗ рд╣реИрдВред рдЬрдм рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреА рдмрд╛рдд рдЖрддреА рд╣реИ, рддреЛ рд╣рдо рд╣рдореЗрд╢рд╛ рд╡реНрдпрд╛рдкрд╛рд░-рдирд╛рдкрд╕рдВрдж рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВред рдЕрдХреНрд╕рд░, рдЙрддреНрдкрд╛рджрдХрддрд╛ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рд╕рд╛рджрдЧреА рдХрд╛ рддреНрдпрд╛рдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╣рд░ рдХреЛрдИ рдпрд╣ рд╕реЛрдЪрдирд╛ рдЪрд╛рд╣реЗрдЧрд╛ рдХрд┐ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдХреЛрдб рднреА рд╕рдмрд╕реЗ рддреЗрдЬ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреА рдЖрдзреБрдирд┐рдХ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред рд╕рдмрд╕реЗ рддреЗрдЬ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдХреЛрдб рд╣реИ рдЬреЛ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреА рдЖрдВрддрд░рд┐рдХ рд╕рдВрд░рдЪрдирд╛ рдпрд╛ рдордВрдЪ / рд╕рдВрдХрд▓рдХ рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдХреЗрд▓реЗ рд╕рд╛рджрдЧреА рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рдХреА рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рджреЗрддреА рд╣реИред

рдЗрд╕рд▓рд┐рдП, рдЗрд╕ рд╕реНрддрд░ рдкрд░, PHP рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдирд┐рдЪреЛрдбрд╝рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ JIT рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╣реИред

рдХреНрдпрд╛ JIT рдореЗрд░реА рд╕рд╛рдЗрдЯ рдХреЛ рдЧрддрд┐ рджреЗрдЧрд╛?


рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рддреБрдЪреНрдЫ рд░реВрдк рд╕реЗред

рдпрд╣ рд╡рд╣ рдЙрддреНрддрд░ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдХреА рдЖрдк рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рдереЗред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, PHP рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЗрдирдкреБрдЯ / рдЖрдЙрдЯрдкреБрдЯ (I / O рдмрд╛рдзреНрдп) рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ JIT рдЙрд╕ рдХреЛрдб рдХреЗ рд╕рд╛рде рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдкреНрд░реЛрд╕реЗрд╕рд░ (CPU рдмрд╛рдзреНрдп) рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд рд╣реЛрддрд╛ рд╣реИред

"I / O рдФрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд" рдХрд╛ рдХреНрдпрд╛ рдЕрд░реНрде рд╣реИ?


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

рд╕рдмрд╕реЗ рд╕рд░рд▓ рдкрд░рд┐рднрд╛рд╖рд╛:

  • I / O рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд рдХреЛрдб рдмрд╣реБрдд рддреЗрдЬреА рд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдпрджрд┐ рд╣рдо рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдП рдЧрдП I / O рд╕рдВрдЪрд╛рд▓рди рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ (рдХрдо рдХрд░рдиреЗ, рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ) рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдвреВрдВрдврддреЗ рд╣реИрдВ;
  • рдкреНрд░реЛрд╕реЗрд╕рд░-рд╕реАрдорд┐рдд рдХреЛрдб рдмрд╣реБрдд рддреЗрдЬреА рд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдпрджрд┐ рд╣рдо рдкреНрд░реЛрд╕реЗрд╕рд░ рджреНрд╡рд╛рд░рд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдпрд╛ рдХрдо рдХрд░рдиреЗ рдХреЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ (рдХрдо рдХрд░рдиреЗ, рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ) рдХрд╛ рддрд░реАрдХрд╛ рдкрд╛рддреЗ рд╣реИрдВ рдпрд╛ рдкреНрд░реЛрд╕реЗрд╕рд░ рдШрдбрд╝реА рдХреА рдЧрддрд┐ рдмрдврд╝рд╛рддреЗ рд╣реИрдВред

рдХреЛрдб рдФрд░ рдЖрд╡реЗрджрди I / O, рдкреНрд░реЛрд╕реЗрд╕рд░ рдпрд╛ рджреЛрдиреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, PHP рдПрдкреНрд▓рд┐рдХреЗрд╢рди I / O рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд рд╣реЛрддреЗ рд╣реИрдВ: рдЙрдирдХрд╛ рдореБрдЦреНрдп рдЕрдбрд╝рдЪрди рдЕрдХреНрд╕рд░ I / O рд╕рдВрдЪрд╛рд▓рди рд╣реЛрддрд╛ рд╣реИ - рдбреЗрдЯрд╛рдмреЗрд╕, рдХреИрд╢, рдлрд╝рд╛рдЗрд▓реЛрдВ, рд╕реЙрдХреЗрдЯреНрд╕ рдЖрджрд┐ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛, рдкрдврд╝рдирд╛ рдФрд░ рд▓рд┐рдЦрдирд╛ред

рдкреНрд░реЛрд╕реЗрд╕рд░-рд╕реАрдорд┐рдд PHP рдХреЛрдб рдХреНрдпрд╛ рджрд┐рдЦрддрд╛ рд╣реИ?


рд╢рд╛рдпрдж рдХреБрдЫ PHP рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдЕрдзрд┐рдХрд╛рдВрд╢ PHP рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рдкреНрд░рдХреГрддрд┐ рдХреЗ рдХрд╛рд░рдг рдкреНрд░реЛрд╕реЗрд╕рд░-рд╕реАрдорд┐рдд рдХреЛрдб рдХреЗ рд▓рд┐рдП рдирдП рд╣реИрдВ: рд╡реЗ рдЖрдорддреМрд░ рдкрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдпрд╛ рдХреИрд╢ рдХреЗ рд▓рд┐рдВрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реИрдВ, HTML / JSON / XML рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреА рдЫреЛрдЯреА рдорд╛рддреНрд░рд╛ рд▓реЗрддреЗ рд╣реИрдВ рдФрд░ рдЙрддреНрдкрд╛рджрди рдХрд░рддреЗ рд╣реИрдВред

рдЖрдк рдЕрдкрдиреЗ рдХреЛрдб рдЖрдзрд╛рд░ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдмрд╣реБрдд рд╕реЗ рдХреЛрдб рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдирдХрд╛ I / O рд╕реЗ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИ, рдХреЛрдб рдРрд╕реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХрд╣рддреЗ рд╣реИрдВ рдЬрд┐рдирдХрд╛ I / O рд╕реЗ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИред рдФрд░ рдЖрдк рднреНрд░рдорд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдХреЛ рдкреНрд░реЛрд╕реЗрд╕рд░ рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЗрд╕рдХреЗ рдХреЛрдб рдореЗрдВ рдЕрдзрд┐рдХ рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВ рдЬреЛ I / O рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рд╣реИрдВред

рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ PHP рд╕рдмрд╕реЗ рддреЗрдЬреА рд╕реЗ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рдмреАрдЪ рдХреЛрдИ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдЕрдВрддрд░ рдирд╣реАрдВ рд╣реИ рдЬреЛ Zend VM рдФрд░ рдорд╢реАрди рдХреЛрдб рдореЗрдВ I / O рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдмреЗрд╢рдХ, рдХреБрдЫ рдЕрдВрддрд░ рд╣реИ, рд▓реЗрдХрд┐рди рдорд╢реАрди рдХреЛрдб рдФрд░ Zend VM рджреЛрдиреЛрдВ рдХреЙрд▓рд┐рдВрдЧ рдХрдиреНрд╡реЗрдВрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ -___() рдЖрдк opcodes рдореЗрдВ рдпрд╛ рдорд╢реАрди рдХреЛрдб рдореЗрдВ -___() рдХреЙрд▓ -___() - рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рд╕рдВрдкреВрд░реНрдг рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдЬреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред

рдиреЛрдЯ: рд╕рд░рд▓ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдХреЙрд▓рд┐рдВрдЧ рдХрдиреНрд╡реЗрдВрд╢рди рдПрдХ рдЕрдиреНрдп рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдПрдХ рдХреНрд░рдо рд╣реИред рджреЛрдиреЛрдВ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдХреЙрд▓рд┐рдВрдЧ рдХрдиреНрд╡реЗрдВрд╢рди рд╕реНрдЯреИрдХ рдХреЗ рд▓рд┐рдП рддрд░реНрдХ рджреЗрддрд╛ рд╣реИред

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

рдпрд╣рд╛рдВ рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЬреЗрдЖрдИрдЯреА рдЬрд╝реЗрдб рд╡реАрдПрдо рдХреЙрд▓рд┐рдВрдЧ рд╕рдореНрдореЗрд▓рдиреЛрдВ рдХреЛ рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛ред рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ PHP рдХреЛ рдХрд┐рд╕реА рднреА рд╕рдордп JIT рдФрд░ VM рдореЛрдб рдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдЗрд╕рд▓рд┐рдП, рдЙрдиреНрд╣реЛрдВрдиреЗ рд╡рд░реНрддрдорд╛рди рд╕рдореНрдореЗрд▓рдиреЛрдВ рдХреЛ рд░рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИ)ред рдирддреАрдЬрддрди, рдЬреЗрдЖрдИрдЯреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдк рд╣рд░ рдЬрдЧрд╣ рдЬреЛ рднреА рдХреЙрд▓ рджреЗрдЦрддреЗ рд╣реИрдВ, рд╡рд╣ рдмрд╣реБрдд рддреЗрдЬреА рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред

рдпрджрд┐ рдЖрдк рдпрд╣ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░реЛрд╕реЗрд╕рд░-рд╕реАрдорд┐рдд PHP рдХреЛрдб рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ, рддреЛ рдпрд╣рд╛рдВ рджреЗрдЦреЗрдВ: https://github.com/php/php-src/blob/master/Zend/bench.php ред рдпрд╣ рдПрдХ рдЪрд░рдо рдЙрджрд╛рд╣рд░рдг рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рдЧрдгрд┐рдд рдореЗрдВ рдЬреЗрдЖрдИрдЯреА рдХреЗ рд╕рднреА рд╡реИрднрд╡ рдХрд╛ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИред

PHP рдореЗрдВ рдЧрдгрд┐рддреАрдп рдЧрдгрдирд╛ рдХреЛ рдЧрддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрд░рд╣ рдХрд╛ рдПрдХ рдЪрд░рдо рд╕рдордЭреМрддрд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛?


рдирд╣реАрдВред рд╣рдордиреЗ рднрд╛рд╖рд╛ рдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреА рд╕реАрдорд╛ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ (рдФрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╡рд┐рд╕реНрддрд╛рд░) рдХреЗ рд▓рд┐рдП рдРрд╕рд╛ рдХрд┐рдпрд╛ред

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

рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ, рдРрд╕рд╛ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ PHP рдореЗрдВ рдЧрдгрд┐рддреАрдп рдЧрдгрдирд╛рдУрдВ рдХреЗ рддреНрд╡рд░рдг рдореЗрдВ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рдВрдХреАрд░реНрдг рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ, 3 рдбреА рд░реЗрдВрдбрд░рд┐рдВрдЧ, 2 рдбреА рд░реЗрдВрдбрд░рд┐рдВрдЧ (рдЬреАрдпреВрдЖрдИ) рдФрд░ рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛ рд░рд╛рд╕реНрддрд╛ рдЦреЛрд▓рддрд╛ рд╣реИред

рдЗрд╕реЗ PHP 7.4 рдореЗрдВ рдХреНрдпреЛрдВ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?


рдКрдкрд░, рдореИрдВрдиреЗ рдЬреЗрдЖрдИрдЯреА рдХреЛ рдЕрддреНрдпрдзрд┐рдХ рд╕рдордЭреМрддрд╛ рдХрд╣рд╛, рдФрд░ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ: рдпрд╣ рдореМрдЬреВрджрд╛ рд╕рднреА рдХреЗ рдмреАрдЪ рд╕рдмрд╕реЗ рдХрдард┐рди рд╕рдВрдХрд▓рди рд░рдгрдиреАрддрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ, рдпрджрд┐ рд╕рдмрд╕реЗ рдХрдард┐рди рдирд╣реАрдВ рд╣реИред рдЬреЗрдЖрдИрдЯреА рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЬрдЯрд┐рд▓рддрд╛ рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╡реГрджреНрдзрд┐ рд╣реИред

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

рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ, "рдЬрдЯрд┐рд▓" рдХрд╛ рдЕрд░реНрде рд╣реИ "рдЬреЛ рд╣рдореЗрдВ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИред" рдФрд░ рдЖрдЬ, рдХреБрдЫ рднрд╛рд╖рд╛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЬреЗрдЖрдИрдЯреА рдХреЗ рдореМрдЬреВрджрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рд╕рдордЭрддреЗ рд╣реИрдВред

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

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

рдкрд░рд┐рд╕рд░ рднрдпрд╛рдирдХ рдХрд╛ рдкрд░реНрдпрд╛рдп рдирд╣реАрдВ рд╣реИред рдЬрдЯрд┐рд▓рддрд╛ рдПрдХ рд╕реНрдЯрд╛рд░ рдирд┐рд╣рд╛рд░рд┐рдХрд╛ рдЬрд┐рддрдиреА рд╕реБрдВрджрд░ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдФрд░ рдпрд╣ рд╕рд┐рд░реНрдл JIT рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдЬрдм рд╣рдорд╛рд░реА рдЯреАрдо рдореЗрдВ 20 рд▓реЛрдЧ рдЬреЗрдЖрдИрдЯреА рдХреЛ рджрд┐рдорд┐рддреНрд░реА рд╕реЗ рднреА рдмрджрддрд░ рд╕рдордЭрдиреЗ рд▓рдЧрддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рд╕реЗ рдЬреЗрдЖрдИрдЯреА рдХреА рдкреНрд░рдХреГрддрд┐ рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдирд╣реАрдВ рдмрджрд▓реЗрдЧреАред

рдХреНрдпрд╛ PHP рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдзреАрдорд╛ рд╣реЛрдЧрд╛?


рдРрд╕рд╛ рд╕реЛрдЪрдиреЗ рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд░реНрдпрд╛рдкреНрдд рд╕рдордп рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рддрд░реНрдХ рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЬрдм рддрдХ PHP 8 рддреИрдпрд╛рд░ рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддрдм рддрдХ рд╣рдорд╛рд░реЗ рдмреАрдЪ рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдЧрд╛ рдЬреЛ JIT рдореЗрдВ рдорд╣рд╛рд░рдд рд╣рд╛рд╕рд┐рд▓ рдХрд░ рдЪреБрдХреЗ рд╣реИрдВ рдФрд░ рдмрдЧрд╝реИрд░ рдлрд┐рдХреНрд╕рд┐рдВрдЧ рдФрд░ PHP рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЬ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдо рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред

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

рдпрд╣реА рд╕рдм рдореИрдВ рдХрд╣рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред

рдФрд░ рдЬрдм рд╕реЗ рд╣рдо рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдореИрдВ рдЕрдкрдиреЗ рд╕рд╣рдпреЛрдЧреА рдкрд╛рд╡реЗрд▓ рдореБрд░рд╛рдЬрд╛рдХреЛрд╡ рдХреЛ 17 рдордИ рдХреЛ PHP рд░реВрд╕ рд╕рдореНрдореЗрд▓рди рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рд▓рд┐рдП рдЖрдордВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ ред рдкрд╛рд╢рд╛ рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ рдкреАрдПрдЪрдкреА рдХреЛрдб рдХреЗ рдЖрдЦрд┐рд░реА рд╕реАрдкреАрдпреВ рдХреЛ рджреВрд╕рд░реЗ рд╕реЗ рдХреИрд╕реЗ рдирд┐рдЪреЛрдбрд╝реЗрдВ!

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


All Articles