ãµãŒãã¹å¯çšæ§ã®ç¢ºä¿ãäžæ£å©çšã®é²æ¢ãã°ããŒãã«ãªãŠãŒã¶ãŒåãã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹æé©åã«å¹æçãªAPIã¬ãŒãå¶éæŠç¥ãæ¢ããŸããæ§ã ãªã¹ããããªã³ã°æè¡ããã®é·æãšçæããã¹ããã©ã¯ãã£ã¹ãåŠã³ãŸãããã
APIã¬ãŒãå¶éïŒã°ããŒãã«ã¢ããªã±ãŒã·ã§ã³åãã®ã¹ããããªã³ã°æŠç¥
仿¥ã®çžäºæ¥ç¶ãããäžçã«ãããŠãã¢ããªã±ãŒã·ã§ã³ããã°ã©ãã³ã°ã€ã³ã¿ãŒãã§ãŒã¹ïŒAPIïŒã¯ç¡æ°ã®ã¢ããªã±ãŒã·ã§ã³ã®ããã¯ããŒã³ã§ãããæ§ã ãªãµãŒãã¹ãããã€ã¹éã®éä¿¡ãšããŒã¿äº€æãå¯èœã«ããŠããŸããããããAPIãžã®äŸå床ãé«ãŸãã«ã€ããŠãããããäžæ£å©çšããå®ãããµãŒãã¹ã®å¯çšæ§ã確ä¿ããããã©ãŒãã³ã¹ãæé©åããå¿ èŠæ§ãçããŸããAPIã¬ãŒãå¶éããŸãã¯ã¹ããããªã³ã°ã¯ããããã®ç®æšãéæããããã«äœ¿çšãããéèŠãªæè¡ã§ãããã®å æ¬çãªã¬ã€ãã§ã¯ãAPIã¬ãŒãå¶éã®äžçãæ·±ãæãäžããæ§ã ãªæŠç¥ããã®åœ±é¿ããããŠã°ããŒãã«ãªæèã§ããããå®è£ ããããã®ãã¹ããã©ã¯ãã£ã¹ãæ¢ããŸãã
APIã¬ãŒãå¶éãšã¯ïŒ
APIã¬ãŒãå¶éã¯ãã¯ã©ã€ã¢ã³ããç¹å®ã®æéã«APIã«éä¿¡ã§ãããã©ãã£ãã¯ã®éãå¶åŸ¡ããã¡ã«ããºã ã§ããããã¯ã²ãŒãããŒããŒãšããŠæ©èœããåäžã®ã¯ã©ã€ã¢ã³ããAPIãå§åããããéå°ãªãªãœãŒã¹ãæ¶è²»ãããããµãŒãã¹æåŠïŒDoSïŒæ»æãåŒãèµ·ããããããã®ãé²ããŸããæå®ãããæéæ å ã§èš±å¯ããããªã¯ãšã¹ãã®æ°ãå¶éããããšã§ãã¬ãŒãå¶éã¯ãã¹ãŠã®ãŠãŒã¶ãŒãAPIã«å ¬å¹³ã«ã¢ã¯ã»ã¹ã§ããããã«ãããµãŒãã¹ãå®å®ããŠå¿çæ§ãä¿ã€ããšãä¿èšŒããŸãã
ãªãAPIã¬ãŒãå¶éã¯éèŠãªã®ãïŒ
APIã¬ãŒãå¶éã¯ãããã€ãã®çç±ã§éåžžã«éèŠã§ãïŒ
- äžæ£å©çšã®é²æ¢ïŒã·ã¹ãã ãéè² è·ã«ããããè匱æ§ãæªçšããããšããæªæã®ããæ»æè ããAPIãä¿è·ããŸããããã¯ãæ»æå¯Ÿè±¡é åãå€§å¹ ã«åºãããããã°ããŒãã«ãªãŠãŒã¶ãŒã«å ¬éãããŠããAPIã«ãšã£ãŠç¹ã«éèŠã§ãã
- ãµãŒãã¹å¯çšæ§ã®ç¢ºä¿ïŒåäžã®ãŠãŒã¶ãŒãã¢ããªã±ãŒã·ã§ã³ããªãœãŒã¹ãç¬å ããã®ãé²ãããã¹ãŠã®æ£åœãªãŠãŒã¶ãŒãAPIãå©çšã§ããããã«ããŸãã
- ããã©ãŒãã³ã¹ã®æé©åïŒãµãŒããŒãããŒã¿ããŒã¹ãžã®è² è·ã軜æžããå¿çæéã®æ¹åãšå šäœçãªããã©ãŒãã³ã¹ã®åäžã«ã€ãªãããŸããããã¯ããããã¯ãŒã¯é å»¶ã倧ããªèŠå ãšãªãåŸãå°ççã«åæ£ããã¢ããªã±ãŒã·ã§ã³ã«ãšã£ãŠç¹ã«éèŠã§ãã
- ã³ã¹ã管çïŒåã¯ã©ã€ã¢ã³ããæ¶è²»ãããªãœãŒã¹ãå¶éããç¹ã«åŸé課éå¶ã®APIãã¯ã©ãŠããµãŒãã¹ãæ±ãå Žåã«ã€ã³ãã©ã³ã¹ãã®ç®¡çã«åœ¹ç«ã¡ãŸãã
- å ¬å¹³æ§ïŒãã¹ãŠã®ãŠãŒã¶ãŒãAPIã«ã¢ã¯ã»ã¹ããå ¬å¹³ãªæ©äŒãæã€ããšãä¿èšŒããå°æ°ã®ãŠãŒã¶ãŒããªãœãŒã¹ãç¬å ããã®ãé²ããŸãã
äžè¬çãªAPIã¬ãŒãå¶éæŠç¥
ããã€ãã®ã¬ãŒãå¶éæŠç¥ããããããããã«é·æãšçæããããŸããé©åãªæŠç¥ã®éžæã¯ãAPIã®ç¹å®ã®èŠä»¶ãšäºæ³ããããã©ãã£ãã¯ãã¿ãŒã³ã«äŸåããŸãã以äžã¯ãæãäžè¬çã«äœ¿çšãããæŠç¥ã®äžéšã§ãïŒ
1. åºå®ãŠã£ã³ããŠïŒãŸãã¯ã«ãŠã³ãããŒã¹ïŒ
åºå®ãŠã£ã³ããŠæŠç¥ã¯ãæéãåºå®ã®ééïŒäŸïŒ1åã1æéã1æ¥ïŒã«åå²ããŸããåã¯ã©ã€ã¢ã³ãã¯ãåééå ã§ç¹å®ã®ãªã¯ãšã¹ãæ°ãèš±å¯ãããŸããã¯ã©ã€ã¢ã³ããçŸåšã®ãŠã£ã³ããŠå ã§å¶éãè¶ ããå Žåãæ¬¡ã®ãŠã£ã³ããŠãå§ãŸããŸã§ãã®ãªã¯ãšã¹ãã¯æåŠãããŸãã
ä»çµã¿ïŒ
- APIã¯ãçŸåšã®æéãŠã£ã³ããŠå ã§åã¯ã©ã€ã¢ã³ããè¡ã£ããªã¯ãšã¹ãã®æ°ã远跡ããŸãã
- ãªã¯ãšã¹ãæ°ãå®çŸ©ãããå¶éãè¶ ããå ŽåãAPIã¯ãŠã£ã³ããŠããªã»ããããããŸã§åŸç¶ã®ãªã¯ãšã¹ããæåŠããŸãã
- ãŠã£ã³ããŠã¯åééã®éå§æã«ãªã»ãããããŸãã
é·æïŒ
- å®è£ ãç°¡åã
- çè§£ããããã
çæïŒ
- åãŠã£ã³ããŠã®éå§æã«ãã©ãã£ãã¯ãæ¥å¢ããçµäºæã«ã¯éã¢ã¯ãã£ãã«ãªãå¯èœæ§ããããŸãã
- çæçãªãã©ãã£ãã¯ã®æ¥å¢ãé²ãã«ã¯çæ³çã§ã¯ãããŸããã
äŸïŒã¯ã©ã€ã¢ã³ãã¯1æéããã100ãªã¯ãšã¹ããèš±å¯ãããŠããŸããã¯ã©ã€ã¢ã³ããæåã®1åã§90ãªã¯ãšã¹ããè¡ã£ãå Žåããã®æéã®æ®ãã®éšåã§ã¯ããš10ãªã¯ãšã¹ãããã§ãããæœåšçãªããã«ããã¯ãçã¿åºããŸãããããŠãæ¬¡ã®æéã®éå§ãŸã§åŸ ã£ãŠããåŒã³åºããç¶ããå¿ èŠããããŸãã
2. ããŒã¯ã³ãã±ãã
ããŒã¯ã³ãã±ããã¢ã«ãŽãªãºã ã¯ãäžå®ã®ã¬ãŒãã§ããŒã¯ã³ãæºãããããã±ããã®ããã«æ©èœããŸããåãªã¯ãšã¹ãã¯ãã±ããããããŒã¯ã³ã1ã€æ¶è²»ããŸãããã±ããã空ã®å Žåããªã¯ãšã¹ãã¯æåŠãããŸããäžè¬çãªäŸãã¯ãäžå®ã®ã¬ãŒãã§èå£ããæ°Žãæºããããæ°Žã®ãã±ãã§ãåããŒã¯ã³ãç¹å®ã®éã®æ°Žã衚ããŸãããªã¯ãšã¹ãã¯ããã±ãã«ååãªæ°Žãããå Žåã«ã®ã¿èš±å¯ãããŸãã
ä»çµã¿ïŒ
- ãã±ããã¯ç¹å®ã®æ°ã®ããŒã¯ã³ã§åæåãããŸãã
- ããŒã¯ã³ã¯åºå®ã¬ãŒãã§ãã±ããã«è¿œå ãããŸãã
- åãªã¯ãšã¹ãã¯ããŒã¯ã³ã1ã€æ¶è²»ããŸãã
- ãã±ããã空ã®å Žåããªã¯ãšã¹ãã¯æåŠãŸãã¯é å»¶ãããŸãã
é·æïŒ
- çæçãªãã©ãã£ãã¯ã®ããŒã¹ãã蚱容ããŸãã
- åºå®ãŠã£ã³ããŠæŠç¥ãããæè»ã§ãã
- ããçšåºŠã®ããŒã¹ã容éã蚱容ãããã·ããªãªã«é©ããŠããŸãã
çæïŒ
- åºå®ãŠã£ã³ããŠæŠç¥ãããå®è£ ãè€éã§ãã
- ãªãã£ã«ã¬ãŒããšãã±ãããµã€ãºã®æ éãªèª¿æŽãå¿ èŠã§ãã
äŸïŒã¯ã©ã€ã¢ã³ãã«ã¯æåã«æºæ¯ã®ãã±ãããäžããããæ¯ç§ããŒã¯ã³ããã±ããã«è¿œå ãããŸããã¯ã©ã€ã¢ã³ãã100ããŒã¯ã³ã®ãã±ãããæã£ãŠããå Žåãããã«100ãªã¯ãšã¹ããè¡ãããšãã§ãããã®åŸã¯ããŒã¯ã³æ°ãè£å ããããŸã§åŸ ããªããã°ãªããŸãããããã«ãããå šäœçãªæ¶è²»ãå¶éãã€ã€ãçæçãªé«ãã©ãã£ãã¯å©çšãå¯èœã«ãªããŸãã
3. ãªãŒããŒãã±ãã
ãªãŒããŒãã±ããã¢ã«ãŽãªãºã ã¯ããŒã¯ã³ãã±ããã«äŒŒãŠããŸããããã©ãã£ãã¯ãåºã«ç©Žã®éãããã±ãã«æµãèŸŒãæ°ŽãšããŠã¢ãã«åããŸãã穎ã¯ãªã¯ãšã¹ããåŠçãããã¬ãŒãã衚ããŸããå ¥ã£ãŠãããªã¯ãšã¹ãã¯ãã±ãã«ä¿åãããŸãããã±ãããã£ã±ãã®å Žåãå ¥ã£ãŠãããªã¯ãšã¹ãã¯ããµããŠæåŠãããŸããããã¯æŠå¿µçã«ããµãŒããŒãç¹å®ã®æéã«äžå®æ°ã®ãªã¯ãšã¹ããåŠçã§ããèœåã«äŒŒãŠããŸãã
ä»çµã¿ïŒ
- å ¥ã£ãŠãããªã¯ãšã¹ãã¯ãã¥ãŒïŒãã±ããïŒã«è¿œå ãããŸãã
- ãªã¯ãšã¹ãã¯äžå®ã®ã¬ãŒãïŒãªãŒã¯ïŒã§åŠçãããŸãã
- ãã¥ãŒããã£ã±ãã®å Žåãæ°ãããªã¯ãšã¹ãã¯æåŠãŸãã¯é å»¶ãããŸãã
é·æïŒ
- ãªã¯ãšã¹ããäžå®ã®ã¬ãŒãã§åŠçããããšã«ããããã©ãã£ãã¯ãå¹³æ»åããŸãã
- ããŒã¹ããåŠçèœåãè¶ ããã®ãé²ããŸãã
çæïŒ
- ãã¥ãŒããã£ã±ãã«ãªããšé å»¶ãçºçããå¯èœæ§ããããŸãã
- çæçãªããŒã¹ããèš±å¯ãããã·ããªãªã«ã¯çæ³çã§ã¯ãããŸããã
äŸïŒAPIã¯å¹³åããŠæ¯ç§10ãªã¯ãšã¹ããåŠçã§ããŸãããªãŒããŒãã±ããã䜿çšãããšããŠãŒã¶ãŒã1ç§éã«20ãªã¯ãšã¹ããéä¿¡ãããšããŠããããã«åŠçãããã®ã¯10ãªã¯ãšã¹ãã®ã¿ã§ãæ®ãã®10ãªã¯ãšã¹ãã¯ãã¥ãŒã«å ¥ãããããæåŠããããµãŒããŒãéè² è·ã«ãªããªãããã«ããŸãã
4. ã¹ã©ã€ãã£ã³ã°ãŠã£ã³ããŠïŒãŸãã¯ã ãŒãã³ã°ãŠã£ã³ããŠïŒ
ã¹ã©ã€ãã£ã³ã°ãŠã£ã³ããŠæŠç¥ã¯ãç¶ç¶çã«ã¹ã©ã€ãããæéãŠã£ã³ããŠå ã§è¡ããããªã¯ãšã¹ããèæ ®ããããšã§ãããæŽç·Žãããæ£ç¢ºãªæ¹æ³ã§ãªã¯ãšã¹ããã¬ãŒãå¶éããŸããåºå®ã®ééã®ä»£ããã«ããŠã£ã³ããŠã¯åãªã¯ãšã¹ããšå ±ã«ç§»åããŸããããã«ãããåºå®ãŠã£ã³ããŠæ¹åŒã§çºçããå¯èœæ§ã®ããããŒã¹ãæ§ãé²ãã®ã«åœ¹ç«ã¡ãŸãã
ä»çµã¿ïŒ
- APIã¯å®çŸ©ãããæéãŠã£ã³ããŠïŒäŸïŒéå»1åãéå»1æéïŒå ã®ãªã¯ãšã¹ãã远跡ããŸãã
- æ°ãããªã¯ãšã¹ãããšã«ããŠã£ã³ããŠã¯åæ¹ã«ã¹ã©ã€ãããŸãã
- APIã¯çŸåšã®ãŠã£ã³ããŠå ã®ãªã¯ãšã¹ãæ°ã確èªããŸãã
- ãªã¯ãšã¹ãæ°ãå®çŸ©ãããå¶éãè¶ ããå Žåããªã¯ãšã¹ãã¯æåŠãããŸãã
é·æïŒ
- åºå®ãŠã£ã³ããŠæŠç¥ãããæ£ç¢ºã§ãã
- ããã¹ã ãŒãºãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãæäŸããŸãã
- ããŒã¹ããã©ãã£ãã¯ã®åŠçã«åªããŠããŸãã
çæïŒ
- åºå®ãŠã£ã³ããŠæŠç¥ãããå®è£ ãè€éã§ãã
- æè¿ã®ãªã¯ãšã¹ãã®ãªã¹ããã«ãŠã³ã¿ãŒãç¶æããå¿ èŠããããããå€ãã®ãªãœãŒã¹ãæ¶è²»ããå¯èœæ§ããããŸãã
äŸïŒã¯ã©ã€ã¢ã³ãã¯1åããã100ãªã¯ãšã¹ããèš±å¯ãããŠããŸããã¹ã©ã€ãã£ã³ã°ãŠã£ã³ããŠã䜿çšãããšãAPIã¯éå»1åéã«è¡ããããªã¯ãšã¹ãã®æ°ã調ã¹ãŸããéå»30ç§ã§90ãªã¯ãšã¹ããè¡ãããå Žåãã¯ã©ã€ã¢ã³ãã¯æ¬¡ã®30ç§ã§æå€§10ãªã¯ãšã¹ãããè¡ããŸãããæ°ãããªã¯ãšã¹ããè¡ããããšããŠã£ã³ããŠã¯ç§ã®ç«¯æ°ã ãåæ¹ã«ç§»åããAPIã¯ã¯ã©ã€ã¢ã³ãã®ãªã¯ãšã¹ãããŸã èš±å¯ãããå¶éå ã«ãããã©ãããåè©äŸ¡ããŸãã
ã°ããŒãã«ãªãŠãŒã¶ãŒã®ããã®å®è£ ã«é¢ããèæ ®äºé
ã°ããŒãã«ãªãŠãŒã¶ãŒåãã«APIã¬ãŒãå¶éãå®è£ ããå Žåããããã®éèŠãªèŠçŽ ãèæ ®ããŠãã ããïŒ
1. å°ççäœçœ®æ å ±ãšå°åèŠä»¶
ãŠãŒã¶ãŒã®å°ççãªå Žæãèæ ®ããŠãã ãããäžéšã®å°åã§ã¯ãç°ãªãèŠå¶èŠä»¶ããããã¯ãŒã¯æ¡ä»¶ããŸãã¯ãã©ãã£ãã¯ãã¿ãŒã³ãããå ŽåããããŸããèŠå¶äžã®çŸ©åãæããã€ã€æé«ã®äœéšãæäŸããããã«ããŠãŒã¶ãŒã®å Žæã«åºã¥ããŠã¬ãŒãå¶éã調æŽããå¿ èŠããããããããŸããã
- äŸïŒGDPRã®ããæ¬§å·é£åïŒEUïŒã®ãããªãããå³ãããã©ã€ãã·ãŒèŠå¶ã®ããå°åã§ã¯ããŠãŒã¶ãŒã®ãã©ã€ãã·ãŒãä¿è·ããããã«ç¹å®ã®çš®é¡ã®ããŒã¿ã«å¯ŸããŠãã峿 Œãªã¬ãŒãå¶éãå®è£ ããå¿ èŠããããããããŸããã
- äŸïŒåž¯åå¹ ãéãããŠããå°åã®ãŠãŒã¶ãŒã«å¯ŸããŠã¯ãé å»¶ãåŒãèµ·ãããªãããã«ãããäœãã¬ãŒãå¶éãé©çšããããšããããŸãã
2. ãŠãŒã¶ãŒã»ã°ã¡ã³ããŒã·ã§ã³
ãŠãŒã¶ãŒã圹å²ããµãã¹ã¯ãªãã·ã§ã³ã¬ãã«ããŸãã¯äœ¿çšãã¿ãŒã³ã«åºã¥ããŠã»ã°ã¡ã³ãåããŸããç°ãªããŠãŒã¶ãŒã°ã«ãŒãã¯ãå ¬å¹³æ§ã確ä¿ããã«ã¹ã¿ãã€ãºãããäœéšãæäŸããããã«ãç°ãªãã¬ãŒãå¶éãå¿ èŠãšããå ŽåããããŸããäŸãã°ãææé¡§å®¢ã¯ç¡æãŠãŒã¶ãŒãããé«ãã¬ãŒãå¶éãåãåããããããŸãããã»ã°ã¡ã³ããŒã·ã§ã³ã¯ãIPã¢ãã¬ã¹ã®ã°ã«ãŒãã«ã®ã¿éçã«é©çšããã®ã§ã¯ãªãããŠãŒã¶ãŒã®ãããã¡ã€ã«ã«åºã¥ããŠåçã§ããã¹ãã§ããããã«ãããã°ããŒãã«ãªå ¬å¹³æ§ã確ä¿ãããŸãã
- äŸïŒeã³ããŒã¹ãã©ãããã©ãŒã ããã¬ãã¢ã ãµãã¹ã¯ãªãã·ã§ã³ãæã€é¡§å®¢ã¯ãåºæ¬ã¢ã«ãŠã³ããæã€é¡§å®¢ãããé«éãªæ³šæåŠçãšããå€ãã®æ©èœãžã®ã¢ã¯ã»ã¹ãå¯èœã«ãããããããé«ãAPIã¬ãŒãå¶éãåããå ŽåããããŸãã
3. åçã¬ãŒãå¶é
ãµãŒããŒã®è² è·ããã©ãã£ãã¯ãã¿ãŒã³ãç¹å®ã®ãŠãŒã¶ãŒã®è¡åãªã©ã®ãªã¢ã«ã¿ã€ã ã®ç¶æ³ã«åºã¥ããŠãã¬ãŒãå¶éãåçã«èª¿æŽã§ããã·ã¹ãã ãå®è£ ããŸããããã¯éçãªã¢ãããŒããããã¯ããã«å¹ççã§ãããŸããæœåšçãªäžæ£å©çšã«èªåçã«å¯ŸåŠããæãå¿ èŠãšãããå Žæã«ãªãœãŒã¹ãå²ãåœãŠãã®ã«ã圹ç«ã¡ãŸãã
- äŸïŒããŒã¯æã«ã¯ãå¢å ãããµãŒããŒè² è·ã管çããããã«ã¬ãŒãå¶éãåçã«äžããããšãã§ããŸããè² è·ãæžå°ããã«ã€ããŠãã¬ãŒãå¶éãèªåçã«ç·©åã§ããŸãã
4. 忣ã¢ãŒããã¯ãã£
APIãè€æ°ã®ãµãŒããŒãããŒã¿ã»ã³ã¿ãŒã«ã°ããŒãã«ã«åæ£ããŠããå Žåãã¬ãŒãå¶éã¡ã«ããºã ã忣ãããäžè²«æ§ãããããšã確èªããå¿ èŠããããŸããäžå€®éæš©çãªã¬ãŒãå¶éã¯ããã«ããã¯ãçã¿åºãå¯èœæ§ããããŸããåã¯ã©ã€ã¢ã³ãã®ã¬ãŒãå¶éã®äžè²«ãããã¥ãŒãç¶æããããã«ããã¹ãŠã®ãµãŒããŒéã§ããŒã¿ãåæããå¿ èŠããããŸãããããå®çŸããããã«ãRedisã®ãããªäžè¬çãªæè¡ã䜿çšã§ããŸãã
- äŸïŒããeã³ããŒã¹ãã©ãããã©ãŒã ã¯åç±³ããšãŒããããã¢ãžã¢ã«ãµãŒããŒãæã£ãŠããŸããã°ããŒãã«ãã©ãããã©ãŒã äžã®ãŠãŒã¶ãŒã®ãªã¯ãšã¹ãã¯ãå Žæã«å¿ããŠç°ãªããµãŒããŒã«åæ£ãããŸãããåãµãŒããŒã¯ã¬ãŒãå¶éããŒã¿ã®äžå€®ãªããžããªãå ±æããŠãããåŒã³åºãã®çºä¿¡å ã«é¢ä¿ãªãåãŠãŒã¶ãŒããã®äžæ£å©çšãé²ããŸãã
5. ãªã¢ã«ã¿ã€ã ç£èŠãšã¢ã©ãŒã
ã¬ãŒãå¶éã®çµ±èšã远跡ããæœåšçãªäžæ£å©çšãç¹å®ããããã©ãŒãã³ã¹ã®åé¡ãæ€åºããããã«ãå ç¢ãªç£èŠããã³ã¢ã©ãŒãã·ã¹ãã ãå®è£ ããŸããã¬ãŒãå¶éãé »ç¹ã«è¶ éãããããç°åžžãªãã©ãã£ãã¯ãã¿ãŒã³ãæ€åºãããããããšãã«éç¥ããã¢ã©ãŒããèšå®ããŸããããã«ãããåé¡ã«è¿ éã«å¯ŸåŠããå¿ èŠãªèª¿æŽãè¡ãããšãã§ããŸãã
- äŸïŒã¬ãŒãå¶éã·ã¹ãã ãPrometheusãGrafanaãDatadogãªã©ã®ç£èŠããŒã«ãšçµ±åããŠããªã¯ãšã¹ãæ°ããããã¯ããããªã¯ãšã¹ãæ°ãå¹³åå¿çæéãªã©ã®ã¡ããªã¯ã¹ã远跡ããŸããã¬ãŒãå¶éãäžè²«ããŠãããããå Žåã«é»åã¡ãŒã«ãä»ã®ãã£ãã«ã§éç¥ããããã«ã¢ã©ãŒããèšå®ããŸãã
6. æç¢ºãªãšã©ãŒã¡ãã»ãŒãžãšãŠãŒã¶ãŒã³ãã¥ãã±ãŒã·ã§ã³
ã¬ãŒãå¶éãè¶ éãããå Žåã«ãæçã§ãŠãŒã¶ãŒãã¬ã³ããªãŒãªãšã©ãŒã¡ãã»ãŒãžãæäŸããŸããã¡ãã»ãŒãžã¯ããªã¯ãšã¹ãããªãæåŠãããã®ãããããŠãŠãŒã¶ãŒãåé¡ã解決ããããã«äœãã§ããã®ããæç¢ºã«èª¬æããå¿ èŠããããŸããããã«ã¯ãåŸã§å詊è¡ããããšãææ¡ãããããµãã¹ã¯ãªãã·ã§ã³ãã¢ããã°ã¬ãŒããããããµããŒãã®é£çµ¡å æ å ±ãæäŸãããããããšãå«ãŸããå ŽåããããŸãã
- äŸïŒäžè¬çãªã429 Too Many Requestsããšã©ãŒã®ä»£ããã«ããã¬ãŒãå¶éãè¶ ããŸãããæ°ååŸ ã£ãŠããå床ãªã¯ãšã¹ãããŠãã ããããããã1æ¥ã®APIå¶éã«éããŸããããªã¯ãšã¹ã蚱容éãå¢ããã«ã¯ãã¬ãã¢ã ãã©ã³ã«ã¢ããã°ã¬ãŒãããŠãã ããããã®ãããªã¡ãã»ãŒãžãæäŸããŸãããŠãŒã¶ãŒãå詊è¡ãããŸã§ã«åŸ ã€å¿ èŠãããæéã«é¢ããæ å ±ããå¶éãå¢ããæ¹æ³ã«é¢ããããã¥ã¡ã³ããžã®ãªã³ã¯ãå«ããŸãã
7. ãã£ãã·ã³ã°ãšæé©å
ãã£ãã·ã³ã°ã䜿çšããŠAPIãžã®è² è·ã軜æžããå¿çæéãæ¹åããŸããé »ç¹ã«ã¢ã¯ã»ã¹ãããããŒã¿ããã£ãã·ã¥ããŠãAPIåŒã³åºãã®æ°ãæå°éã«æããŸããããã«ãããã¬ãŒãå¶éãäžå¿ èŠã«ãããããã®ãé²ããå šäœçãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãåäžãããéçšã³ã¹ããåæžã§ããŸãã
- äŸïŒé »ç¹ã«ã¢ã¯ã»ã¹ãããããŒã¿ãCDNïŒã³ã³ãã³ãããªããªãŒãããã¯ãŒã¯ïŒã«ãã£ãã·ã¥ããŠããªãªãžã³ãµãŒããŒãžã®è² è·ã軜æžããäžçäžã®ãŠãŒã¶ãŒãžã®ã³ã³ãã³ãé ä¿¡é床ãåäžãããŸãããŸããAPIã²ãŒããŠã§ã€ã¬ãã«ã§ã®ã¬ã¹ãã³ã¹ã®ãã£ãã·ã³ã°ãæ€èšããŠãã ããã
8. APIã²ãŒããŠã§ã€ã®çµ±å
ã¬ãŒãå¶éãAPIã²ãŒããŠã§ã€ã«çµ±åããŸããAPIã²ãŒããŠã§ã€ã¯ãAPIãã©ãã£ãã¯ãã»ãã¥ãªãã£ãããã³ã¬ãŒãå¶éãå«ãAPI管çã®ä»ã®åŽé¢ã管çããããã®äžå€®å¶åŸ¡ç¹ãæäŸããŸããAPIã²ãŒããŠã§ã€ã䜿çšãããšãã¬ãŒãå¶éã®é©çšãšç®¡çãããªã·ãŒã®åŒ·å¶ãAPI䜿çšç¶æ³ã®ç£èŠã容æã«ãªããŸãã
- äŸïŒApigeeãAWS API GatewayãKongãªã©ã®APIã²ãŒããŠã§ã€ãå©çšããŠãã¬ãŒãå¶éãæ§æããã³åŒ·å¶ããŸãããããã®ã²ãŒããŠã§ã€ã¯ãå€ãã®å ŽåãããŸããŸãªã¬ãŒãå¶éæŠç¥ã®çµã¿èŸŒã¿ãµããŒããæäŸããäžå åããã管çããã³ç£èŠããã·ã¥ããŒããæäŸããŸãã
APIã¬ãŒãå¶éã®ãã¹ããã©ã¯ãã£ã¹
ãããã®ãã¹ããã©ã¯ãã£ã¹ã«åŸãããšã§ãAPIã¬ãŒãå¶éã广çã«å®è£ ããã³ç®¡çã§ããŸãïŒ
- æç¢ºãªã¬ãŒãå¶éã®å®çŸ©ïŒAPIã®ãªãœãŒã¹ããŠãŒã¶ãŒã®ããŒãºãããžãã¹ç®æšã«åºã¥ããŠé©åãªã¬ãŒãå¶éãæ±ºå®ããŸãã
- äžè²«ããããŒã®äœ¿çšïŒåã¯ã©ã€ã¢ã³ãã®ãªã¯ãšã¹ããèå¥ã远跡ããããã«ãäžè²«ããããŒïŒäŸïŒAPIããŒããŠãŒã¶ãŒIDãIPã¢ãã¬ã¹ïŒã䜿çšããŸãã
- ã¬ãŒãå¶éã®æ©æå®è£ ïŒåé¡ãçºçããåã«é²ããããéçºããã»ã¹ã®æ©ã段éã§ã¬ãŒãå¶éãå®è£ ããŸãã
- ç£èŠãšèª¿æŽïŒã¬ãŒãå¶éã®ããã©ãŒãã³ã¹ãç¶ç¶çã«ç£èŠãã䜿çšãã¿ãŒã³ããã£ãŒãããã¯ã«åºã¥ããŠå¿ èŠã«å¿ããŠå¶éã調æŽããŸãã
- 培åºçãªãã¹ãïŒã¬ãŒãå¶éã®å®è£ ããã¹ãããŠãæåŸ ã©ããã«æ©èœããæ£åœãªãŠãŒã¶ãŒã«æªåœ±é¿ãäžããªãããšã確èªããŸãã
- ã¬ãŒãå¶éã®ææžåïŒã¬ãŒãå¶éãæç¢ºã«ææžåãããã®æ å ±ãAPIãŠãŒã¶ãŒã«æäŸããŸãã
- éèŠãªAPIã®åªå é äœä»ãïŒéèŠãªAPIãåªå ããéèŠãªæ©èœãå©çšå¯èœãªãŸãŸã§ããããšãä¿èšŒããããã«ãã¬ãŒãå¶éãé©å®èª¿æŽããããšãæ€èšããŸãã
- ã¹ããããªã³ã°äŸå€ã®æ€èšïŒéèŠãªã»ãã¥ãªãã£æŽæ°ãç·æ¥ã¢ã©ãŒããªã©ã®éèŠãªæäœã«å¯ŸããŠã¯ãã¬ãŒãå¶éã®äŸå€ãèš±å¯ããŸãã
- ã¬ãŒãå¶é管çã®èªååïŒã¬ãŒãå¶éã®èšå®ãç£èŠã調æŽãªã©ã®ã¿ã¹ã¯ãèªååããããŒã«ãå®è£ ããŸãã
- ãŠãŒã¶ãŒã®æè²ïŒã¬ãŒãå¶éãšAPIã®è²¬ä»»ããäœ¿çšæ¹æ³ã«ã€ããŠãŠãŒã¶ãŒã«æ å ±ãæäŸããŸãã
ããŒã«ãšãã¯ãããžãŒ
APIã¬ãŒãå¶éã®å®è£ ã«åœ¹ç«ã€ããã€ãã®ããŒã«ãšãã¯ãããžãŒããããŸãïŒ
- APIã²ãŒããŠã§ã€ïŒApigeeãAWS API GatewayãKongãTykãAzure API Managementã
- ãã£ãã·ã³ã°ã·ã¹ãã ïŒRedisãMemcachedã
- ã¬ãŒãå¶éã©ã€ãã©ãªïŒPythonã®`ratelimit`ãNode.jsã®`rate-limiter-flexible`ã
- ç£èŠãšã¢ã©ãŒãïŒPrometheusãGrafanaãDatadogã
çµè«
APIã¬ãŒãå¶éã¯ãå ç¢ã§ã¹ã±ãŒã©ãã«ã§å®å šãªAPIãæ§ç¯ããããã®äžå¯æ¬ ãªæè¡ã§ãã广çãªã¬ãŒãå¶éæŠç¥ãå®è£ ããããšã§ãAPIãäžæ£å©çšããä¿è·ãããµãŒãã¹ã®å¯çšæ§ã確ä¿ããããã©ãŒãã³ã¹ãæé©åããã°ããŒãã«ãªãŠãŒã¶ãŒã«è¯å®çãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãæäŸã§ããŸããAPIã®ç¹å®ã®ããŒãºã«åºã¥ããŠé©åãªæŠç¥ãéžæãããŠãŒã¶ãŒã»ã°ã¡ã³ããŒã·ã§ã³ãå°ççäœçœ®æ å ±ãªã©ã®èŠçŽ ãèæ ®ããé²åããèŠæ±ã«åãããŠã¬ãŒãå¶éãç¶ç¶çã«ç£èŠããã³èª¿æŽããããšãå¿ããªãã§ãã ãããAPIãããžã¿ã«çµæžãåããç¶ããäžã§ãAPIã¬ãŒãå¶éãç¿åŸããããšã¯ãäžçäžã§ä¿¡é Œæ§ãé«ã髿§èœãªãµãŒãã¹ãæäŸããããšããããããçµç¹ã«ãšã£ãŠäžå¯æ¬ ãšãªãã§ãããã