ãããã¯ãŒã¯ã«ã¯ãåæ§ã®ã¢ãããŒãã«é¢ããèŠåãšæ³šææžãããããããããŸãã ããŒã¿ã®æ倱ãã¡ã¢ãªäžè¶³ããŸãã¯Redisã§ããŒã¿ãå¹ççã«ç®¡çã§ããªã人ã ã«ã€ããŠã®æããã話ããããŸãããããªãã¯äœãèããŠããŸããïŒã ãããã£ãŠãç§ãã¡ã®è©±ã¯ããªãRedisã䜿çšããããšã«æ±ºããã®ãããããŠããããã¹ãŠã®åé¡ãã©ã®ããã«å æããã®ããšããããšã§ãã
ãŸã第äžã«ãã»ãšãã©ã®ã¢ããªã±ãŒã·ã§ã³ã¯ãã®æ¹æ³ã§äœ¿çšããããã«äœ¿çšãããæŸèæã«æ³šæãæãå¿ èŠããªãããšã匷調ããããšæããŸãã ããã¯ãŠãŒã¹ã±ãŒã¹ã«ãšã£ãŠéèŠã§ããããå¢çã±ãŒã¹ã«ãªãããšããããŸãã
ããŒã¿ãŠã§ã¢ããŠã¹ãšããŠã®Redis
Redisã¯é«éã§ãã é«éãšã¯ã倧æåBã®é«éãæå³ããŸããããã¯åºæ¬çã«ãåãªãæååå€ãããè€éãªããŒã¿åã§memcachedãããŸãã ã»ããã®äº€å·®ãzsetç¯å²ã®éžæãªã©ã®äžéšã®é«åºŠãªæäœã§ããé©ãã»ã©é«éã§ãã ã¢ã¯ãã£ãã«ãªã¯ãšã¹ããããããŒã¿ãæ¥éã«å€æŽããããã«Redisã䜿çšããçç±ã¯ãã¹ãŠãããŸãã å€ãã®å Žåããã£ãã·ã¥ãšããŠäœ¿çšãããããã¯ã¢ããããŒã¿ããŒã¹ã®ããŒã¿ã«åŸã£ãŠåæ§ç¯ã§ããŸãã ããã¯åŒ·åãªmemcachedã®ä»£æ¿åã§ãããä¿åããããŸããŸãªã¿ã€ãã®ããŒã¿ã«å¯ŸããŠããé«åºŠãªãã£ãã·ã¥ãæäŸããŸãã
memcachedãšåæ§ã«ããã¹ãŠãã¡ã¢ãªå ã«ãããŸãã Redisã¯ãã£ã¹ã¯ã«ä¿åãããŸãããæžã蟌ã¿æ¹æ³ãšåæããŠããŒã¿ãä¿åããããšã¯ãããŸããã ã¡ã€ã³ãªããžããªãšããŠã®Redisãæªãçç±ã¯2ã€ãããŸãã
-ãã¹ãŠã®ããŒã¿ãã¡ã¢ãªã«åããå¿ èŠãããã...
-ãµãŒããŒããã£ã¹ã¯ãšã®2ã€ã®åæã®éã«å€±æãããšãã¡ã¢ãªå ã«ãã£ããã¹ãŠã®ãã®ã倱ãããŸãã
ããã2ã€ã®åé¡ã«ãããRedisã¯ãã¡ã€ã³ããŒã¿ãŠã§ã¢ããŠã¹ã§ã¯ãªããç ç²ã«ã§ããããŒã¿ã®äžæãã£ãã·ã¥ãšããŠã³ã³ãã¯ããªãããã«åãŸããŸããã é »ç¹ã«å¿ èŠãªããŒã¿ãžã®è¿ éãªã¢ã¯ã»ã¹ãæäŸããå¿ èŠã«å¿ããŠåæ§ç¯ããæ©èœã
Redisã®èåŸã«ããåŸæ¥ã®ãªããžããªã䜿çšããããšã®ãã€ãã¹é¢ã¯ãããã©ãŒãã³ã¹ã®ããã«ããã¯ã§ãã ããŒã¿ããã£ã¹ã¯ã«ä¿åããã«ã¯ãããã©ãŒãã³ã¹ãç ç²ã«ããå¿ èŠããããŸãã ã»ãšãã©ãã¹ãŠã®ã¢ããªã±ãŒã·ã§ã³ã§å®å šã«éåžžã®ããŒã²ã³ã åªããèªã¿åãããã©ãŒãã³ã¹ãšãåªãããæžã蟌ã¿ããã©ãŒãã³ã¹ãåŸãããšãã§ããŸãã ç§ã«ãšã£ãŠãè¯ããããšã¯ãã»ãšãã©ã®äººã«ãšã£ãŠéåžžã«éãå¯èœæ§ãé«ãããšãæ確ã«ããªããã°ãªããŸããã æãè² è·ã®é«ãã¢ããªã±ãŒã·ã§ã³ãé€ããŠããè¯å¥œãªãèšé²ããã©ãŒãã³ã¹ã¯éåæ°ã2åã«ãããšèšãã ãã§ååã§ãã
Redisãžã®æžã蟌ã¿èŠæ±ãå®è¡ãããªã¬ãŒã·ã§ãã«ã¹ãã¬ãŒãžã䜿çšããŠä¿åã§ãããšèããŠããŸãããRedisãã¯ã©ãã·ã¥ããããæžã蟌ã¿ãã¥ãŒã®ããŒã¿ã倱ãããããããšããåããªã¹ã¯ãæ®ããŸãã
äœãå¿ èŠã§ããïŒ
Mootã¯å®å šã«ç¡æã®è£œåãšããŠæäŸãããŸãã ãããã£ãŠãéåžžã«å°éã®éã§å€§ããªè² è·ãåŠçã§ããå¿ èŠããããŸãã 1ãæã«æ°çŸäžäººã®ãŠãŒã¶ãŒã«ãµãŒãã¹ãæäŸãããã©ãŒã©ã ã«å€æ°ã®å€§èŠæš¡ãªããŒã¿ããŒã¹ãå¿ èŠãªå Žåãç¡æã®ãµãŒãã¹ãç¶ç¶ããæ¹æ³ã¯ãããŸããã Mootãç¡æã§ç¡å¶éã«ãããã®ã§ãéçãŸã§æé©åããå¿ èŠããããŸããã
ç¡æãµãŒãã¹ã«ããã€ãã®å¶éãèšå®ããããŒãžãæçš¿ã®é²èŠ§ã«ãéããããããšã§ããããé¿ããããšãã§ããŸãã ç§ã¯ããªãã®ããšã¯ç¥ããŸããããäžè¬çã«ããããªãããããæã«å ¥ãããŸã§ãç¡æã®è£œåã¯å¥œãã§ã¯ãããŸããã ãã©ãŒã©ã ãèšå®ãããšããµã€ãäžã®äœãããã€ã©ã«ã«ãªããŸãã çªç¶ãç¡æã¬ãã«ãè¶ ããè«æ±æžã«é©ãããããšã§ãããã ãããŠãé°è¬è«ã«ã€ããŠã®ããªãã®ããã°ã®çªç¶ã®äººæ°ã®ããã«ã嚯楜ãšããŠå§ãŸã£ããã®ã¯ãæ³æ¡ã®ææã«å€ãããŸãã ããªãã¯ããªãã®æåã«å¯ŸããŠçœ°ããããŠããŸãã ããã¯é¿ããããã®ã§ãã
ãŸããåºåãæ²èŒããŠåçãäžããããšãã§ããéçšã³ã¹ããé«ãããããšãã§ããŸãã ããããããã¯ããžãã¹ãšããŠã®äžæ žçãªäŸ¡å€èŠ³ãšã¯å®å šã«å¯Ÿç«ããŠããŸãã ç§ãã¡ã®æèŠã§ã¯ã誰ããããªãã®ãµã€ãã«åºåãåºãå Žåãããã¯ããªãã§ã¯ãªãç§ãã¡ã§ããå¿ èŠããããŸãã Mootã¯ãæ¡ä»¶ãå¶éãè¿œå ãªãã§æäŸããå¿ èŠããããŸãã
äžèšã®ãã¹ãŠãèæ ®ãããšããšã³ãžãã¢ãªã³ã°ã®é£ããã«é¢ä¿ãªããæçš¿ãšèªã¿åãã®åè¶ããããã©ãŒãã³ã¹ãéæããå¿ èŠããããŸãã ãããç§ãã¡ã®ä»äºã®åºç€ã§ãã é«ãè² è·ãããã£ãŠããŠãã倧ããªè€éãªãªã¹ããæ€çŽ¢ãåŠçãããå Žåã§ãããã¹ãŠã®APIåŒã³åºãã10ããªç§æªæºã§åŠçãããšããåœåã®ç®æšããããŸããã æããã«ãRedisã¯ãã®ãããªããã©ãŒãã³ã¹ãæäŸã§ããŸããã2ã€ã®å€§ããªåé¡ã¯è§£æ¶ãããŠããŸããã
ä»äœãããïŒ
ãããã£ãŠããããã®å¶éãèæ ®ããŠãèšèšæ¹æ³ã®ç 究ãéå§ããŸããã åœåãããMootã®ã¿ã¹ã¯ãšäŒæ¥ãšããŠã®ç§ãã¡ã®äŸ¡å€ãã©ã®ãããªãã®ã«ãªãããæ£ç¢ºã«ç解ããŠãããããã³ãŒãã®æåã®è¡ãæžãåã«ãããã®æ©èœã«ã€ããŠèããããšãã§ããã®ã¯å¹žéã§ããã å€ãã®æ¢æã®ã³ãŒãã䜿çšããŠãã®ã«ãŒãã«é²ãããšã«ããå Žåããããã®åé¡ã¯éåžžã«è€éã«ãªããšæããŸãã
ã¡ã¢ãªå ã®ãã¹ãŠã®ããŒã¿ã ãããŒ
ããã¯ã2ã€ã®åé¡ã®äžã§æãé£ãããã®ã§ãã ãã¡ããã1å°ã®ã³ã³ãã¥ãŒã¿ãŒã«æèŒã§ããã¡ã¢ãªã®éã EC2ã®æ倧æ°ã¯244ã®ã¬ãã€ãã®ãµãŒããŒã§ãã ããã¯ãŸã æçµçãªããªã¥ãŒã ã§ãããããã¯æåããããªãè¯ãå¶éã§ãã æ®å¿µãªãããããã«ããã16ã³ã¢ãµãŒããŒã¯Redisã«å¯ŸããŠ1ã€ã®ã³ã¢ã®ã¿ã䜿çšããŸãã ããŠãRedisã®äžäœããã»ã¹ãåã³ã¢ã«è¿œå ããã®ã¯ã©ãã§ããïŒ ãã®åŸãåã€ã³ã¹ã¿ã³ã¹ã«15 GBã®ã¡ã¢ãªãæ®ããŸãã åã³ã§ãããïŒ ããã¯ããµãŒããŒã®é»æºãçµãããšãã§ããå Žåã®æªãå¶éã§ãã ããã¯ããã¹ãã£ã³ã°ãµãŒãã¹ã«ååãªããŒã¿ã§ã¯ãããŸããã
Redisãªããžããªã¯ãæåããå€ãã®Redisã¯ã©ã¹ã¿ãŒã«åå²ããŠèšèšããããšã«ããŸããã ããŒã¿ãããã·ã¥ãããã®ããŒã¿ã»ã°ã¡ã³ãã«é¢é£ãããã¹ãŠã®æ§é ãå«ããããã¯ã«åå²ããŸãã ããŒã¿ã¯æåãã匷ãåå²ãããŠãããå¿ èŠã«å¿ããŠæ°ãããããã¯ããã°ããç°¡åã«äœæã§ããŸãã
ããŒã¿ãåå²ããããã«ã次ã®ããã«ããã·ã¥ããŒãã«ãšã¢ãã¬ã¹ããŒãã«ãä¿åããŸãã
shards.map = hashïŒ{ ãã·ã£ãŒãããã·ã¥ãïŒ[ã·ã£ãŒãID] } ã·ã£ãŒã[ã·ã£ãŒãID] =ããã·ã¥ïŒ{ masterïŒ[ãã¹ã¿ãŒIP /ããŒã]ã slave0ïŒ[ã¹ã¬ãŒã0 ip /ããŒã]ã slave1ïŒ[ã¹ã¬ãŒã0 ip /ããŒã]ã ... } shards.list = zsetïŒ{ æç1ïŒ[éé]ã shard2ïŒ[éé]ã ... }
ããŒã¿ãå°çããããããŒã¿æ¥ç¶èŠä»¶ã«åºã¥ããŠããã·ã¥ãèšç®ããshards.mapã§ãããã¯ã«å²ãåœãŠãããŠãããã©ããã確èªããŸããå²ãåœãŠãããŠããå Žåã¯ããã®ãããã¯ã«åŒã³åºããéä¿¡ã§ããŸãã
ããã·ã¥ããŸã ãããã¯ã«å²ãåœãŠãããŠããªãå Žåãå©çšå¯èœãªãããã¯ã®ãªã¹ããäœæããŸããéã¿ã«å¿ããŠãããã¯ãä¹ç®ããŸãã ããšãã°ã次ãå®è¡ããå ŽåïŒ
redis.callïŒ 'zadd'ã 'shards.list'ã1ã 'shard1'ïŒ redis.callïŒ 'zadd'ã 'shards.list'ã2ã 'shard2'ïŒ redis.callïŒ 'zadd'ã 'shards.list'ã1ã 'shard3'ïŒ
ãªã¹ãã¯æ¬¡ã®ããã«ãªããŸãã
[shard1ãshard2ãshard2ãshard3]
ãã®åŸããªã¹ãããã©ã³ãã ãããã¯ãå²ãåœãŠãååžãããã«ä¿åããŠç¶è¡ããŸãã
ãã®ãããªã¹ããŒã ãé©çšãããšããããã¯ã«å ¥åããããŒã¿ã®éãç°¡åã«å¶åŸ¡ããããæ°ãããããã¯ãè¿œå ãããããããã¯ããã£ã±ãã«ãªã£ãå Žåã«ãããã¯ãèæ ®ããé€å€ãããã§ããŸãã
å®éãäœçŸãã®ãããã¯ããå§ããã®ã§ããµãŒããŒã®è² è·ãšã¡ã¢ãªã®å¶éã«ã€ããŠå¿é ããå¿ èŠã¯ãããŸããã
åã ã®ãããã¯ã¯éåžžã«å°ãããŸãŸã§ãã 1å°ã®ãµãŒããŒã«ã¯RedisããŒã¿ããŒã¹ã«å€ãã®ãããã¯ãå«ãŸããŠããããããã®ãããã¯ã®ãµã€ãºã倧ãããªã£ãå ŽåãRedisããŒã¿ããŒã¹ãç°¡åã«ç¬ç«ããã€ã³ã¹ã¿ã³ã¹ã«åå²ã§ããŸãã 100åã®ãããã¯ãæã€Redisã€ã³ã¹ã¿ã³ã¹ããããããã€ãã®ãããã¯ã®ãµã€ãºã倧ãããªã£ãŠããããšãããããRedisããããã50ãããã¯ã®2ã€ã®ã€ã³ã¹ã¿ã³ã¹ã«åå²ãããšããŸãã éã¿ã埮調æŽããŠããããã¯éã®ãªã¢ã«ã¿ã€ã åæ£ãç¶æã§ããŸãã
æãé£ããã®ã¯ãããŒã¿ãã»ã°ã¡ã³ãåããæ¹æ³ãæ£ç¢ºã«æ±ºå®ããããšã§ãã ããã¯éåžžã«å ·äœçã§ãããã»ã°ã¡ã³ããŒã·ã§ã³ã®ããŒãžã§ã³ã§ãããããããå¥ã®æçš¿ã®ãããã¯ã§ãã
ãã®ãããªã¹ãã¬ãŒãžæŠç¥ã¯ãæåããã¢ããªã±ãŒã·ã§ã³ã§éçºããå¿ èŠããããŸãã å€ãã®å Žåã人ã ã¯ãã®ããã«èšèšãããŠããªãããŒã¿ãå ±æããããšããŸãããããRedisã䜿çšããããã®ãã£ããã§ãã ã¡ã¢ãªå¶éãåé¡ã«ãªãããšã¯æããã§ãããããå°ãªããšã1è¡ã®ã³ãŒããèšè¿°ããåã§ãã£ãŠããããŒã¿ç®¡çã·ã¹ãã ã®äžæ žã§ãœãªã¥ãŒã·ã§ã³ãèšèšããããšãã§ããŸããã
ãµãŒããŒãã¯ã©ãã·ã¥ãã
éæ¹ããªãã倱æã«å¯ŸåŠããæ¹ãç°¡åã§ããããšãå€æããŸããã Redisã¯ã©ã¹ã¿ãŒã«ã¯3ã€ã®ç°ãªã圹å²ããããŸããã
-ãã¹ã¿ãŒãã»ãŒãã¹ãŠã®é²é³æäœãè¡ãããã
-éšäžãã»ãŒãã¹ãŠã®æž¬å®å€ãçºçããå Žæã
-ããŒã¿ãä¿åããããã«å²ãåœãŠãããããŒããŒã
ãã¹ã¿ãŒãšåŸå±ã¯äžè¬ã«ãRedisã¯ã©ã¹ã¿ãŒå ã®ä»ã®ãã¹ãŠãšåæ§ã«æ©èœããŸãã ããã«ã€ããŠã¯äœãèå³æ·±ãããšã¯ãããŸããã æ°ããããšã¯ãåã¯ã©ã¹ã¿ãŒã«ã«ã¹ããã£ã¢ã³ãšããŠäœ¿çšããã2ã€ã®ãµãŒããŒãããããšã§ãã ãããã®ãµãŒããŒïŒ
-åçŽãªã¬ããªã±ãŒã·ã§ã³ãé€ããŠãçä¿¡æ¥ç¶ãåãå ¥ãããRedisãªã¯ãšã¹ãã®è² è·ãäžåè¡ããŸãã
-2çªç®ã®ã¢ãŒãã§ã®AOFã®ä¿å
-RDBã®1æéããšã®ã¹ãããã·ã§ãã
-S3ã§AOFãšRDBãåæãã
ã¹ãã¬ãŒãžã®ããã©ãŒãã³ã¹ãã©ã¡ãŒã¿ã¯ãããã«ç°ãªãå Žåãããããã1人ã®ãµãŒããŒã¬ãŒãã£ã¢ã³ãç°ãªãæ°ã®ãããã¯ãåŠçã§ããŸãã ä¿åããå¿ èŠããããããã¯ããšã«1ã€ã®ã€ã³ã¹ã¿ã³ã¹ãå®è¡ããã ãã§ãã ã€ãŸãããããã¯ãšã¬ãŒãããŒã«ãæã€ãµãŒããŒãšã®éã«1察1ã®é¢ä¿ã¯å¿ èŠãããŸããã
ãããã®ãµãŒããŒã®ãã¡2ã€ã¯ç°ãªãã¢ã¯ã»ã·ããªãã£ãŸãŒã³ã«é 眮ãããŠããããããŸãŒã³ã®1ã€ã«é害ãçºçããŠããå®éã«æ©èœãããµãŒããŒããŒããŒãååšããŸãã
ãããã£ãŠãããŒã¿ã倱ãããã«ã¯ãEC2ã§ããªã倧ããªé害ãå¿ èŠã«ãªããŸãããããã§ãããŒã¿ã倱ãããã®ã¯çŽ1ç§ã ãã§ãã
ãããã¯ãŒã¯æ¥ç¶éåã®ã·ããªãªãæ€èšããŠããå Žåããã¹ã¿ãŒãéšäžããåé¢ã§ããå Žåãéšäžã®ã¬ããªã±ãŒã·ã§ã³ããã§ãã¯ããããšã§äžåã§ããŸãïŒä»»æã®ããŒãä»»æã®å€ã«èšå®ããéšäžããã®ããŒã¿ãæŽæ°ããããã©ããããã§ãã¯ããŸãïŒãã¹ã¿ãŒãåé¢ãããå Žåãèšé²ãåæ¢ããŸãïŒäžè²«æ§ãšæµæå¯çšæ§ã«ããæ¥ç¶ã®æ倱ã Redis Sentinelããããæ¯æŽããŠãããŸãããSentinelã¯ã·ã¹ãã ã®ã»ãšãã©ãå®è£ ããåŸã«ãªãªãŒã¹ãããŸããã Sentinelãã©ã®ããã«æ¹çšåŒã«é©åãããã«ã€ããŠã¯èª¿æ»ããŸããã§ããã
æçµçµæ
æçµçã«ãè² è·ãããã£ãç¶æ ã§çŽ2ããªç§ã§APIåŒã³åºããè¡ãã·ã¹ãã ãæ§ç¯ããããšãã§ããŸããã
2ããªç§ã®å€ã¯ãæãéãAPIåŒã³åºãã§ããåæåAPIåŒã³åºããåŠçããå Žåã§ãã
ãªã¯ãšã¹ãã®å€ãã¯ã¯ããã«é«éã«åŠçãããŸãïŒããšãã°ãå€ãã®å Žå0.6ã0.7ããªç§ã§åŠçãããŸãïŒã 1ã€ã®APIãµãŒããŒã§1ç§ããã1000åã®APIãªã¯ãšã¹ããå®è¡ã§ããŸãã ãŸããããŒãžãäœæããã«ã¯ã1åã®APIåŒã³åºããå¿ èŠã§ãã ãã¹ãŠã®ããŒã¿ãã§ãã¯ããããã¯ç®¡çãèªèšŒãã»ãã·ã§ã³ç®¡çãæ¥ç¶ç®¡çãJSONã·ãªã¢ã«åãªã©ãèšæž¬ã«å«ãŸããŠããŸãã
ãã®ãããªè² è·ã§äœæ¥ã§ããAPIãµãŒããŒã¯æé¡ããã90ãã«ã§ãããããéåžžã«äœã³ã¹ãã§éåžžã«å€§ããªè² è·ããµããŒãããã³ã¹ã±ãŒãªã³ã°ã§ããŸãã 倧ããåå²ãããããŒã¿ã®ãã1ã€ã®å©ç¹ã¯ãæ°Žå¹³ã¹ã±ãŒãªã³ã°ãç°¡åãªããšã§ãã
ãã®å€ãã¯ãRedisã®ãããã®ãœãªã¥ãŒã·ã§ã³ã ãã§ã¯ãããŸããã ã·ã¹ãã ãé«ã䞊åè² è·ã®äžã§çç£çã«åäœããããã®ããã€ãã®ããªãã¯ããããŸãã å«ççãªããªãã¯ã®1ã€ã¯ãã³ãŒãã®ã»ãŒååãLuaã§èšè¿°ãããRedisã§çŽæ¥åäœããããšã§ãã ããã¯ãäžè¬çã«ããªããšèšãããŠããå¥ã®ããšã§ãã äœåè¡ãã®Luaã³ãŒããããæ¹æ³ãšçç±ã«ã€ããŠã¯ãRedisã®äœ¿çšã«é¢ãã次ã®æçš¿ããåŸ ã¡ãã ããã
ç§ãã¡ã®å®éã®ããã©ãŒãã³ã¹ãèŠãŠã¿ãŸããããæ°æ¥åã«å§ããŸããã 1ç§ããã50åã®APIã³ãŒã«ãåŠçããã¡ã€ã³APIãµãŒããŒã®ããã»ããµïŒãã¹ãŠã®ãã©ãã£ãã¯ã1ã€ã«éä¿¡ããŸãïŒã¯å®å šã«ã¢ã€ãã«ç¶æ ã§ããã 以äžã¯ãããŒã³ãããæçš¿ã®å·çãŸã§ã®ã°ã©ãã§ãã
è² è·ã®ããŒã¯æã«ã¯ããã¹ãŠãéãã§ãã ä¿®æ£ããã°ã©ã ããªãªãŒã¹ãããšãã«ãããã€ãã®ããŒã¹ããçºçããå ŽåããããŸããããã以å€ã®å Žåã¯é³ãããŸããã ãã®åŸã®çºçã¯ãã·ã¹ãã ã®æŽæ°ãããããããã³ãã®ä»ã®é²è¡äžã®ã·ã¹ãã äœæ¥ã«å¯Ÿå¿ããŸãã ç·è² è·ã«ã¯ãåæããŒã¿ãã¹ãäžã«å®æœãããã®ã³ã°ã®ãªãŒããŒãããã®å¢å ãå«ãŸããŸãã
説æïŒã¢ããªã±ãŒã·ã§ã³ãµãŒããŒãšRedisãµãŒããŒã¯åäžã§ãããããAPIãµãŒããŒã枬å®å¯Ÿè±¡ãšåŒã³ãŸãã APIãµãŒããŒã«ã¯ãã¢ããªã±ãŒã·ã§ã³ã ãã§ãªãããã€ãã®ãããã¯ãå«ãŸããŠããŸãã ãã®èãã¯ãUnixãœã±ããã䜿çšããŠRedisã«æ¥ç¶ããããã«ããã®ãããã¯ãäž»ã«é 眮ãããŠãããµãŒããŒã«ãã©ãã£ãã¯ãã«ãŒãã£ã³ã°ããããšã§ããã ããã«ãããéå°ãªãããã¯ãŒã¯ãã©ãã£ãã¯ãåé¿ããããããã¢ããªã±ãŒã·ã§ã³ãµãŒããŒãRedisãã¹ã¿ãŒãRedisã¹ã¬ãŒãã®éã«ç¹ã«éãã¯ãããŸããã APIãµãŒããŒã¯ãã¹ãŠã®ãªã¯ãšã¹ããåŠçã§ããŸãããé¢é£ããããŒã¿ã»ã°ã¡ã³ãã®ãã¹ã¿ãŒãµãŒããŒã«ã¯ããã«é«ãåªå é äœãäžããã ãã§ãã ãã¹ãŠã®ãµãŒããŒã¯ã¢ããªã±ãŒã·ã§ã³ãµãŒããŒã§ããããã¹ãŠã®ãµãŒããŒã¯äžéšã®ãããã¯ã®ãã¹ã¿ãŒã§ãããä»ã®ãããã¯ã®äžäœã§ãã
tl; dr
ããŒããã©ã€ãã®ã¡ã€ã³ã¹ãã¬ãŒãžãšããŠRedisã䜿çšããªãçç±ã¯æ°å€ããããŸãããäœããã®çç±ã§ãŠãŒã¹ã±ãŒã¹ã§ãããå¿ èŠãªå Žåã¯ãæåããéå§ããå¿ èŠããããŸãã ããŒã¿ãåå¥ã«èšèšããå°çšã¹ãã¬ãŒãžãµãŒããŒã®è¿œå ã³ã¹ããèŠããŠããå¿ èŠããããŸãã
ä¿®æ£
å¥ã®ãµãŒããŒã®ã³ã¹ããèšç®ãããªã¶ãŒããã€ã³ã¹ã¿ã³ã¹ã®ååŽããã1åéãã®ã³ã¹ããè¿œå ããã®ãå¿ããããšãããããŸããã 213ãã«ã§ããå¿ èŠããããŸãã