рдкрд┐рдирдмрд╛ рдХреЗ рд╕рд╛рде PHP рдХреЛрдб рдкреНрд░рджрд░реНрд╢рди рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдирд╛

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

рд╕рдордп рдХреЗ рд╕рд╛рде, рд╕рд░реНрд╡рд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝рддреА рдЬрд╛рдПрдЧреА, рдФрд░ рдЬрд┐рддрдиреА рдЬрд▓реНрджреА рдпрд╛ рдмрд╛рдж рдореЗрдВ рдЖрдк рд╕реЛрдЪ рд░рд╣реЗ рд╣реЛрдВрдЧреЗ
"рдЕрдм рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ?" рдпрд╣ рдпрд╛ рдЙрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХрд┐рддрдиреА рдмрд╛рд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдХрдм рддрдХ? рд╕рдВрдЪрд╛рд▓рди рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ? тАЭрдЬрд╝реИрдмрд┐рдХреНрд╕-рдкреНрд░рдХрд╛рд░ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдкреНрд░рдгрд╛рд▓реА рдЖрд╡реЗрджрди рдХреА рд╕реНрдерд┐рддрд┐ рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп, рд╕рддрд╣реА рдЪрд┐рддреНрд░ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИред

рдЗрди рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдЬрд╡рд╛рдм рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, Badba рдиреЗ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдХреА рдирд┐рдЧрд░рд╛рдиреА рдФрд░ рд╕рд╛рдВрдЦреНрдпрд┐рдХреА рд╕реЗрд╡рд╛ - Pinba рд╡рд┐рдХрд╕рд┐рдд рдХреА рд╣реИ ред рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рд╣рдо рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдХреА рдирд┐рдЧрд░рд╛рдиреА рдФрд░ рд░реВрдкрд░реЗрдЦрд╛ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЕрдкрдиреЗ рдЕрдиреБрднрд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред

Badoo рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╢рдмреНрдж


рдХрд╛рд░реНрдп рдХреЗ рдХрдард┐рдирд╛рдИ рд╕реНрддрд░ рдХрд╛ рдЖрдХрд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдХреБрдЫ рд╢рдмреНрджреЛрдВ рдореЗрдВ рдмрддрд╛рдПрдВрдЧреЗ рдХрд┐ рд▓рд┐рдЯрд░ рдХреНрдпрд╛ рд╣реИред рдЖрдЬ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ 2 рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рд╣реИрдВ, рдПрдХ рдЕрдореЗрд░рд┐рдХрд╛ рдореЗрдВ рдФрд░ рдПрдХ рдпреВрд░реЛрдк рдореЗрдВред рд╕реИрдХрдбрд╝реЛрдВ PHP-рд╕рд░реНрд╡рд░, MySQL- рд╕рд░реНрд╡рд░, рджрд░реНрдЬрдиреЛрдВ рдореЗрдордХрд╛рд╕реНрдЯреЗрдб рдФрд░ C / C ++ рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ "рд╕реНрд╡-рд▓рд┐рдЦрд┐рдд" рд╕реЗрд╡рд╛рдПрдВ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рд╣реИрдВред Badoo рдХреЗ рдЕрдкрдиреЗ рдЙрдкрдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ, рдореЛрдмрд╛рдЗрд▓ рдЙрдкрдХрд░рдгреЛрдВ рдФрд░ рдбреЗрд╕реНрдХрдЯреЙрдк рдХреЗ рд▓рд┐рдП рдЕрдиреБрдкреНрд░рдпреЛрдЧ), рд▓реЛрдб рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдФрд░ рдкреНрд░рдХреГрддрд┐ рдЬрд┐рд╕ рдкрд░ рдмрд╣реБрдд рднрд┐рдиреНрдирддрд╛ рд╣реИред рдПрдХ PHP рдЕрдиреБрд░реЛрдз рдореЗрдВ, рджрд░реНрдЬрдиреЛрдВ рд╡рд┐рднрд┐рдиреНрди рдбреЗрдЯрд╛ рд╕реНрд░реЛрддреЛрдВ (рдбреЗрдЯрд╛рдмреЗрд╕, рдХреИрд╢, рд╕реЗрд╡рд╛) рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рд╣реЛ рд╕рдХрддреА рд╣реИред рдпрд╣ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП рдмреБрд░рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдФрд░ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рдПрдХ рд╕рдкреНрддрд╛рд╣ рдореЗрдВ 2 рд╕реЗ 5 рдмрд╛рд░ рдПрдХ рдирдпрд╛ рдХреЛрдб рдкреЛрд╕реНрдЯ рдХрд░рддреЗ рд╣реИрдВред рдРрд╕реА рдкреНрд░рдгрд╛рд▓реА рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдирд╛ рдХреЛрдИ рдЖрд╕рд╛рди рдХрд╛рдо рдирд╣реАрдВ рд╣реИред рдкрд┐рдирдмрд╛ рдиреЗ PHP рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреА рдирд┐рдЧрд░рд╛рдиреА рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреА рдПрдХ рдмрдбрд╝реА рдкрд░рдд рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХреАред рдпрд╣ рд╕реЗрд╡рд╛ рд╕рднреА рд╕рдВрд╕рд╛рдзрд┐рдд PHP рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдПрдХрддреНрд░ рдХрд░рддреА рд╣реИ рдФрд░ рдЗрд╕ рдбреЗрдЯрд╛ рдкрд░ рд╡рд┐рд╕реНрддреГрдд рд░рд┐рдкреЛрд░реНрдЯ рддреИрдпрд╛рд░ рдХрд░рддреА рд╣реИред

рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ


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

рдкрд┐рдирдмрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рд╕рд╛рдорд╛рдиреНрдп рдпреЛрдЬрдирд╛ рдХреЛ рдЖрд░реЗрдЦ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:



рдкрд┐рдирдмрд╛ рдореЗрдВ рдПрдХ PHP рдореЙрдбреНрдпреВрд▓ (рдЕрдВрдЧреНрд░реЗрдЬреА PHP рдПрдХреНрд╕рдЯреЗрдВрд╢рди ) рдФрд░ рдПрдХ рд╕рд░реНрд╡рд░ рд╣реЛрддрд╛ рд╣реИред рдкрд┐рдирдмрд╛ рдореЙрдбреНрдпреВрд▓ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рд░реНрд╡рд░ рдХреЛ рд╕рднреА рд╕рдВрд╕рд╛рдзрд┐рдд рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдбреЗрдЯрд╛ рднреЗрдЬрддрд╛ рд╣реИред рдкрд┐рдирдмрд╛ рд╕рд░реНрд╡рд░ C рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ рдПрдХ рд╕реЗрд╡рд╛ рд╣реИ:

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдХрд┐рд╕реА рднреА MySQL рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд╕рд╛рде рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдФрд░ рд░рд┐рдкреЛрд░реНрдЯ рдЯреЗрдмрд▓ рд╕реЗ рдХреБрдЫ рдХреНрд╡реЗрд░реА рдХрд░реЗрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдкреНрд░рддреНрдпреЗрдХ PHP рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдзреЛрдВ рдкрд░ рдЖрдВрдХрдбрд╝реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ (рдкрд┐рдирдмрд╛ рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рд╕реЗ рдПрдХ):
mysql> SELECT * FROM report_by_script_name; 


рдиреАрдЪреЗ рд╣рдо рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдкрд┐рдирдмрд╛ рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛рдПред

рдкрд┐рдирдмрд╛ рдХреЗ рд▓рд┐рдП PHP рдореЙрдбреНрдпреВрд▓ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ


рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдкрд┐рдирдмрд╛ рд╕реЗрд╡рд╛ рдХреЗ рдкрд╣рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдирд┐рдпреЛрдЬрди рдЪрд░рдг рдореЗрдВ, PHP рдХреЛрдб рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд┐рдП рдмрд┐рдирд╛ рд╕рд╛рдорд╛рдиреНрдп рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рддреБрд░рдВрдд рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ред рдЬрд┐рди рд▓реЛрдЧреЛрдВ рдХреЗ рдкрд╛рд╕ PHP рдореЙрдбреНрдпреВрд▓ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдЕрдиреБрднрд╡ рд╣реИ, рд╡реЗ рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдмрд╛рдж рд╡рд╛рд▓реЗ рдХреЗ рдкрд╛рд╕ рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрд░реЛрдз (рдЪрд░рдг PHP_RINIT) рд╕реЗ рдкрд╣рд▓реЗ рдФрд░ рдЗрд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж (рдЪрд░рдг PHP_RSHUTDOWN) рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, PHP_RINIT рдЪрд░рдг рдореЗрдВ, рдПрдХ рдореЙрдбреНрдпреВрд▓ рдЕрдкрдиреЗ рдЖрдВрддрд░рд┐рдХ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ RSHUTDOWN рдореЗрдВ рдпрд╣ рдЙрдиреНрд╣реЗрдВ рдореБрдХреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдкрд┐рдирдмрд╛ рдХреЗ рд▓рд┐рдП PHP рдореЙрдбреНрдпреВрд▓ рдЗрди рджреЛрдиреЛрдВ рдЪрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред RINIT рдореЗрдВ, рдпрд╣ рдЖрд░рдВрднреАрдЯ рдореЗрдВ рдЖрд░рдВрднреАрдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рдЧрдгрдирд╛ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЕрдиреБрд░реЛрдз рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдХрд┐рддрдиреЗ рд╕рдВрд╕рд╛рдзрди рдЦрд░реНрдЪ рдХрд┐рдП рдЧрдП рдереЗ, рдФрд░ рдлрд┐рд░ рд╕рднреА рдбреЗрдЯрд╛ рдХреЛ рдпреВрдбреАрдкреА рдкреИрдХреЗрдЯ рджреНрд╡рд╛рд░рд╛ рдкрд┐рдирдмрд╛ рд╕рд░реНрд╡рд░ рдХреЛ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред

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

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдЬрдЯрд┐рд▓ рдкреНрд░рдгрд╛рд▓реА рд╣реИ, рддреЛ рд╕рд╛рдорд╛рдиреНрдп рдкреИрд░рд╛рдореАрдЯрд░ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛрдВрдЧреЗред

рдЯрд╛рдЗрдорд░


рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдкрд┐рдирдмрд╛ рдХреЗ рдкрд╣рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдХреЛрдИ рдЯрд╛рдЗрдорд░ рдирд╣реАрдВ рдереЗ (рдЪрд▓реЛ рдЗрд╕реЗ рдкрд┐рдирдмрд╛ v0.1 рдХрд╣рддреЗ рд╣реИрдВ)ред рдпрд╣ рд╕рдВрд╕реНрдХрд░рдг рд╣рдореЗрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХрд┐рддрдиреА рдмрд╛рд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд╕рдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдордп рдХреНрдпрд╛ рд╣реИ, рдмрд╛рдЗрдЯреНрд╕ рдореЗрдВ рдФрд╕рдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЖрдХрд╛рд░ рдХреНрдпрд╛ рд╣реИ, рдФрд░ рдкрд╕рдВрдж рд╣реИред MySQL, memcached, рдпрд╛ рдЕрдиреНрдп рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╢реНрдиреЛрдВ рдХреА рдЖрд╡реГрддреНрддрд┐ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдЕрд╕рдВрднрд╡ рдерд╛ред рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ, MySQL рдФрд░ рдореЗрдордХрд╛рд╕реНрдЯ рдХреЗ рдЕрд▓рд╛рд╡рд╛, C / C ++ рдореЗрдВ рджрд░реНрдЬрди рднрд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реЗрд╡рд╛рдПрдБ рд▓рд┐рдЦреА рдЧрдИ рд╣реИрдВред

рдпрджрд┐ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рджрд┐рдЦрд╛рдИ рджреА (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреБрдЫ "рдзреАрдорд╛" рд╣реЛрдиреЗ рд▓рдЧрд╛), рддреЛ рдкрд┐рдирдмрд╛ v0.1 рдиреЗ рд╣рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдХрд┐ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдереА, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рд╕рдордЭрдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рдерд╛ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдХреНрдпрд╛ рдерд╛ред рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░, рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ, рдЙрди рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ, рдЬрд┐рдирдХреЗ рд▓рд┐рдП PHP рдиреЗ рдкреНрд░рд╢реНрди рдХрд┐рдП рдереЗ (MySQL, memcached, рдФрд░ рдЕрдиреНрдп) рджреЛрд╖реА рдереЗред

рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕рдорд╕реНрдпрд╛ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдкрд┐рдирдмрд╛ рдХреЗ рдЕрдЧрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЯрд╛рдЗрдорд░ рдкреЗрд╢ рдХрд┐рдП рдЧрдП рдереЗред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╣рдордиреЗ mysql_connect / mysql_query / memcache_connect рдХреЙрд▓реНрд╕ рдЖрджрд┐ рдХреЗ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рдордп рдХреЛ рдорд╛рдкрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдЗрд╕ рд╕рдордп рдХреЛ рдкрд┐рдирдмрд╛ рд╕рд░реНрд╡рд░ рдХреЛ рднреЗрдЬреЗрдВ рдФрд░ рдЯрд╛рдЗрдорд░ рд░рд┐рдкреЛрд░реНрдЯ рдмрдирд╛рдПрдВред рдЫрджреНрдо-PHP рдХреЛрдб рдкрд░, рдпрд╣ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

 pinba_timer_start(array('type'=>'db::connect', 'host'=>'users.sql')); $conn = mysql_connect(...); pinba_timer_stop(); 

рдпрд╣рд╛рдВ рд╣рдо mysql_connect рдХреЙрд▓ рдХреЗ рд░рдирд┐рдВрдЧ рд╕рдордп рдХреЛ рдорд╛рдкрддреЗ рд╣реИрдВ рдФрд░ рдЯрд╛рдЗрдорд░ рдХреЛ 2 рдЯреИрдЧ рд╕рдВрд▓рдЧреНрди рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рд╣рдо рдмрд╛рдж рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред

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

рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХрд░рдирд╛


рдпрд╣рд╛рдВ рдЙрди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреА рд╕реВрдЪреА рджреА рдЧрдИ рд╣реИ, рдЬрд┐рдиреНрд╣реЗрдВ рдкрд┐рдирдмрд╛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ:

 mysql> SHOW TABLES FROM pinba; +--------------------------------------+ | Tables_in_pinba | +--------------------------------------+ | info | | report_by_hostname | | report_by_hostname_and_script | | report_by_hostname_and_server | | report_by_hostname_server_and_script | | report_by_script_name | | report_by_server_and_script | | report_by_server_name | | report_by_status | | request | | tag | | timer | | timertag | +--------------------------------------+ 13 rows in set (0.00 sec) 

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

рдЯреЗрдмрд▓реНрд╕ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░реЗрдВ


Report_by_script_name - рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рд╕реЗ рдПрдХ; рдкреНрд░рддреНрдпреЗрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХрд┐рддрдиреА рдмрд╛рд░ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛, рдЗрд╕рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдФрд╕рдд рд╕рдордп, рдЗрд╕рдХреЗ рд╕реАрдкреАрдпреВ рдЙрдкрдпреЛрдЧ, рдЗрд╕рдХреЗ рдХрд╛рд░рдг рдЯреНрд░реИрдлрд╝рд┐рдХ рдХреА рдорд╛рддреНрд░рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдорд┐рд▓ рд╣реИред

 mysql> DESC report_by_script_name; +------------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------------+--------------+------+-----+---------+-------+ | req_count | int(11) | YES | | NULL | | | req_per_sec | float | YES | | NULL | | | req_time_total | float | YES | | NULL | | | req_time_percent | float | YES | | NULL | | | req_time_per_sec | float | YES | | NULL | | | ru_utime_total | float | YES | | NULL | | | ru_utime_percent | float | YES | | NULL | | | ru_utime_per_sec | float | YES | | NULL | | | ru_stime_total | float | YES | | NULL | | | ru_stime_percent | float | YES | | NULL | | | ru_stime_per_sec | float | YES | | NULL | | | traffic_total | float | YES | | NULL | | | traffic_percent | float | YES | | NULL | | | traffic_per_sec | float | YES | | NULL | | | script_name | varchar(128) | YES | | NULL | | +------------------+--------------+------+-----+---------+-------+ 15 rows in set (0.00 sec) 

рдкреНрд░рддреНрдпрдп рдХреЗ рд╕рд╛рде рдлрд╝реАрд▓реНрдб _total рдЕрдВрддрд┐рдо 5 рдорд┐рдирдЯ рдореЗрдВ рд╕рднреА рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдмрдВрдзрд┐рдд рдорд╛рдиреЛрдВ рдХрд╛ рдпреЛрдЧ рд╣реИред рдпрд╣реА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, req_time_total рдкрд┐рдЫрд▓реЗ 5 рдорд┐рдирдЯ рдореЗрдВ рд╕рдВрдмрдВрдзрд┐рдд рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рд╕рднреА рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдХрд╛ рдпреЛрдЧ рд╣реИред рдФрд░ req_time_total / req_count рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдФрд╕рдд рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рд╣реИред Req_utime_ * рдФрд░ req_stime_ * рдлрд╝реАрд▓реНрдб рдХреНрд░рдорд╢рдГ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдореЛрдб рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдореЛрдб рдореЗрдВ CPU рдЙрдкрдпреЛрдЧ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реИрдВред

рд╣рдорд╛рд░реА рдХрдВрдкрдиреА рдореЗрдВ, рдЗрди рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд╣рдо рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреНрд╡рд╛рд░рд╛ рд╕реАрдкреАрдпреВ рдЦрдкрдд рдХреЗ рдЧреНрд░рд╛рдл рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЧреНрд░рд╛рдл рдмрдирд╛рддреЗ рд╣реИрдВ (рд░реЗрдЦрд╛рдВрдХрди 1, 2):

рдЪрд╛рд░реНрдЯ 1ред


рдЪрд╛рд░реНрдЯ 2ред


Report_by_hostname : рдпрд╣ рд░рд┐рдкреЛрд░реНрдЯ рдмрддрд╛рддреА рд╣реИ рдХрд┐ рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рд░реНрд╡рд░ рдкрд░ рдХрд┐рддрдиреЗ рдЕрдиреБрд░реЛрдз рд╣реИрдВред рдЗрд╕рдореЗрдВ рд▓рдЧрднрдЧ рд╕рдорд╛рди рдлрд╝реАрд▓реНрдбреНрд╕ рдХреА рд╕реВрдЪреА рд╣реИ, рд▓реЗрдХрд┐рди script_name рдлрд╝реАрд▓реНрдб рдХреЗ рдмрдЬрд╛рдп рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╣реЛрд╕реНрдЯрдирд╛рдо рдлрд╝реАрд▓реНрдб рд╣реИред

 mysql> DESC report_by_hostname; +------------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------------+-------------+------+-----+---------+-------+ | req_count | int(11) | YES | | NULL | | ......... | hostname | varchar(32) | YES | | NULL | | +------------------+-------------+------+-----+---------+-------+ 15 rows in set (0.00 sec) 

рдХреБрдЫ рдХреЛ рд╢рд╛рдпрдж рд╣реЛрд╕реНрдЯрдирд╛рдо рд╡реИрд░рд┐рдПрдмрд▓ рдореЗрдВ рд╣реЛрд╕реНрдЯ рд╣реЗрдбрд░ рдореЗрдВ рдкрд╛рд░рд┐рдд рдбреЛрдореЗрди рджреЗрдЦрдиреЗ рдХреА рдЙрдореНрдореАрдж рд╣реИред рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣реЛрд╕реНрдЯрдирд╛рдо рдЪрд░ $ _ENV ['HOSTNAME'] рдХреА рд╕рд╛рдордЧреНрд░реА рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдорд╢реАрди рдХрд╛ рдирд╛рдо рд╢рд╛рдорд┐рд▓ рд╣реИред

рдЗрд╕ рд░рд┐рдкреЛрд░реНрдЯ рдХрд╛ рдореБрдЦреНрдп рд╕рд╛рд░ рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╣реИ рдФрд░ рдХреНрдпрд╛ рдкрдбрд╝реЛрд╕реА рд▓реЛрдЧреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХреБрдЫ рд╕рд░реНрд╡рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдЕрдиреБрд░реЛрдз рд╣реИрдВред

Report_by_server_name : рдЗрд╕ рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ, рдбреЗрдЯрд╛ рдХреЛ рдЙрд╕ рдбреЛрдореЗрди рджреНрд╡рд╛рд░рд╛ рд╕рдореВрд╣реАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдЖрдпрд╛ рдерд╛ред рдпрд╣ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдбреЛрдореЗрди рдореЗрдВ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред рддрд╛рд▓рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдкрд┐рдЫрд▓реЗ рджреЛ рдХреЗ рд╕рдорд╛рди рд╣реИ, рдХреЗрд╡рд▓ рдбреЗрдЯрд╛ рдЕрдм server_name рдлрд╝реАрд▓реНрдб рджреНрд╡рд╛рд░рд╛ рд╕рдореВрд╣реАрдХреГрдд рд╣реИред

Report_by_status : рдЗрд╕ рд░рд┐рдкреЛрд░реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрди HTTP рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдорд╛рдкреНрдд рд╣реЛрддреА рд╣реИ:

 mysql> SELECT req_count, status FROM report_by_status; +-----------+--------+ | req_count | status | +-----------+--------+ | 540622 | 200 | | 2578 | 301 | | 21955 | 302 | | 296 | 403 | | 2090 | 404 | +-----------+--------+ 5 rows in set (0.14 sec) 

рдпрджрд┐ рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ 500 рдХреА рд╕реНрдерд┐рддрд┐ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдХрд╣реАрдВ рди рдХрд╣реАрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ PHP рдХреЛрдб рдореЗрдВ "рдШрд╛рддрдХ рддреНрд░реБрдЯрд┐" рд╣реИред

рдЯрд╛рдЗрдорд░ рдФрд░ рдЯреИрдЧ


рдКрдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рд░рд┐рдкреЛрд░реНрдЯ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдгрд╛рд▓реА рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рдЯрд╛рдЗрдорд░ рдФрд░ рдЯреИрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

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

 pinba_timer_start(array('group'=>'db::connect', 'host'=>'users.sql')); $conn = mysql_connect(...); pinba_timer_stop(); 

рд╣рдо mysql_connect рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдХреЛ рдорд╛рдкрддреЗ рд╣реИрдВ рдФрд░ 2 рдЯреИрдЧ - рд╕рдореВрд╣ рдФрд░ рд╣реЛрд╕реНрдЯ рд╕рдВрд▓рдЧреНрди рдХрд░рддреЗ рд╣реИрдВред

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

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рд╡рд┐рднрд┐рдиреНрди рдбреЗрдЯрд╛ рд╕реНрд░реЛрддреЛрдВ рдХреЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдкрд░ рдЖрдВрдХрдбрд╝реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдорд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ: MySQL, рдореЗрдордХрд╛рдЯреЗрдб, рд╕реА / рд╕реА ++ рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ рд╕реЗрд╡рд╛рдПрдВред рд╣рдо рджреЛ рдЯреИрдЧреНрд╕ рдХреЗ рд╕рд╛рде рдкрд┐рдирдмрд╛ рдЯрд╛рдЗрдорд░ рдХреЗ рд╕рд╛рде рдРрд╕реЗ рд╕рднреА рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ "рд▓рд┐рдкрдЯреЗ" рдХрд░рддреЗ рд╣реИрдВ: рд╕рдореВрд╣ рдФрд░ рдореЗрдЬрдмрд╛рди (рд╣реЛрд╕реНрдЯ рдбреЗрдЯрд╛рдмреЗрд╕ рдпрд╛ рд╕реЗрд╡рд╛ рдХрд╛ рдкрддрд╛ рд╣реИ, рд╕рдореВрд╣ рд╕реЗрд╡рд╛ рдкрд░ рд╕рдВрдЪрд╛рд▓рди рд╣реИ)ред

рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рд╣рдордиреЗ рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдПрдХ рдЯреИрдЧ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИ, рдЬреЛ рдкрд┐рдирдмрд╛ рдХреЛ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╣рдо рдХрдИ рд░рд┐рдкреЛрд░реНрдЯ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рд╕рднреА рдЯреИрдЧ рдореВрд▓реНрдпреЛрдВ рдкрд░ рдПрдХ рдкреВрд░реА рд░рд┐рдкреЛрд░реНрдЯ рд╣реЛрдЧреАред рд╕рдореВрд╣ рдЯреИрдЧ рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╣рдо рдЗрд╕ рдкрд░ рдПрдХ рд░рд┐рдкреЛрд░реНрдЯ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдпрд╛ рдЙрд╕ рдСрдкрд░реЗрд╢рди рдХреЛ рдХрд┐рддрдиреА рдмрд╛рд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдХреБрд▓ рдХрд┐рддрдирд╛ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдПрдВ:

 CREATE TABLE `tag_info_group` ( `tag_value` varchar(64) DEFAULT NULL, `req_count` int(11) DEFAULT NULL, `req_per_sec` float DEFAULT NULL, `hit_count` int(11) DEFAULT NULL, `hit_per_sec` float DEFAULT NULL, `timer_value` float DEFAULT NULL ) ENGINE=PINBA DEFAULT CHARSET=latin1 COMMENT='tag_info:group' 

рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рдирд╛рдо рдордирдорд╛рдирд╛ рд╣реИ рдФрд░ рдХреБрдЫ рднреА рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдлреАрд▓реНрдб рдСрд░реНрдбрд░ рдмрд┐рд▓реНрдХреБрд▓ рдЙрд╕реА рддрд░рд╣ рд╣реИ рдЬреИрд╕реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╕рд╛рде рд╣реА рдЗрдВрдЬрди рдФрд░ COMMENT = 'tag_info: group' рдХреЗ рд▓рд┐рдП рдорд╛рдиред рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ, рд╕рдореВрд╣ рдЙрд╕ рдЯреИрдЧ рдХрд╛ рдирд╛рдо рд╣реИ рдЬрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рд╣рдо рд░рд┐рдкреЛрд░реНрдЯ рдмрдирд╛рддреЗ рд╣реИрдВред рдФрд░ tag_info рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рд╣реИ (рдЗрд╕рдореЗрдВ tag_report рднреА рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдиреАрдЪреЗ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреА)ред

рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдкрд┐рдирдмрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╡рд╣рд╛рдВ рдбреЗрдЯрд╛ рджрд░реНрдЬ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрдЧрд╛ред рдпрд╣ рд░рд┐рдкреЛрд░реНрдЯ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:

 mysql> SELECT * FROM tag_info_group ORDER BY timer_value; +--------------------+-----------+-------------+-----------+-------------+-------------+ | tag_value | req_count | req_per_sec | hit_count | hit_per_sec | timer_value | +--------------------+-----------+-------------+-----------+-------------+-------------+ | curl_request | 56216 | 281.08 | 56710 | 283.55 | 11977.3 | | memcache_get | 2563499 | 12817.5 | 11462991 | 57315 | 6823.04 | | hsc_connect | 2319186 | 11595.9 | 2870366 | 14351.8 | 6140.5 | | hsc_open_index | 2319158 | 11595.8 | 3285335 | 16426.7 | 5805.61 | | hsc_select | 2312567 | 11562.8 | 3158465 | 15792.3 | 5778.57 | | memcache_connect | 2563064 | 12815.3 | 4007451 | 20037.3 | 2389.65 | | memcache_set | 917102 | 4585.51 | 1616016 | 8080.08 | 1059.08 | | memcache_delete | 600720 | 3003.6 | 2451872 | 12259.4 | 785.702 | | scribe_receive | 382881 | 1914.41 | 975892 | 4879.46 | 382.522 | | hsc_update | 84877 | 424.385 | 85287 | 426.435 | 317.637 | | hsc_insert | 41564 | 207.82 | 41574 | 207.87 | 280.468 | | scribe_send | 382894 | 1914.47 | 975892 | 4879.46 | 174.156 | | memcache_increment | 60817 | 304.085 | 88734 | 443.67 | 30.9102 | | memcache_add | 14818 | 74.09 | 16281 | 81.405 | 4.71686 | | memcache_multi_get | 2543 | 12.715 | 2543 | 12.715 | 1.59621 | | hsc_delete | 4 | 0.02 | 9 | 0.045 | 0.003373 | +--------------------+-----------+-------------+-----------+-------------+-------------+ 16 rows in set (0.00 sec) 

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рд░рд┐рдкреЛрд░реНрдЯ рдмрддрд╛рддреА рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреБрдЫ рдмрд╣реБрдд рд╣реА рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдХрд░реНрд▓_рд░реЗрдХреНрд╡реЗрд╕реНрдЯ рд╣реИрдВ ред

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

 CREATE TABLE `tag_report_group` ( `script_name` varchar(128) DEFAULT NULL, `tag_value` varchar(64) DEFAULT NULL, `req_count` int(11) DEFAULT NULL, `req_per_sec` float DEFAULT NULL, `hit_count` int(11) DEFAULT NULL, `hit_per_sec` float DEFAULT NULL, `timer_value` float DEFAULT NULL ) ENGINE=PINBA DEFAULT CHARSET=latin1 COMMENT='tag_report:group' 

рддрд╛рд▓рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдХрдИ рддрд░рд╣ рд╕реЗ рдкрд┐рдЫрд▓реА рдЯреИрдЧ_рдЗрдирдлреНрд░реЗрдо_рдЧреНрд░реБрдк рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рд╕рдорд╛рди рд╣реИред рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ script_name рдлрд╝реАрд▓реНрдб рджрд┐рдЦрд╛рдИ рджреА , рдФрд░ COMMENT рдлрд╝реАрд▓реНрдб рдореЗрдВ рд╣рдордиреЗ tag_report рдкреНрд░рдХрд╛рд░ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдмрдирд╛рдИред рдЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рд╣рдо рдкрд┐рдЫрд▓реЗ рдПрдХ рд╕реЗ рд╕рднреА рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди script_name рджреНрд╡рд╛рд░рд╛ рд╕рдореВрд╣реАрдХреГрдд рд╣реИред

рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХреМрди рд╕реЗ рдСрдкрд░реЗрд╢рди рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ:

 mysql> SELECT tag_value, req_count, hit_count, timer_value, hit_count/req_count FROM tag_report_group WHERE script_name='/admin/messages/all.phtml' ORDER BY timer_value DESC; +--------------------+-----------+-----------+-------------+---------------------+ | tag_value | req_count | hit_count | timer_value | hit_count/req_count | +--------------------+-----------+-----------+-------------+---------------------+ | memcache_get | 107439 | 3227537 | 1060.68 | 30.0406 | | memcache_connect | 107439 | 887789 | 270.919 | 8.2632 | | scribe_receive | 107573 | 283478 | 68.9106 | 2.6352 | | memcache_set | 34339 | 153080 | 50.6079 | 4.4579 | | scribe_send | 107573 | 283478 | 39.7583 | 2.6352 | | memcache_delete | 18236 | 21306 | 4.54436 | 1.1683 | | curl_request | 15 | 15 | 0.514396 | 1.0000 | | memcache_decrement | 1250 | 1250 | 0.251141 | 1.0000 | | memcache_multi_get | 125 | 125 | 0.066473 | 1.0000 | | memcache_increment | 2 | 2 | 0.000336 | 1.0000 | +--------------------+-----------+-----------+-------------+---------------------+ 10 rows in set (0.03 sec) 

рдпрд╣ рдЙрджрд╛рд╣рд░рдг Hit_count рдФрд░ req_count рдлрд╝реАрд▓реНрдбреНрд╕ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рджрд┐рдЦрд╛рддрд╛ рд╣реИред Req_count HTTP рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рджреМрд░рд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ tag_value рдХреЗ рд╕рд╛рде рдЯрд╛рдЗрдорд░ рдХреЛ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдмрд╛рд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рдерд╛ред Hit_count - рдирд┐рд░реНрджрд┐рд╖реНрдЯ tag_value рдХреЗ рд╕рд╛рде рдЯрд╛рдЗрдорд░ рдХреЛ рдХрд┐рддрдиреА рдмрд╛рд░ рдХрд╣рд╛ рдЧрдпрд╛ред

рдКрдкрд░ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ /admin/messages/all.phtml, memcache_get рдХреЛ 30 рдмрд╛рд░ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рддреНрд░реБрдЯрд┐ рд╣реИ, рдФрд░ рдкреГрд╖реНрда рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

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

 mysql> SELECT * FROM tag_info_server WHERE tag_value LIKE 'memcache%' ORDER BY timer_value; +------------------+-----------+-------------+-----------+-------------+-------------+ | tag_value | req_count | req_per_sec | hit_count | hit_per_sec | timer_value | +------------------+-----------+-------------+-----------+-------------+-------------+ | memcached7.mlan | 350702 | 1753.51 | 1767513 | 8837.57 | 781.644 | | memcached3.mlan | 336217 | 1681.08 | 1734430 | 8672.15 | 871.633 | | memcached1.mlan | 350082 | 1750.41 | 1823910 | 9119.55 | 883.52 | | memcached8.mlan | 357798 | 1788.99 | 1793808 | 8969.04 | 908.848 | | memcached10.mlan | 343287 | 1716.44 | 1757085 | 8785.42 | 909.042 | | memcached5.mlan | 398042 | 1990.21 | 1861729 | 9308.64 | 914.772 | | memcached4.mlan | 401584 | 2007.92 | 1877775 | 9388.88 | 937.53 | | memcached2.mlan | 459912 | 2299.56 | 2028406 | 10142 | 971.189 | | memcached6.mlan | 399768 | 1998.84 | 1912571 | 9562.86 | 975.094 | | memcached9.mlan | 425276 | 2126.38 | 1939575 | 9697.88 | 1008.29 | +------------------+-----------+-------------+-----------+-------------+-------------+ 10 rows in set (0.00 sec) 

рд╣реЛрд╕реНрдЯ рдЯреИрдЧ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рд░рд┐рдкреЛрд░реНрдЯ рдкрд░реНрдпрд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реАрдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИред рдпрд╣ рдПрдХ рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рд╣реЛрд╕реНрдЯ рдХреЗ рд╕рд╛рде рдЯрд╛рдЗрдорд░ рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡реГрддреНрддрд┐ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдпреЛрдВ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдмрд┐рдирд╛ред рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, Pinba 2 рдЯреИрдЧ рдХреЗ рд╕рдореВрд╣ рдХреЗ рд╕рд╛рде tag_info рдФрд░ tag_report рдЬреИрд╕реА рд░рд┐рдкреЛрд░реНрдЯ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ:

 CREATE TABLE `tag_info_group_server` ( `group_value` varchar(64) DEFAULT NULL, `server_value` varchar(64) DEFAULT NULL, `req_count` int(11) DEFAULT NULL, `req_per_sec` float DEFAULT NULL, `hit_count` int(11) DEFAULT NULL, `hit_per_sec` float DEFAULT NULL, `timer_value` float DEFAULT NULL ) ENGINE=PINBA DEFAULT CHARSET=latin1 COMMENT='tag2_info:group,server' 

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

 mysql> SELECT * FROM tag_info_group_server WHERE server_value = 'dbs101.mlan' ORDER BY timer_value; +-------------+--------------+-----------+-------------+-----------+-------------+-------------+ | group_value | server_value | req_count | req_per_sec | hit_count | hit_per_sec | timer_value | +-------------+--------------+-----------+-------------+-----------+-------------+-------------+ | db::replace | dbs101.mlan | 154 | 0.77 | 154 | 0.77 | 0.257526 | | db::delete | dbs101.mlan | 1340 | 6.7 | 1340 | 6.7 | 1.84398 | | db::begin | dbs101.mlan | 6437 | 32.185 | 6589 | 32.945 | 2.96375 | | db::commit | dbs101.mlan | 6437 | 32.185 | 6589 | 32.945 | 3.04067 | | db::insert | dbs101.mlan | 4674 | 23.37 | 11171 | 55.855 | 13.9457 | | db::update | dbs101.mlan | 6358 | 31.79 | 10399 | 51.995 | 18.197 | | db::connect | dbs101.mlan | 16826 | 84.13 | 16826 | 84.13 | 22.1383 | | db::select | dbs101.mlan | 14372 | 71.86 | 47106 | 235.53 | 180.235 | +-------------+--------------+-----------+-------------+-----------+-------------+-------------+ 8 rows in set (0.01 sec) 

рд╕реНрдкрд╖реНрдЯ рдХрд╛рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рдпрд╣ рд╕рд╣реА рд╣реИ рдХрд┐ рдЬреНрдпрд╛рджрд╛рддрд░ рд╕рдордп рдкрд░ рдХрдмреНрдЬрд╛ рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдЕрд▓рдЧ-рдЕрд▓рдЧ рдореЗрдЬрдмрд╛рдиреЛрдВ рдкрд░ рдПрдХ рд╣реА рдСрдкрд░реЗрд╢рди рдХреЗ рдЖрдВрдХрдбрд╝реЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред Memcache_connect рдХреЗ рд▓рд┐рдП рдЙрджрд╛рд╣рд░рдг:

 mysql> SELECT server_value, req_count, hit_count, timer_value FROM tag_info_group_server WHERE group_value='memcache_connect' ORDER BY timer_value; +------------------+-----------+-----------+-------------+ | server_value | req_count | hit_count | timer_value | +------------------+-----------+-----------+-------------+ | memcached1.mlan | 366138 | 365061 | 191.808 | | memcached3.mlan | 354688 | 353760 | 192.184 | | memcached10.mlan | 365358 | 364341 | 197.353 | | memcached8.mlan | 368912 | 367839 | 213.768 | | memcached7.mlan | 374160 | 373152 | 215.914 | | memcached5.mlan | 415444 | 414434 | 217.855 | | memcached4.mlan | 423394 | 422242 | 252.416 | | memcached2.mlan | 478949 | 477641 | 272.346 | | memcached6.mlan | 414088 | 413003 | 279.038 | | memcached9.mlan | 441589 | 440481 | 377.952 | +------------------+-----------+-----------+-------------+ 10 rows in set (0.01 sec) 

рдЖрдк tag2_report рдкреНрд░рдХрд╛рд░ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рднреА рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ 2 рдЯреИрдЧреНрд╕ рдХреА рдЬрд╛рдирдХрд╛рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреНрд╡рд╛рд░рд╛ рдЯреВрдЯ рдЬрд╛рддреА рд╣реИ:

 CREATE TABLE `tag_report_group_server` ( `sc0ript_name` varchar(128) DEFAULT NULL, `tag1_value` varchar(64) DEFAULT NULL, `tag2_value` varchar(64) DEFAULT NULL, `req_count` int(11) DEFAULT NULL, `req_per_sec` float DEFAULT NULL, `hit_count` int(11) DEFAULT NULL, `hit_per_sec` float DEFAULT NULL, `timer_value` float DEFAULT NULL ) ENGINE=PINBA DEFAULT CHARSET=latin1 COMMENT='tag2_report:group,server' 

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

 mysql> SELECT * FROM tag_report_group_server WHERE tag1_value='db::connect' AND tag2_value NOT LIKE 'dbs%' AND tag2_value NOT LIKE 'dbb%'; 

рдпрд╣ рджрд┐рдЦрд╛рдПрдЧрд╛ рдХрд┐ рдХреМрди рд╕реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗрдВрджреНрд░реАрдп рдбреЗрдЯрд╛рдмреЗрд╕ рдкрд░ рдкреНрд░рд╢реНрди рдмрдирд╛рддреА рд╣реИред

рдирдЧреНрдиреЗрдХреНрд╕ + рдкрд┐рдирдмрд╛


рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдм рднреА рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рдерд╛ред рдЬрдм рдХреНрд▓рд╛рдЗрдВрдЯ рд╣рдореЗрдВ рдПрдХ HTTP рдЕрдиреБрд░реЛрдз рднреЗрдЬрддрд╛ рд╣реИ, рддреЛ рдмрд╛рдж рд╡рд╛рд▓рд╛ рдкрд╣рд▓реЗ nginx рдореЗрдВ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ PHP рдореЗрдВ рдкреНрд░реЙрдХреНрд╕реА рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЗрд╕ рд╕рдордп PHP рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реНрд╡реАрдХрд╛рд░ рдирд╣реАрдВ рдХрд░рддреА рд╣реИ рдФрд░ рдЕрдиреБрд░реЛрдз рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рддреЛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рд╕рд░реНрд╡рд░ рдУрд╡рд░рд▓реЛрдб рд╣реИ, рдпрд╛ рдиреЗрдЯрд╡рд░реНрдХ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдХрд╛рд░рдг, nginx php-fpm рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реЗ рд╕рдВрдкрд░реНрдХ рдирд╣реАрдВ рдХрд░ рдкрд╛рдПрдЧрд╛? рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдХ рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА, рд▓реЗрдХрд┐рди рд╣рдо рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ PHP рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рди рдкрд╛рдПрдВрдЧреЗ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдирдЧрдиреЗрдХреНрд╕ рд▓реЙрдЧреНрд╕ рдореЗрдВ рд╣реЛрдЧрд╛)ред

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

рдкреНрд▓реЙрдЯрд┐рдВрдЧ


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

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

RRDtool рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рд╡рд░реНрдгрди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЙрд╕рдХреА рдЕрдкрдиреА рдмрд╣реБрдд рд╕рд╛рд░реА рдмрд╛рд░реАрдХрд┐рдпрд╛рдБ рд╣реИрдВ, рдФрд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд▓реЛрдЧреЛрдВ рдХреА рдЪрд╛рд░реНрдЯрд┐рдВрдЧ рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдБ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╡рд┐рд╖рдп рдПрдХ рдЕрд▓рдЧ рд▓реЗрдЦ рдХреЗ рдпреЛрдЧреНрдп рд╣реИред рдЦрд░реЛрдВрдЪ рд╕реЗ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреЗ рдЗрд╕ рд╕реЗрдЯ рдХреЗ рд╕рд╛рде рдЖрд░рдВрдн рдХрд░рдиреЗ рдореЗрдВ рдЖрдкрдХреА рд╕рд╣рд╛рдпрддрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрд░реНрдпрд╛рдкреНрдд рдЧрд╛рдЗрдб рд╣реИрдВред

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


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

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

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

PHP рдореЙрдбреНрдпреВрд▓ рдХреЗ рдЕрд▓рд╛рд╡рд╛, Pinba рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ PHP рд╕реЗ рдмрдВрдзрд╛ рд╣реБрдЖ рдирд╣реАрдВ рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд▓рд┐рдЦреЗ рд╕рд┐рд╕реНрдЯрдо рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред GitHub рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА Python рдФрд░ Ruby рдореЗрдВ Pinba рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИрдВред

рдореИрдХреНрд╕рд┐рдо max_m Matyukhin, рдбреЗрд╡рд▓рдкрд░
badoo рдХрдВрдкрдиреА

рдЙрдкрдпреЛрдЧреА рд▓рд┐рдВрдХ


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


All Articles