
TheC10kProblem - ãC10Kåé¡ãï¼ã¯ã©ã¤ã¢ã³ã1ä¸å°åé¡ï¼ã¨ã¯ããã¼ãã¦ã§ã¢ã®æ§è½ä¸ã¯åé¡ããªãã¦ãããã¾ãã«ãã¯ã©ã¤ã¢ã³ãã®æ°ãå¤ããªãã¨ãµã¼ãããã³ã¯ããåé¡ã®ã㨠ç®æ¬¡ ãã®ææ¸ã«ã¤ã㦠C10K åé¡ é¢é£ãµã¤ã ã¾ãèªãã¹ãæ¬ I/O ãã¬ã¼ã ã¯ã¼ã¯ I/O æ¦ç¥ 1. åã¹ã¬ãããè¤æ°ã®ã¯ã©ã¤ã¢ã³ããåãä»ãã. ããã¦ãã³ããããã³ã° I/O 㨠ã¬ãã«ã»ããªã¬åã®å®äºéç¥ãå©ç¨ãã. ä¼çµ±ç㪠select() ä¼çµ±ç㪠poll() /dev/poll kqueue() 2. åã¹ã¬ãããè¤æ°ã®ã¯ã©ã¤ã¢ã³ããåãä»ãã. ããã¦ãã³ããããã³ã° I/O 㨠å¤æ´åã®å®äºéç¥(readiness change notification)ãå©ç¨ãã. kqueue() epoll ãªã¢ã«ã¿ã¤ã ã»ã·ã°ãã« fd åä½ã®ã·ã°ãã« (Signal-per-fd)
ãã¨ã§æ¸ããã¨è¨ã£ãæåãªã®ã§æ¸ãã¨ãã¾ãã DSASã®ä¸ã®äººããããå¢ã㧠LVS ã®è©±ãæ¸ãã¦ããã¦ã¾ãããã®è¾ºãLVS ã使ã㨠Linux ã¨ç®±ã§ãã¼ããã©ã³ãµãä½ãã¡ããã¾ããæ®éã«è²·ã£ããæ°ç¾ä¸ã¨ããã¡ãããã¤ã DSAS ã®ä¸ã®ã²ã¨ã«æè¬ãã¤ã¤ãããæ©ä¼ãªã®ã§ãã£ã¦ã¿ãã! ã¨æã£ã¦ãããã試ãã¦æ¨æ¥ãããããã¯ã¦ãªã®ä¸ã§ã LVS + keepalived ã§åããã¯ããã¦ã¾ãããã¾ã®ã¨ããåé¡ãªãã ãã®ãã¼ããã©ã³ãµãã©ãã«ä½¿ã£ã¦ããã§ãããæ®éãã¼ããã©ã³ãµã¨ããã¨ã¤ã³ã¿ã¼ãããããã®å ¥ãå£ã®ã¨ããã«ç½®ãã¦ã¦ã§ããµã¼ãã¼ã®è² è·åæ£ã«ä½¿ãã¤ã¡ã¼ã¸ãããã¾ããããä»åã¯ã¯ã¦ãªã§ã¯ MySQL ã®ã¹ã¬ã¼ãã®æåã«ç½®ãã¨ããå½¹å²ã§ã¨ãããã使ãã¯ããã¾ããã +-----------+ +-----------+ | mod_perl | | mod_perl | +----
ãã¼ããªDNSã©ã¦ã³ãããã³ã¯é«ä¾¡ãªãã¼ããã©ã³ãµã®åº§ã奪ãè¿ããã ã¤ã£ãã¿ã©ãããæºè¼ã¹ã®ãªã®ã¯èã«ããã¦ããã¦ãéããããªããªããDNSã©ã¦ã³ãããã³ãããªãã¦ãããã¦ã件ã®è¨äºã§ãç´¹ä»ããã¦ãã Apache 2.2ã®mod_proxy_balancer ããApache 2.2ãããªãã¦ã使ããreverse proxyç³»ã®å®è£ ãã¡ã POUND mod_backhand Perlbal ã使ãã¹ãã§ãããã ãã§ããL7ãã¼ããã©ã³ãµï¼è¦ã¯reverse proxyï¼ãªãã¦ãããã£ããã»ãã·ã§ã³ï¼ ããªã®memcachedã§ã·ã§ã¢ãããããããããããã®æ¹ãã¹ã±ã¼ã«ã¢ã¦ããããããã¼ãã¨ããåãã«ã¯ãLinuxã§L4ã®ãã¼ããã©ã³ãµããã®ããªã¹ã¹ã¡ã§ãã¾ããã¾ã¨ããªL4ãã¼ããã©ã³ãµãæã«å ¥ãã®ã«ãééçã³ã¹ãã¯ã¼ãã§ãã£ã¦ãããªã¯ãµã³ï¼ Linux Virtual Serve
ååã¯Windowsã§ã®ãµã¼ããPCã®ããã«ããã¯ç®æã®ç°¡åãªè¦åãæ¹ããç´¹ä»ããã¦ããã ãã¾ããããè¦æãããã¾ããã®ã§ä»åã¯Linuxã®å ´åããç´¹ä»ãããã¾ãã 4ã¤ã®ä¸»è¦ããã«ããã¯è¦ç´ ã®å¾©ç¿ã§ãã ãµã¼ããPCã«ã¯4ã¤ã®ä¸»è¦ããã«ããã¯è¦ç´ ãããã¾ãããã®ãããããããã«ããã¯ã¨ãªã£ãå ´åã·ã¹ãã å ¨ä½ã®ã¬ã¹ãã³ã¹ãä½ä¸ãã¾ãã CPU使ç¨ç ã¡ã¢ãªä½¿ç¨é ãã£ã¹ã¯I/O TCPã³ãã¯ã·ã§ã³æ° Linuxã«ããã¦ã¯ããã«ããã¯ç®æã以ä¸ã®ããã«è¦åãããã¨ãã§ãã¾ãã 1. CPU使ç¨ç CPU使ç¨çã常ã«100%ã«è¿ãå ´åã¯CPUãããã«ããã¯ã§ãããã¨ãå¤æãã¾ããCPU使ç¨ç¶æ³ãç°¡åã«èª¿ã¹ãã«ã¯3ã¤ã®æ¹æ³ãããã¾ãããtopããwããvmstatãã³ãã³ãã使ãæ¹æ³ã§ãã -----------------------------------------------------
ãç¥ãã
ã©ã³ãã³ã°
ã©ã³ãã³ã°
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}