рдореИрдВрдиреЗ рдЕрдиреБрд╡рд╛рдж рдХреЛ рдпрдерд╛рд╕рдВрднрд╡ рд╕рдЯреАрдХ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдФрд░ рдХреЗрд╡рд▓ рдХрдВрдкрдиреА рдХрд╛ рдирд╛рдо рдмрджрд▓ рджрд┐рдпрд╛, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЦреБрджрд░рд╛ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдХрд╛рдо рдХреЗ рджрд╛рдпрд░реЗ рдФрд░ рд╕рд┐рджреНрдзрд╛рдВрдд рдореЗрдВ рдпрд╣ рдореВрд▓ рдХреЗ рд╕рдорд╛рди рд╣реИредTeremka рдореЗрдиреВ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдкреИрдирдХреЗрдХ рд▓рдЧрднрдЧ 8 рдЕрд╡рдпрд╡реЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИред рддрддреНрд╡реЛрдВ рдХреА рдЗрддрдиреА рд╕рд░рд▓ рдЖрд╡рдзрд┐рдХ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕рд╛рде, рдХрдВрдкрдиреА рдиреЗ рдкрд┐рдЫрд▓реЗ рд╕рд╛рд▓ $ 1.9 рдмрд┐рд▓рд┐рдпрди рдХрдорд╛рдП (
рдирд╣реАрдВ, рдЯреЗрд░реЗрдореЛрдХ рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдЕрднреА рднреА рдЯреИрдХреЛ рдмреЗрд▓ )ред
рдЬрд┐рддрдирд╛ рдЕрдзрд┐рдХ рдореИрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдФрд░ рдбрд┐рдЬрд╝рд╛рдЗрди рд╕рд┐рд╕реНрдЯрдо рдХрд░рддрд╛ рд╣реВрдВ, рдЙрддрдирд╛ рд╣реА рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдХрдИ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЖрдк рдпреВрдирд┐рдХреНрд╕ рджреНрд╡рд╛рд░рд╛ рд╣рдореЗрдВ рджрд┐рдП рдЧрдП рдЯреВрд▓ рдХреЗ рдореВрд▓ рд╕реЗрдЯ рдХреЛ рддреБрдЪреНрдЫ рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝рдХрд░ рд╡рд╛рдВрдЫрд┐рдд рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдВрдд рдореЗрдВ, рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдореВрд▓реНрдп рд╣реИ, рдФрд░ рдХреЛрдб рдЛрдг рд╣реИред рдпрд╣ рдХрдерди DevOps (
рдбреЗрд╡рд▓рдкрд░-рдкреНрд░рд╡реЗрд╢ ) рдХреЗ рдмреЗрддреБрдХреЗ рд░реБрдЭрд╛рди рдХреЗ рд╡рд┐рдкрд░реАрдд рд╣реИ, рдЬрд┐рд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рд┐рд╕реНрдЯрдо рдПрдбрдорд┐рдирд┐рд╕реНрдЯреНрд░реЗрдЯрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреА рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпреВрдирд┐рдЯ рдЯреЗрд╕реНрдЯ рдФрд░ рдЕрдиреНрдп рдЪреАрдЬреЗрдВ рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдмрддрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдЯреЗрд░реЗрдо-рд╕реНрдЯрд╛рдЗрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╣реИрдВ рдЬреЛ рдкреНрд░рд╢рд╛рд╕рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рдЬрд╛рдирддреЗ рд╣реИрдВ (рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдпреВрдирд┐рдХреНрд╕) ) рддрд╛рдХрд┐ рд╡реЗ рдкрд╣рд┐рдпрд╛ рдХреЛ рдордЬрдмреВрдд рди рдХрд░реЗрдВ, рдФрд░ рд╕рд░рд▓ рдФрд░ рд╕реНрдХреЗрд▓реЗрдмрд▓ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдЖрдПрдВред
рдпрд╣рд╛рдВ рдПрдХ рдареЛрд╕ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреЛ рдЖрдЧреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдбрд┐рд╕реНрдХ рдкрд░ рд▓рд╛рдЦреЛрдВ рд╡реЗрдм рдкреЗрдЬреЛрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдФрд░ рдЬрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ? рдЫреЛрдЯреЗ рдмрдЪреНрдЪреЗ рдХрд╣реЗрдВрдЧреЗ рдЖрдкрдХреЛ рдХреНрд▓реВрдЬреБрд░ рдкрд░ рдПрдХ рд╡рд┐рддрд░рд┐рдд рдордХрдбрд╝реА рд▓рд┐рдЦрдиреЗ рдФрд░ рдЗрд╕реЗ рдИрд╕реА 2 рдкрд░ рдЪрд▓рд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдПрд╕рдХреНрдпреВрдПрд╕ рдпрд╛ 0 рдПрдордХреНрдпреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдПред
xargs рдФрд░ wgetред рдЗрдВрдЯрд░рдиреЗрдЯ рдЪреИрдирд▓ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рджреБрд░реНрд▓рдн рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдк рд╡рд┐рднрд╛рдЬрди рдФрд░ rsync рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдПрдХ "рд╡рд┐рддрд░рд┐рдд рдордХрдбрд╝реА" рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреА рдХреЗрд╡рд▓ 10 рдкрдВрдХреНрддрд┐рдпрд╛рдБ рд╣реИрдВред
рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реБрдП, рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдпреЗ рд▓рд╛рдЦреЛрдВ рдкреГрд╖реНрда (рдпрд╛ рдпрд╣рд╛рдБ рддрдХ рдХрд┐ рджрд╕рд┐рдпреЛрдВ рд▓рд╛рдЦ) рд╣реЛрдВ, рддреЛ рдЖрдк рдЗрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓реЗрдВрдЧреЗ? рдмреЗрд╢рдХ, рдЖрдкрдХреЛ Hadoop MapReduce рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдЖрдЦрд┐рд░рдХрд╛рд░, рдпрд╣ рд╣реИ рдХрд┐ Google рд╡реЗрдм рдкреЗрдЬ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИ?
рдмреНрдпреВ, рдЗрд╕ рдмрдХрд╡рд╛рд╕ рдХреЗ рд╕рд╛рде рдирд░рдХ рдХреЗ рд▓рд┐рдП:
crawl_dir / -type f -print0 рдЦреЛрдЬреЗрдВ | xargs -n1 -0 -P32/process
32 рд╕рдорд╛рдирд╛рдВрддрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдФрд░ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╢реВрдиреНрдп рд╕реНрд▓реЗрдЯ рдХреЛрдбред рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдБ рд╕рдВрддреБрд╖реНрдЯ рд╣реИрдВред
рд╣рд░ рдмрд╛рд░ рдЬрдм рдЖрдк рдПрдХ рдХреЛрдб рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдпрд╛ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреА рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рд╡рд┐рдлрд▓рддрд╛ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрддреЗ рд╣реИрдВред рдореБрдЭреЗ рд╣рдбреЛрдк рдХреА рддреБрд▓рдирд╛ рдореЗрдВ xargs рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рднрд░реЛрд╕рд╛ рд╣реИред рд╣рд╛рдВ, рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рд╣реИрдВрдбрд▓рд░ рд▓рд┐рдЦрдиреЗ рдореЗрдВ рдЦреБрдж рд╕реЗ рдЬреНрдпрд╛рджрд╛ xargs рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВред рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рдХрддрд╛рд░ рд╕реЗрд╡рд╛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рд░реВрдк рд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрджреЗрд╢ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП syslogред
Teremk-style рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдпреВрдирд┐рдХреНрд╕ рдЬрд╝реЗрди рдХреЗ рдЪрд░рдгреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред рдпрд╣ рд╡рд╣ рд░рд╛рд╕реНрддрд╛ рд╣реИ рдЬреЛ рдореИрдВ рдЕрднреА рд╢реБрд░реВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рд▓рд╛рднрд╛рдВрд╢ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмрд╣рдирд╛ рд╢реБрд░реВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдХреИрд╕реЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдмрд╛рд╣рд░ рдлреЗрдВрдХрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: рдореИрдВрдиреЗ рд╕реНрдереИрддрд┐рдХ рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рдЕрдкрд╛рдЪреЗ mod_rewrite рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ SOAP рд╕рд░реНрд╡рд░ рдмрдирд╛рдпрд╛ред рд╕рдм рдХреБрдЫ рдЯреЗрд░реЗрдореЗрдХ рдХреА рд╢реИрд▓реА рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдерд╛, рдЕрдЧрд░ рдореБрдЭреЗ рдХреЗрд╡рд▓ рд╕реАрдб рдХреЛ рдЫрд╛рдВрдЯрдиреЗ рдХреА рддрд╛рдХрдд рдорд┐рд▓реА рдереА, рд▓реЗрдХрд┐рди рдореИрдВ рдбрд░ рдЧрдпрд╛ рдФрд░ рдкрд╛рдпрдерди рдореЗрдВ рдХреБрдЫ рд▓рд┐рдЦрд╛ред
рдпрджрд┐ рдЖрдк рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╝реЗрди рдХреЗ рдирдЬрд░рд┐рдП рд╕реЗ рд╕реЛрдЪрдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдкреВрдВрдЬреАрд╡рд╛рджреА рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рд╕реЛрдЪреЗрдВ: рдЖрдк рдЯреЗрдмрд▓ рдкрд░ рдЦрд╛рдирд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рд▓рд┐рдЦрддреЗ рд╣реИрдВред рдЖрдк рдкреНрд░рд╕рд┐рджреНрдз рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬреЛрдЦрд┐рдо рдХреЛ рдХрдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдЖрдк рдЕрдЬреНрдЮрд╛рдд рднреВрдорд┐ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдкрдХреЛ рд╢рд╛рдпрдж рд╕рдореНрдореЗрд▓рди рдореЗрдВ рднрд╛рд╖рдг рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдордВрддреНрд░рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдЖрдкрдХреЗ рдкреЗрдЬрд░ рдХреЛ рд░рд╛рдд рдореЗрдВ рдмрдВрдж рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред