ã¢ã¬ã¯ãµã³ããŒã»ã¯ãªã¶ããã¹ããŒïŒ krizhanovsky ã NatSys Labã ïŒ
ãã®åçã¯é·ãéWebäžã§å®è¡ãããŠããŸãããå°ãªããšãFacebookã§ããèŠãããŸããã
Googleã§å ¥åãããšããããããäœæãã人ãLinuxã®ããã©ãŒãã³ã¹ã®æé©åã«åãçµãã§ããããšãããããŸããã圌ã«ã¯çŽ æŽãããããã°ããããŸãã ãã®ç»åãååšãããã¬ãŒã³ããŒã·ã§ã³ã ãã§ãªããçŽ3ã€ã®ãã¬ãŒã³ããŒã·ã§ã³ããããä»ã®ããã¥ã¡ã³ãããããŸãã ãã®ããã°ã«è¡ãããšããå§ãããŸãããã®åçã«ãªã¹ããããŠãããã¹ãŠã®ãŠãŒãã£ãªãã£ã«ã€ããŠãã説æããŠããŸãã å話ããããªãã£ãã®ã§ããã¬ãŒã³ããŒã·ã§ã³ãžã®ãªã³ã¯-http://www.brendangregg.com/linuxperf.htmlãæäŸããŸã ã
äžæ¹ã圌ã¯ãã¬ãŒã³ããŒã·ã§ã³ã«éåžžã«å§çž®ãããã¹ããªãŒã ãæã¡ããããã®åãŠãŒãã£ãªãã£ã«ã€ããŠ1æéã®ãã¬ãŒã³ããŒã·ã§ã³ããããŸã-å®éã«ã¯ãman'eã§èŠã€ããããšãã§ããã®ãšåãããšããŸãã¯åã«ããããã®ååãå ¥åããã ãã§ãGoogleã§ãããã®ãŠãŒãã£ãªãã£ã®ã ããã«ããã¯ãèŠã€ããŠãäœãèµ·ãã£ãŠããã®ããç解ããæ¹æ³ã«ã€ããŠãããã€ãäŸãæããããšæããŸããã
Greggã¯ãããã«ããã¯ã®èŠã€ãæ¹ã®è°è«ããå§ãŸãæ¹æ³è«ã5ã€ã®ããªãã質åãªã©ãæäŸããŸãã æ¹æ³è«ã䜿çšããããšã¯ãããŸããããã èŠãŠãäœããããŠãäœãã§ããããèŠãããã§ãã
æ®å¿µãªããããã¬ãŒã³ããŒã·ã§ã³ãæºåããŠãããšãããœãããŠã§ã¢ããã³ãããŒã¯ãã€ãŸã ã¹ã¯ãªããå šäœãç¹°ãè¿ãããšãã§ããŸããã§ããã æã£ãŠãããã°ããã£ãããã©ããããããä»®æ³ãã·ã³ã§ããã€ãã®ã¹ã¯ãªãããåçŸããããšããã®ã§ãããã€ãã®æ°åãçãããå Žåã¯ãæ¬åœã«çãããã®ã§ãå°ãèŠãŠã¿ãŸããããæã æ°åã®é åºãšãã®èŠæ¹ãèªèæ¹æ³ã¯ãç§ãã¡ã«ãšã£ãŠããéèŠã§ãã
æåã®äž»ãªäŸã¯ãã«ã¹ã¿ã ã¢ããªã±ãŒã·ã§ã³ããããnginxã¢ãžã¥ãŒã«ãéåžžã«éãã¢ãžã¥ãŒã«ããããŸããããã¢ããªã±ãŒã·ã§ã³ããžãã¯ã¯èæ ®ããŸããã 人ã ã¯å€ãã®æ¥ç¶ãæãã§ãããšããåé¡ããããŸããããå€ãã®æ¥ç¶ãããŸããããããã¹ãŠãããã§æ¢ãŸããŸããã å ¥åãã©ãã£ãã¯ã¯1ç§ãããçŽ250 MBã§ããã®ãããªããªãæ§ãããªãã©ãã£ãã¯ã§ã¯å€ãã®äžŠåæ¥ç¶ãè¡ãããŸããã ãªãœãŒã¹ãå®å šã«æ¶è²»ããŸããããäœãèµ·ãããŸããã§ããã æ°ããæ¥ç¶ãæ°ããèŠæ±ã¯åã«ç Žæ£ãããŸããã
èŠãŸããã æåã«è¡ãããšã¯ãnetstatã確èªããgrepãå®è¡ããå¥ã®grepãå®è¡ããããšã§ãã netstatã«ã¯2äžãè¶ ããæ¥ç¶ãããããããã®ã¹ããªãŒã ãããã«ãããŸãã ããã©ãŒãã³ã¹ã®åé¡ãçºçãããšãã·ã¹ãã ãéåžžã«æªãæããããšã¯æããã§ãã ãããŠãnetstatãå®è¡ãããšãgrepã§éåžžã«é·æéãã³ã°ãããããå¯èœã§ããã°ãprocã䜿çšããããšããå§ãããŸããå®éã«ã¯åžžã«ååšãããã€ãã§ã¯æ©èœããªããããã«èªã¿åãawkã¹ã¯ãªãããèšè¿°ããŸãã procã®æååãããã解æããã«ãŠã³ãããçµæãæäŸããŸãã äœæ¥ãå°ãéããªããå¿«é©ã«ãªããŸãã
äœãèµ·ãã£ãŠããã®ããç解ããããã«2çªç®ã«è¡ãããšã¯ãåã«çä¿¡ãã±ãããã«ãŠã³ãããããšã§ãã ããã§ã¯è€éãªãã®ã¯äœ¿çšããŸããã§ããããã±ããã«ãŠã³ã¿ãŒããã€ãã«ãŠã³ã¿ãŒã䜿çšããŸãã å®éããããã®æ°å€ã¯ã©ã®ããã«ååŸãããŸããïŒå€åãå¹³æºåããããã«10ç§éã¹ãªãŒãããäžæ¹ããä»æ¹ãæžç®ããŠ10ã§é€ç®ããŸãã
次ã«ãTop normalãå®è¡ããŸãã Topã«ã¯ããçš®ã®åçããããŸããäžè¬ã«ãç¯çœªè ã¯ããŸããã nginxã¯ããã»ããµã®100ïŒ ãæ¶è²»ããŸãããå¹³åãåºæ¬çã«æ£åžžã§ãã ã·ã¹ãã æéã33ïŒ ã§ããœãããŠã§ã¢å²ã蟌ã¿ïŒsi-ãœãããŠã§ã¢å²ã蟌ã¿ïŒ-52ïŒ ã§ããããšãçãããŸãã ã€ãŸã å®éãnginxã¯ã»ãšãã©åœ¹ã«ç«ã¡ãŸããããOSã«ãŒãã«ã«ã¯å€ãã®ããšãã§ããŸãã ãŸãã2ã€ã®ksoftirqdã¹ã¬ãããããããšãããããŸãããããä»®æ³ãã·ã³å ã§åçŸããŸããããã³ã¢ã¯2ã€ãããããŸããã§ããã 2ã€ã®ãããã¯ãŒã¯ãã³ãã©ã¹ã¬ããããããã«ãªããŸããã
äžéšã«äŸ¿å©ãªãã¿ã³ããããŸã-ã1ããæŒãå¿ èŠããããŸãã ããã»ããµãŒã®èŠçŽçµ±èšã¯è¡šç€ºãããŸããããããã»ããµãŒããšã«åå¥ã«è¡šç€ºãããŸãã ããã§ã¯ãäžè¬çã«ãããã»ããµãåçã«åäœãããè¯ãç»åãèŠãããšãã§ããŸãã 1ã€ã®ããã»ããµã100ïŒ ãããå€ãããä»ã®ããã»ããµã暪ããã£ãŠããå Žåãæããã«è² è·åæ£ã«åé¡ããããŸãã ãã±ãããäž»ã«1ã€ã®ã³ã¢ã1ã€ã®å²ã蟌ã¿ã«éãããå Žåãæ®ãã«ã¯æ®ãããããŸãã ããã§ç§ãã¡ã¯è¯ãååžããããŸããã
ç§ã¯ããã䜿ãã®ã倧奜ãã§ãã ããã¯è¯ããããŸãããããã¯èŸ²æ°ã®æ¹æ³ã§ãããäžè¬çã«GDBã¯éåžžã«åŒ·åãªã€ã³ã¿ãŒãã§ãŒã¹ãæäŸããŸãã ã«ãŒãå ã®ãã¹ãŠã®nginxããã»ã¹ã§GDBã®ã¹ã¯ãªãããèšå®ãããããã§äœãè¡ããããã確èªã§ããŸãã ããã§ã¯ãã¹ã¿ãã¯ã®äžçªäžãã€ãŸãæåãš2çªç®ã®é¢æ°ãèŠãŠãããŸãããååãšããŠãããèå³æ·±ãããšãè¡ãããšãã§ããŸããããã¯ãã¬ãŒã¹ãåéã§ããã ãã§ãªããå€æ°ãåºåããããšãã§ããŸãã ããã¯ããµãŒããŒã®å éšããªã¢ã«ã¿ã€ã ã§ç¢ºèªãããµãŒããŒã§äœãè¡ãããŠãããããã®ã¹ããŒã¿ã¹ã確èªã§ããã»ã©åŒ·åãªã¡ã«ããºã ã§ãããããŸãåæ¢ããªãã§ãã ããã ãã®ã¹ã¯ãªããã¯ãå®éã«ã¯ã¹ããŒããŠã³ããnginxãæªåããŠããããšã¯æããã§ãããäžè¬çã«ã¯åäœãããªã¢ã«ã¿ã€ã ã§å®è¡ã§ããŸãã
ãã®ã¹ã¯ãªãããæ°åå®è¡ãããšãäžè¬ã«ãè€æ°ã®ããã»ã¹ãè€æ°ã®ã¹ã¬ããã ãã§ããã»ãšãã©ã®å Žåãäžéšã®ã¹ã¬ããã1ã€ãŸãã¯2ã€ã®æ©èœã«æéãè²»ãããŠããããšãããããŸãããããåãªãããã«ããã¯ã§ãã é¢å¿ã®ããã¹ã¬ãããŸãã¯ããã»ã¹ã1ã€ãããªãå Žåã¯ããããæ°åå®è¡ããã ãã§ããããéåžžã«åçŽãªãµã³ããªã³ã°ã§ããããšãç解ã§ããŸãã
ãã®å Žåãç§ãã¡ã¯ããã§åã«ãšããŒã«ãèŠããšã¯ãŸã èšã£ãŠããŸããã Epollã¯ããŸããããããã¯ãããŸããããŠãŒã¶ãŒç©ºéã®ã³ãŒããèŠãã°ããã£ãšãããããã§ãã éå§ããå ŽåããŠãŒã¶ãŒã¹ããŒã¹ã³ãŒãããããåŠçããæ£èŠè¡šçŸããããããã«ããã¯ããããŸããã
次ã¯ãåé¡ãnginxã§ã¯ãªãã·ã¹ãã ã®åé¡ã§ããããšãããã£ããããã·ã¹ãã ã«é²ã¿ãŸãã OSãã©ã®ããã«æãããã確èªããŸãã ã€ãŸã çŸæç¹ã§ã¯ããã§ã«æ€çŽ¢é åãåå²ããåå²ããŠãããOSã§æ¢ã«æ€çŽ¢ããŠããŸãã
䟿å©ãªperf topãŠãŒãã£ãªãã£ããããŸããããã¯ã«ãŒãã«ãã¬ãŒãµãŒã§ãããã·ã¹ãã å ã®ãã¹ãŠã®ããã»ã¹ãç¹å®ã®ããã»ããµãç¹å®ã®ããã»ã¹ããã®call_traceã衚瀺ã§ããŸãã ããã§ã¯ãã»ãšãã©ã®æéãnf_conntrackã§è²»ããããŠããããšãããããŸãã äžè¬çã«ãããã¯ããŸãæ確ã§ã¯ãããŸããã æåŸã®2è¡ãnginxã§ããããšãããããŸãã nginxã¯ãã¯ãããã«ããã¯ã§ã¯ãªãããšãããã£ãŠãããããã¢ããªã±ãŒã·ã§ã³ã³ãŒãã«ã¯äœããã®çš®é¡ãããããšãç解ããŠããŸãã ç§ãã¡ãæ¢ããŠããã®ã¯ãOSã®å éšãæ¢ããŠããããšã§ããæåã®3ã€ã®åŒã³åºãã«èå³ããããŸãã
æåã® nf_ct_tuple_equalãäœã§ããããèŠã€ããã«ã¯ãã«ãŒãã«ãœãŒã¹ãæå ã«çœ®ããŠãããšäŸ¿å©ã§ãã ç§ã¯èª°ãããããç解ããå¿ èŠããããšããäºå®ã«ã€ããŠã¯è©±ããŠããŸããããã«ãŒãã«å ã§grepãå®è¡ããã ãã§ã-ç§ãããããš-ããªãã¯éåžžã«ç°¡åã«ç解ããããšãã§ããŸãããŸãã¯ãperfã«è¡šç€ºãããåŒã³åºããGoogleã«å ¥åããããšãã§ããŸãã æåã¯ãããã«ãããããããŸããããã©ã®ãããªãµãã·ã¹ãã ã§ããããããã«èŠã€ããããšãã§ããŸãã ãã®ã·ã¹ãã ã³ãŒã«ãäœãããã®ãããã®ã«ãŒãã«é¢æ°ãæ£ç¢ºã«ç¥ãå¿ èŠã¯ãããŸãããã«ãŒãã«ã®é床ãäœäžãããµãã·ã¹ãã ã®çš®é¡ãç解ããã ãã§ãã
grepãå®è¡ããã ãã§ãã ãã£ã¬ã¯ããªå ã§äžè¬çãªååž°grepãäœæããKconfigãååšããå ŽæãèŠã€ããããã«äººéã®èª¬æããããŸã-ã«ãŒãã«æ§æã§åŸããããã®ããã®ãµãã·ã¹ãã ãè¡ãããšã 次ã«Googleã«ã¢ã¯ã»ã¹ããconntrackãšã¯äœããèŠãŠãconntrackãã·ã¹ãã ã®é床ãäœäžãããŠããå€ãã®ã¡ãã»ãŒãžã確èªããŸãããããã¯ãç¹ã«htpãµãŒããŒã®å Žåãçä¿¡ãã©ãã£ãã¯ã«ã¯æå³ããããŸããã
ãã¹ãŠããã¹ãŠã®ããŒã¿ããã¹ãŠã®ããŒã¿ãäžèŽããããšã確èªããããã«ãconntrackãæŸç§ããŠããæ¥ç¶ã®æ°ãåºåããŸããããã«ã¯ã確ç«ãããæ¥ç¶ã®æ°ãšã»ãŒåãæ°ã衚瀺ãããŸãã Linuxã®Connectrackã¯ãæ¥ç¶ãç£èŠãããã¡ã€ã¢ãŠã©ãŒã«ãµãã·ã¹ãã ã§ãã FTPã®é®®æãªäŸã§ã¯ãæ¥ç¶ã1ã€ããå Žåã«ããŒããäžãããããã¡ã€ã¢ãŠã©ãŒã«ã¯æåãš2çªç®ã®äž¡æ¹ã®æ¥ç¶ãååŸããŠæ¥ç¶ããå¿ èŠããããŸãã ãããŠããã®ãµãã·ã¹ãã ã«ã¯ããã¹ãŠã®æ¥ç¶ãšäžèŽãå§ããããªãé ãæ©èœããããã¢ã€ãã«ç¶æ ã§åäœããã ãã§ãäœãããªãããããªãã«ããããšãã§ããŸãã
æåã®ããã«ããã¯ãèŠã€ããŸããã次ãèŠãŠã¿ãŸãããã
Intel_idle æ£çŽãªãšãããIntelã«ãŒãããã ãšæã£ãã®ã¯åããŠã§ãã ç¹°ãè¿ããŸãããã«ãŒãã«å ã§grepãå®è¡ããŸãã Kconfigã§ã¯ãåžžã«ãªã³ã«ãªã£ãŠããããããã§ã«äœããããŸããããInteléçºè ã¯ãœãŒã¹å ã§é©åãªã³ã¡ã³ããäœæããããã«æ³šæããŠãããããã»ããµãç¡é§ã«ãªãæéã¯ã¹ã¬ããå ã§è²»ãããŠããŸãã ãã®ã¹ã¬ããã¯åªããŠããŸããã€ãŸããããã»ããµããã°ããã¢ã€ãã«ç¶æ ã§ãããç§ãã¡ã¯ããã§äœãããŠããŸããã
次ã®ãã€ã³ãã å床grepãå®è¡ããã/ block / cfq-ioã¹ã±ãžã¥ãŒã©ãŒãããããšã確èªããI / Oã¹ã±ãžã¥ãŒã©ãŒãåŠçããŠããããšãç解ããŠããŸãã ã ããããããããnginxã¯äœããå ¥å/åºåããŠããŸãã åæã«ããããã¯IO-ããã¯ããããã¯ãŒã¯éšåã§ã¯ãªããã¡ã€ã«ã·ã¹ãã ãããããšãæå³ããŸãã ãããã¯ãŒã¯éšåã¯ãããã«ãããŸãã
ãããçºçããå ŽåãI / Oçµ±èšã確èªãããã®ã§ãiostatããããæ¯æŽããŸãã 倧éã®èšé²ãããããã£ã¹ã¯ãäœããã®åœ¢ã§15ã20ïŒ äœ¿çšãããŠããããšãããããŸãã ããã»ã©å€ãã¯ãããŸããããæéãç¡é§ã«ãªããŸãã
ããã«ãperf topãèŠããšãå®éã«OSãI / Oã§è¡ã£ãŠããããšãããããŸããã ããã¯ãnginxããããè¡ãããšãæå³ãããã®ã§ã¯ãªããäœããåºåããkswapdã§ããå¯èœæ§ããããcronã«äžãã£ãŠäœããã®ããŒã¿ããŒã¹æŽæ°ãéå§ããUpdatedbããŒã¢ã³ã§ããå¯èœæ§ããããŸããæŽæ°ãªã© è¯ãæå³ã§ãã·ã¹ãã ã®I / Oã«è² è·ãããã£ãŠããããšãããã£ãå Žåã誰ããããè¡ã£ãŠããããèŠãã®ã¯ãŸã è¯ãããšã§ãã
ãããŠãiotopããããŸã-éåžžã®top'aã®é¡äŒŒç©ã§ãããå ¥åºåçšã§ãã ãã®ãããªå ¥åºåãçæãããŠãŒã¶ãŒã瀺ããŠããŸãã nginxã衚瀺ãããŸãã
次ã«è¡ãããšã¯ãnginxãI / Oã§è¡ãããšã確èªããããšã§ãã OSãšã¢ããªã±ãŒã·ã§ã³ããã»ã¹ã®éã®ã€ã³ã¿ãŒãã§ã€ã¹ã«ããstraceã¢ããªã±ãŒã·ã§ã³ãŠãŒãã£ãªãã£ããããŸãã ãã¹ãŠã®ã·ã¹ãã ã³ãŒã«ã«ããã¯ãåºåããŸãã æžã蟌ã¿ãšæžã蟌ã¿ãèšå®ããå¿ èŠããããšèããŸããã ãããšäœãããŠããŸããã§ããã å®éãå€ãã®ã·ã¹ãã ã³ãŒã«ã¯ãããŸããã ããã§ããã¯æ£ããã£ã-ã-e writeãwrite wããšãããããããã ãã§ãã ã€ãŸã ãã¡ã€ã«I / Oã®é床ãäœäžããŠããããšãããã£ãŠããå Žåã¯ãããªãå°ãªãæ°ã®ã·ã¹ãã ã³ãŒã«ã«é¢å¿ããããŸãã
2çªç®ã®ãªãã·ã§ã³ã ããã§ç§ã¯å¹žéã«ãªã£ããç§ã¯æ確ãªçµè«ãæã£ãŠããã æ¬åœã«ããããã®write'ovããããŸããã å®éã«ã¯ãéåžžã«æªãç¶æ³ã«é¥ãå¯èœæ§ããããŸããã·ã¹ãã ã³ãŒã«ã®ããããããªãã®ãèŠãã ãã§ããšããŒã«ãçºçãããœã±ããããäœããã®èªã¿åããè¡ãããæžã蟌ã¿ãçºçããããšããããäžè¬ã«ããããäœã§ããããç解ããã®ã¯å°é£ã§ãã
straceãå®è¡ããããšãã§ããŸãã straceããã¡ã€ã«ã«å ¥ããŠãããã·ã¹ãã ã³ãŒã«ã®çµ±èšãäœæããã¹ã¯ãªããã§ãã®ãã¡ã€ã«ãåŠçããŸãã Topã«ããã·ã¹ãã ã³ãŒã«ãç解ããŠãããããã·ã¹ãã ã³ãŒã«ã®Topã§ã¬ã³ãŒãã®ã·ã¹ãã ã³ãŒã«ãæ¢ããŠããŸããããã¯æžã蟌ã¿ã«ãªããŸãã æžã蟌ã¿ã«ãã£ãŠãæžã蟌ã¿ã®æåã®åŒæ°ãšããŠãã¡ã€ã«èšè¿°å8ãããããšãããããŸãã
lsofã䜿çšããã®ã¯æ£ããããšã§ããã䜿çšæ¹æ³ã¯ãŸã åŠç¿ããŠããŸãããdocfsã䜿çšããŠããŸãã fdãã£ã¬ã¯ããªã«ç§»åãã8çªç®ã®èšè¿°åã®å 容ã確èªããŸãã ãã®access.logã¯é©ãããšã§ã¯ãããŸããã
æåŸã®ã·ããªãªã¯ãããããæ²é»ããŠããå Žåãè¯ãæ°å€ã瀺ããŠããå Žåãäžè¬çã«ã¯ã·ã¹ãã å ã®ãã¹ãŠãæ£åžžã§ãããããããè¯ããªãããšãç¥ã£ãŠããŸãã
ãã®ãããªäŸã ç§ã¯ã¡ããã©ãã³ãããŒã¯ãåããŸãã-ããã¯ããã¥ãŒããã¯ã¹ã§åæãã¥ãŒãããŒããããã³ãããŒã¯ã§ãããTopã®èšãããšãèŠãŸããã Topã«ãããšãã¢ã€ãã«ç¶æ ã¯éåžžã«å€§ãããCPUããšã®çµ±èšæ å ±ã衚瀺ããªãå Žåãããã»ããµäœ¿çšçã¯çŽ130ïŒ ã«ãªããŸããã400ã«ãªãã¯ãã§ãã çµ±èšã¯ãã¹ãŠè¯å¥œã§ããããšãããããŸããããã®ã€ããªãã®ãŒã«ããããã³ãããŒã¯ã¯ãã¹ãŠã®ãªãœãŒã¹ãå®å šã«å©çšãã¹ãã§ãããããã§ã¯ãããŸããã
äœãèµ·ãããèŠãŠã¿ãŸãããã
ããã§åã³straceãå®è¡ããŸãããæ¢ã«-pãš-cã䜿çšããŠåŒã³åºããŠããŸãã -sã䜿çšãããšãã·ã¹ãã ã³ãŒã«ã«é¢ããçµ±èšãåéã§ããŸãã
ãªãnginxã«å¯ŸããŠãããè¡ããªãã£ãã®ããäœããã®ã¹ã¯ãªããã䜿çšããŠstraceããã®åºåã解æããå¿ èŠããããšèšã£ãã®ã¯ãªãã§ããïŒ äºå®ãstraceã¯å®è¡ããããã°ã©ã ã®æåŸã«ãããã®çµ±èšãçæãããã¬ãŒã¹ããŸããnginxãå®è¡ããŠããŠããããäžæããããªãå Žåã¯ããããã®çµ±èšãååŸããªããããçµ±èšãèªåã§åéããå¿ èŠããããŸãã
ããã§ãstraceã¯ããã¬ãŒã¹ãããåŒã³åºãã·ã¹ãã ã³ãŒã«ããããã®ã·ã¹ãã ã³ãŒã«å ã®æéã瀺ããŠãããfutexãããããšãããããŸãã man futexãšå ¥åãããšãããããŠãŒã¶ãŒç©ºéã®åæã«äœ¿çšãããOCã¡ã«ããºã ã§ãããããããmutexã§ããããšãããããŸãã ãããŠãpathReadããã¯ãæ¡ä»¶å€æ°ã¯ãã®åäžã®futexåŒã³åºãã®ã¿ã䜿çšããŸã-ããã¯ãpathReadåæã«åé¡ãããããšãæå³ããŸãã
äžè¬çã«ãI / Oãè¯å¥œã§ãããã»ããµã¯è¯å¥œã§ããã¹ãŠãæ£åžžã§ãã¡ã¢ãªã¯è¯å¥œã§ãããããªç»åã衚瀺ãããŠããRPSã®æ°ã«éããŠããªããããååãšããŠããã¯ç«¶åããã®æ°åã¯ããã130ïŒ ã§ã-ã©ã³ãã ã§ã¯ãããŸããã ã€ãŸã ããã¯ã®ç«¶åäžã«ã1ã€ã®ããã¯ãæ±ããŠ4ã€ã®ããã»ããµã䜿çšããŠããå ŽåãäžåºŠã«1ã€ã®ããã»ããµãã䜿çšã§ããŸããã ã€ãŸããå®éã«ã¯ã4ã€ã®ããã»ããµã®ãããããååŸããŸãã ãããŠããã©ã³ããŒã®è¿œå è²»çšãš100ïŒ ãå°ãè¶ ãããã®ãç ç²ã«ããŠã®ã¿ã30ïŒ ãè¿œå ããŸãããããã¯ç«¶åã®æ§è³ªã§ãã
é£çµ¡å
» Ak@natsys-lab.com
ãAbrander onHabrÃ©ïŒ ã¯ãªã¶ããã¹ããŒ
» NatSys Labããã°
ãã®ã¬ããŒãã¯ãè² è·ã®é«ãã·ã¹ãã HighLoad ++ Juniorã®éçºè ã®ãã¬ãŒãã³ã°äŒè°ã§è¡ãããæé«ã®ãã¬ãŒã³ããŒã·ã§ã³ã®1ã€ã§ãã
ãŸãããããã®è³æã®äžéšã¯ãé«è² è·ã·ã¹ãã HighLoadã®éçºã«é¢ãããªã³ã©ã€ã³ãã¬ãŒãã³ã°ã³ãŒã¹ã§äœ¿çšãããŸãã¬ã€ãã¯ãç¹å¥ã«éžæãããæåãèšäºãè³æããããªã®ãã§ãŒã³ã§ãã ç§ãã¡ã®æç§æžã«ã¯ãã§ã«30以äžã®ãŠããŒã¯ãªè³æããããŸãã æ¥ç¶ããŠãã ããïŒ
ããŠãäž»ãªãã¥ãŒã¹ã¯ã HighLoad ++ Juniorãå«ã8ã€ã®äŒè°ãå«ãæ¥ç¥ãã Russian Internet Technologies ãã®æºåãéå§ããããšã§ãã ã¢ã¬ã¯ãµã³ãã©ã¯ééããªãåã³ã¹ããŒã«ãŒãåŒã³åºããŸã