ã®ãããã¯ã®èª¿æ»ãç¶ç¶ãã MOAïŒãã€ã¯ããµãŒãã¹æåã®ã¢ããªã±ãŒã·ã§ã³ïŒã®ãã¹ãã«é¢ããèšäºã®ç¿»èš³ãæäŸããããšã«ããŸãããæè¿ããã¹ãã®ãããã¯ã«ã€ããŠã¯ãã§ã«åãäžããŸãã ãããã€ã¯ããµãŒãã¹ã®å Žåãå®æçãªåäœãã¹ãã§ã¯äžååã§ãããCI / CDããã®èšäºã§èª¬æãããã®ä»ã®äºé ã«é¢é£ããåŽé¢ãèæ ®ããå¿ èŠããããŸãã
ãã€ã¯ããµãŒãã¹ã¯ãåæ£ã·ã¹ãã ã®äœæã«äœ¿çšãããæ°ããã¹ã¿ã€ã«ã®ãœãããŠã§ã¢ã¢ãŒããã¯ãã£ã§ãããæ倧ã®ãã®ãå«ããWebäžã§åäœããäŒæ¥ã«ãŸããŸãå®è£ ãããŠããŸããããšãã°ãNetflixãšAmazonã¯ããœãããŠã§ã¢è£œåã®ãªãªãŒã¹ãå€§å¹ ã«å éããããã«ãã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ãæ¡çšããŠããŸããåæã«ãå€ãã¢ããªã·ãã¯ã·ã¹ãã ã¯ãçŸä»£ã®èª²é¡ã«å¯Ÿå¿ã§ããé床ã§æ¡åŒµããããšã¯ã§ããŸããã
ãã ãããã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ãããããã¡ãªããã¯ãããããµããŒãããããã®ãã¹ããã©ã¯ãã£ã¹ããã¹ãã§ããå Žåã«éãããŸãããã€ã¯ããµãŒãã¹ã·ã¹ãã ãæ€èšŒããããã®ãã¹ããèšèšããå ŽåããªãªãŒã¹ã¬ãŒãã¯éåžžã«é«éã§ãããšèª¬æã§ããŸããããã¯ãã¬ãã«ãšãã¯ãã¬ãã«ã®äž¡æ¹ã§é©æ°çãªèãæ¹ãå¿ èŠã§ãã
次ã«ã3çš®é¡ã®ãã€ã¯ããµãŒãã¹æåã®ã¢ããªã±ãŒã·ã§ã³ã«ã€ããŠèª¬æãããããããã¹ãããããã«åãçµãå¿ èŠã®ããããã€ãã®èª²é¡ã«ã€ããŠèª¬æãããã€ã¯ããµãŒãã¹ã®å©ç¹ãååã«ç解ããããã«ãã¹ããäœæããæ¹æ³ã«ã€ããŠèª¬æããŸãã
ãã€ã¯ããµãŒãã¹ã«ã€ããŠç°¡åã«
ãã€ã¯ããµãŒãã¹ã®ãã¹ããèšèšããéã®è€éãªäœæ¥ã«å ¥ãåã«ããã€ã¯ããµãŒãã¹ãšã¯äœããèŠãŠã¿ãŸãããããã€ã¯ããµãŒãã¹ã¯ãæ確ãªã»ãã³ãã£ãã¯å®çŸ©ãäžãããã詳现ãªãœãããŠã§ã¢ã³ã³ããŒãã³ãã§ãããã ãããã€ã¯ããµãŒãã¹ã¯ç¬èªã®ããŒã¿ã»ãããäŒéããä»ã®ããŒã¿æ§é ãããŒã¿ãœãŒã¹ã«äŸåããŸãããåãã€ã¯ããµãŒãã¹ã«ã¯ç¬èªã®ãããã€ã¡ã³ããµã€ã¯ã«ãããããããã€ã¯ããµãŒãã¹ã«å€æŽãå ããåŸããã®ãã€ã¯ããµãŒãã¹ãå®è¡ãããŠããã¢ããªã±ãŒã·ã§ã³ã®ã¹ã³ãŒãå ã®ä»ã®ãã€ã¯ããµãŒãã¹ã®äœæ¥ãäžæããããšãªãããã€ã¯ããµãŒãã¹ã解æŸã§ããŸãã
ã¢ããªã·ãã¯ã¢ããªã±ãŒã·ã§ã³ã«å¯Ÿãããã€ã¯ããµãŒãã¹ã®å©ç¹
ãŸãããã€ã¯ããµãŒãã¹ãäœã§ãªãããèŠãŠã¿ãŸãããã次ã®å³ã¯ãå žåçãªã¢ããªã·ãã¯ã¢ããªã±ãŒã·ã§ã³ã®äŸã瀺ããŠããŸãã
å³ïŒ 1ïŒã¢ããªã·ãã¯ã¢ããªã±ãŒã·ã§ã³ã¢ãŒããã¯ãã£ã¯éåžžã匷åãªã³ã³ããŒãã³ãã®çµæãæã£ãŠããŸã
CustomersãProductsãOrdersãããã³ïŒCommentsïŒã³ã³ããŒãã³ãã¯ãJavaãCïŒãªã©ã®ãªããžã§ã¯ãæåèšèªã§èšè¿°ãããã¯ã©ã¹ã®ã»ãããšèããããšãã§ããŸããããã§ãcustomersã¯ã顧客ã補åã«å¯Ÿå¿ãããªããžã§ã¯ãã®é åã§ãã補åçã«å¯Ÿå¿ãããªããžã§ã¯ãã®é¡§å®¢ãªããžã§ã¯ãã¯ã顧客ãªããžã§ã¯ããšè£œåãªããžã§ã¯ãã®äž¡æ¹ã䜿çšã§ããŸãããŸãã¯ãã¢ããªã·ãã¯ã¢ããªã±ãŒã·ã§ã³ã®ãã¹ãŠã®ã³ã³ããŒãã³ããåãããŒã¿ããŒã¹ã«ã¢ã¯ã»ã¹ããããã泚æãªããžã§ã¯ãã¯ããŒã¿ããŒã¹ã«çŽæ¥ã¢ã¯ã»ã¹ããŠãã¿ã¹ã¯ãå®äºããããã«å¿ èŠãªè£œåãšæ³šæã«é¢ãããã¹ãŠã®æ å ±ãååŸããå ŽåããããŸããããŒã¿ããŒã¹ãžã®çŽæ¥ã¢ã¯ã»ã¹ãå¯èœã§ããã ãã§ãªãããªããžã§ã¯ããªã¬ãŒã·ã§ãã«ãããã³ã°ã«åºã¥ããªããžã§ã¯ãæåããã°ã©ãã³ã°ã®ç²Ÿç¥ãšã©ãã»ã©ççŸããŠããã ORM-ããããç¹ã«åæãããæ¥ä»ãŸã§ã«æ¢è£œã®æ©èœã«å¯ŸããéèŠãé«ãåéã§ã¯ãã©ã®ãããªã³ã¹ãã§ãã£ãŠããç©æ¥µçã«äœ¿çšãããŠããŸãã
ãã®çµæãç·å¯ã«çµåããããå Žåã«ãã£ãŠã¯è匱ãªã·ã¹ãã ãäœæãããŸããæ°ããããŒãžã§ã³ã®ã¢ããªã±ãŒã·ã§ã³ããªãªãŒã¹ããã«ã¯ããã®ã·ã¹ãã ã®éçºã«é¢äžãããã¹ãŠã®éçºããŒã éã§å€§å¹ ãªèª¿æŽãå¿ èŠã§ãã匷ãçµåãããããããªãªãŒã¹ãµã€ã¯ã«å šäœã¯ãäŸåé¢ä¿ãåããŽã·ãšãŒãããæãé ãäœæ¥ãããéãé²ãããšã¯ã§ããŸãããã€ãŸããã¢ããªã±ãŒã·ã§ã³ãæŽæ°ããŠã顧客ã«ããæ°æ©èœãšè£œåã«ããæ°æ©èœãã¢ããªã±ãŒã·ã§ã³ã«è¿œå ãããšããæ¥ãå Žåããããã®æ©èœã®äž¡æ¹ã®æºåãæŽããŸã§ããªãªãŒã¹ã¯è¡ãããŸããã補åã®æŽæ°ã«1æ¥ã顧客ã®å€æŽã«3é±éãããå ŽåããªãªãŒã¹ã¯3é±é以å ã«è¡ãããŸããããã«ãç¶æ³ãããã«æªåãããããããªãªãŒã¹äžã«ã顧客ãšååã«é¢ããæ°ããã³ãŒãã調æŽããã ãã§ãªãããã ããããŒã¿ããŒã¹ã¹ããŒãã«ãå€æŽãå ããŸãããããããªãªãŒã¹ããã»ã¹äžã«ç®¡çããå¿ èŠããããŸãã
ããŒã¿ããŒã¹ãžã®å€æŽããªãªãŒã¹ããããšã¯ãéåžžã«ããªã±ãŒããªäœæ¥ã§ããããŒã¿ããŒã¹ã®æ§é ãå€æŽãããšãæå³ããªãå¯äœçšãçºçãããªã¹ã¯ãåžžã«ãããŸããã³ã³ããŒãã³ããããŒã¿ããŒã¹ã«ã¢ã¯ã»ã¹ã§ããå Žåããã®ã³ã³ããŒãã³ãã¯ããŒã¿ããŒã¹ã«ã¢ã¯ã»ã¹ãããã®ã³ã³ããŒãã³ãã®ç¯å²å€ã®ããŒã¿ã«å¯ŸããŠæäœãå®è¡ããããšããããããšãå¿ããªãã§ãã ããããã®ãããªããšãªã¢å€æäœãã¯ãä»ã®ã³ã³ããŒãã³ãã®é害ã«ã€ãªããå¯èœæ§ããããçœå®³ãçºçãããŸã§ããã®ãããªé害ã¯èŠéããããå¯èœæ§ããããŸãããã®ã³ãŒããæ¬çªç°å¢ã«ãªãªãŒã¹ãããçŽåã«ãã³ãŒãã«æœåšçãªå±éºãèŠã€ããå ŽåããããŸããæ®å¿µãªãããããã¯åžžã«çºçããŸãã
äžéšã®äŒæ¥ã¯ãã¢ããªã·ãã¯ã¢ããªã±ãŒã·ã§ã³ã§ã®äœæ¥ã«å žåçãªé ããªãªãŒã¹ãµã€ã¯ã«ã«ææ ¢ããçšæããããŸããããããæ°åäžäººã®ãŠãŒã¶ãŒããµããŒãããåæã«æ°åã®ã³ã³ããŒãã³ããæ©èœãã圢ã§ç¶æããå¿ èŠãããäŒç€Ÿã«ã€ããŠè©±ããŠããå Žåããææ°ã®ã³ã³ããŒãã³ãã®ãªãªãŒã¹ãããéããªãããšããããŒã¹ã¯åãå ¥ããããŸããã ã
ãã€ã¯ããµãŒãã¹æåã®ã¢ããªã±ãŒã·ã§ã³
ãã€ã¯ããµãŒãã¹æåã®ã¢ããªã±ãŒã·ã§ã³ïŒMOAïŒã§ã¯ãåæ©èœã³ã³ããŒãã³ãã¯ãïŒåŠ¥åœãªå¶éå ã§ïŒé¡èãªæ©èœãåããå¯èœãªéãæå°ã®ãŠãããã«å解ãããŸãããã®å Žåããã®ãããªåæ©èœã³ã³ããŒãã³ãã¯ãã€ã¯ããµãŒãã¹ãšããŠç·šæãããŸããåäŒæ¥ã«ã¯ç¬èªã®ã¬ã¬ã·ãŒã³ãŒãã®æè·ç©ãšãéµå®ãã¹ãäŒæ¥æåããããããå解ãã©ã®ããã«æ£ç¢ºã«å®è¡ãããããã¡ã¢ã®ããã«ãæžãããšã¯äžå¯èœã§ãã
MOAã§ã¢ããªã·ãã¯ã¢ããªã±ãŒã·ã§ã³ãå解ããå ŽåãèŠããŠããã¹ãéèŠãªç¹ã¯ãæè¯ã®ãã®ã¯åã®æµã§ãããšããããšã§ããåãã€ã¯ããµãŒãã¹ããã®ã»ãã³ãã£ãã¯å®çŸ©ã«åŸã£ãŠæ§é åãããŠããããšããã€ã¯ããµãŒãã¹ãç¬èªã®ããŒã¿ãšç¬èªã®ãªãªãŒã¹ãµã€ã¯ã«ãæã£ãŠããããšã確èªããŠãã ãããå®è£ ã®æ·±ãã¯ãå©çšå¯èœãªæéãåŸæ¥å¡ã®çµéšãããã³å©çšå¯èœãªãªãœãŒã¹ã«åºã¥ããŠãäŒç€Ÿãäœãæ¯æãããšãã§ãããã«ãã£ãŠç°ãªããŸããäžéšã®ãã€ã¯ããµãŒãã¹ã«ã¯1ã€ã®æ©èœãããªãå Žåãããã°ãå€ãã®æ©èœãããå ŽåããããŸãã
MOAã®3ã€ã®ã¿ã€ãããããŸãïŒ åæã éåæãããã³ ãã€ããªããã
åæãã€ã¯ããµãŒãã¹æåã®ã¢ããªã±ãŒã·ã§ã³
å³2ã¯ãåæMOAã瀺ããŠããŸãããµãŒãã¹ééä¿¡ã¯ãWebã§ã®HTTP察話ã«å žåçãªèŠæ±/å¿çã®åå ã§ãã
å³2ïŒåæãµãŒãã¹ééä¿¡ã«åºã¥ããã€ã¯ããµãŒãã¹æåã®ã¢ããªã±ãŒã·ã§ã³
åãã€ã¯ããµãŒãã¹ã¯HTTPãµãŒããŒã®èåŸã§ã»ã°ã¡ã³ãåãããŠããããããã®ãã€ã¯ããµãŒãã¹ã®ããžãã¯ã«ã¢ã¯ã»ã¹ã§ããŸããç¹å®ã®ãã€ã¯ããµãŒãã¹ã¯ãããèªäœã®è²¬ä»»ç¯å²ããç¥ããŸããã圌ã¯ãŸããå¥ã®ãã€ã¯ããµãŒãã¹ãšå¯Ÿè©±ããããã®ã€ã³ã¿ãŒãã§ãŒã¹ãç¥ã£ãŠãããããããŸããããå¥ã®ãµãŒãã¹ã®å éšããžãã¯ãèŠãããšãã§ããŸãããããã«ããã€ã¯ããµãŒãã¹ã¯èªèº«ã®ããŒã¿ã«ã€ããŠã®ã¿ç¥ã£ãŠããŸããä»ã®ãã€ã¯ããµãŒãã¹ã®ããŒã¿ã¹ãã¢ã¯åœŒã«ã¯ç¥ãããŠããªãããã圌ã¯å©çšã§ããŸãããå¥ã®ãã€ã¯ããµãŒãã¹ã®ããŒã¿ãŠã§ã¢ããŠã¹ã«çŽæ¥ã¢ã¯ã»ã¹ããŠããã®ããŒã¿ãããã€ãžã£ãã¯ãããããšã¯ã§ããŸããããã€ã¯ããµãŒãã¹ããããŒã¿ãååŸããŠæ°ããããŒã¿ããã€ã¯ããµãŒãã¹ã«è»¢éããå¯äžã®æ¹æ³ã¯ããããªãã¯ã€ã³ã¿ãŒãã§ã€ã¹ãä»ããŠãã€ã¯ããµãŒãã¹ãšããåãããããšã§ãã
åæMOAã®å©ç¹ã®äžã«ã¯ããã®ç¬ç«æ§ããããŸããããšãã°ãäžèšã®Customersãã€ã¯ããµãŒãã¹ã¯ãå¿ èŠã«å¿ããŠãã€ã§ãæŽæ°ã§ããŸããããã«èª¿æŽããå¿ èŠã®ããå€éšäŸåé¢ä¿ã¯ãããŸããããã€ã¯ããµãŒãã¹ããããªãã¯ã€ã³ã¿ãŒãã§ã€ã¹ãå€æŽãããèŠæ±ããæ¶è²»ããŠå¿çãšããŠè¿ãäºå®ã®ããŒã¿ã®æ§é ãå€æŽããªãéããMOAã¢ãŒããã¯ãã£å šäœãç Žæãããªã¹ã¯ã¯æå°éã«æããããŸãã
ãã®æ§è³ªäžãMOAã¢ãŒããã¯ãã£ã¯ãç¬èªã®æ§é çæŽåæ§ãç¶æãããããªãã®ã§ãããã€ã¯ããµãŒãã¹èªäœãç¬èªã®ããŒã¿ãéã¶ããããã®äœæ¥ã¯ä»ã®ãµãŒãã¹ã®ããŒã¿ã¹ãã¢ã«åœ±é¿ãäžããŸããããã€ã¯ããµãŒãã¹ã¯ãèŠæ±ãšå¿çã®ååã«åºã¥ããŠæ§ç¯ãããHTTP URLãšé¢é£ããŒã¿æ§é ã®ã»ãããšããŠè¡šãããããããã€ã¯ããµãŒãã¹ã®ã€ã³ã¿ãŒãã§ã€ã¹ã®å¢çãæ確ã«å®çŸ©ãããŸãã
åæMOAã¯ãŸããŸã人æ°ãé«ãŸã£ãŠããŸããå€ãã®åæMOAã€ã³ã¿ãŒãã§ã€ã¹ã¯ã2000幎ããååšããŠããã¹ã¿ã€ã«ã§ããRESTãã©ãã€ã ã«åºã¥ããŠããŸãã ä»å¹Žã®ãããããMOAã«ã¯äººæ°ããããŸãããé床ãé ããšããæ¬ ç¹ããããŸããåæãã€ã¯ããµãŒãã¹ã®ã³ã³ã·ã¥ãŒããŒã¯ããã®ãã€ã¯ããµãŒãã¹ãèŠæ±ãšå¿çãåŠçã§ãããããéãå®è¡ãããããšã¯ãããŸãããããã¯ãç¹ã«ããã»ã¹ã®å®è¡ã«æéãããããã€ã¯ããµãŒãã¹ãæ±ãå Žåã«ã倧ããªããã«ããã¯ã«ãªãå¯èœæ§ããããŸããäŸãšããŠããã©ãã€ãã®ããŒã¿ãæ¶è²»ããã³åŠçããè€éãªåæãµãŒãã¹ããããŸãããµãŒãã¹ãã·ã£ããããŠã³ãããŸã§æ°åç¶ããŠåº§ã£ãŠåŸ ã€ããšã«åæãã顧客ã¯ã»ãšãã©ããŸããããã€ã¯ããµãŒãã¹ã«å®è¡ããå¿ èŠã®ããäœæ¥ãéç¥ããçµæã®æºåãã§ãããšãã«éç¥ãåãåãæ¹ã䟿å©ã§ãã
ãã®ãããªç¶æ³ã§ã¯ããã€ã¯ããµãŒãã¹ã®èšèšã«éåæã¢ãããŒããæ¡çšããæ¹ã䟿å©ã§ãã
éåæãã€ã¯ããµãŒãã¹æåã®ã¢ããªã±ãŒã·ã§ã³
以äžã®å³3ã¯ãéåæMOAå®è£ ã瀺ããŠããŸããããã§ã¯ãé¢ä¿è éã§ã¡ãã»ãŒãžã亀æããããšã«ããããµãŒãã¹ééä¿¡ãæäŸãããŸããéåžžããã®çžäºäœçšã¯ããã¡ã€ã¢ã¢ã³ããã©ãŒã²ããããšåŒã°ããŸãã
å³3ïŒéåæMOAã¢ãŒããã¯ãã£ã¯ã¡ãã»ãŒãžã³ã°ã«åºã¥ããŠ
ããŸãéåæMOAã¢ãŒããã¯ãã£ã§ã¯ãã¡ãã»ãŒãžã¯ã©ã³ãã ã«çæããããšããç¹å®ã®ã€ãã³ãã«å¿çããŠçæããããšãã§ããŸããããšãã°ãïŒäžã®å³ã«ç€ºãããã«ïŒOrdersãã€ã¯ããµãŒãã¹ã§æ³šæãäœæããããšããã®ãµãŒãã¹ã¯ã€ãã³ã
orders_created
ãå ¬éãã ãããã³ã³ãããªã³ ã¡ãã»ãŒãžãã¥ãŒã«é 眮ã§ããŸãããå¥ã®ãã€ã¯ããµãŒãã¹ããªãã¹ã³ããè«æ±ïŒå³ã«ã¯ç€ºãããŠããŸããïŒãè¡ããçä¿¡ã¡ãã»ãŒãžãåãå ¥ããŸããè«æ±ãã€ã¯ããµãŒãã¹ã¯ã泚ææ å ±ã¡ãã»ãŒãžãååŸããè«æ±ã®èŠ³ç¹ããé©åãªæ¹æ³ã§åŠçããŸãã
ãã€ã¯ããµãŒãã¹æåã®ã¢ããªã±ãŒã·ã§ã³ãèšèšããããã®éåæã¢ãããŒãã®å©ç¹ã¯ããã®ãããªã·ã¹ãã ã«ããã«ããã¯ããªããããéåžžã«å¹ççã§ãããšããããšã§ããæ¬ ç¹ã¯ããã®ãããªã·ã¹ãã ãäœæããŠç®¡çããããšãéåžžã«é£ããããšã§ãã Uberã®
ãããªå€§èŠæš¡ãªéåæã·ã¹ãã ã®å Žå ã1ç§ãããæ°åã®ã¡ãã»ãŒãžãåŠçããã®ãæ®éã§ãããã®ãããªã·ã¹ãã ã®ãããã°ã¯ããã®ã¯ãŒã¯ãããŒã«æ確ãªè»éããªãããã«å°é£ã§ããæåã«1ã€ã®ã¢ã¯ã·ã§ã³ãå®è¡ããŠãããå¥ã®ã¢ã¯ã·ã§ã³ãå®è¡ããããšã§ã¯ãããŸãããããžãã¯ã¯ãåä¿¡ããã¡ãã»ãŒãžã«å¿ããŠããªã¬ãŒãããŸããã€ãŸãããã€ã§ãäœã§ãçºçããå¯èœæ§ããããŸãã
ããã¯ããã¹ãæŠç¥ãéçºãããšãã«çæããå¿ èŠããããŸããããšãã°ãéåæã·ã¹ãã ã¯å®çšçã§ã¯ãªãããã®ããã©ãŒãã³ã¹ã¯èŠæ±æéãšå¿çæéã«äŸåããŸããããã¯ãã1ã€ã®èŠæ±ãš1ã€ã®å¿çããšãã1察1ã®å¯Ÿå¿ããªãããã§ãã
ãã€ããªãããã€ã¯ããµãŒãã¹æåã®ã¢ããªã±ãŒã·ã§ã³
ãã€ã¯ããµãŒãã¹æåã®ã¢ããªã±ãŒã·ã§ã³ãå®è£ ããããã®ãã©ã³ã¹ã®åããã¢ãããŒãã¯ãã€ããªããã§ãããµãŒãã¹ã¯åæã«åæãããŸããã€ãŸãããµãŒãã¹éã§çŽæ¥ã®èŠæ±ãšå¿çã®éä¿¡ããµããŒããããåæã«éåæã«ãªããŸããã€ãŸããäžéšã®ã¡ãã»ãŒãžã¯ãåæã¡ãã»ãŒãžã³ã°ãšçµã¿åãããŠããŸãã¯åæã¡ãã»ãŒãžã³ã°ã®çµæãšããŠçæãããŸãã
å³4ã¯ããã€ã¯ããµãŒãã¹æåã®ã¢ããªã±ãŒã·ã§ã³ãžã®ãã€ããªããã¢ãããŒãã§äœ¿çšãããéä¿¡ãã¿ãŒã³ã瀺ããŠããŸããCustomersãã€ã¯ããµãŒãã¹ã¯ãHTTPãµãŒããŒã«é¢é£ä»ããããURLãšãã¡ãã»ãŒãžãããŒã«ãŒã®ãã¥ãŒã®äž¡æ¹ãšããŠè¡šãããŸãã
å³4ïŒãµãŒãã¹ãšã³ã³ã·ã¥ãŒããŒã®éã§åæéä¿¡ãªãã·ã§ã³ãšéåæéä¿¡ãªãã·ã§ã³ã®äž¡æ¹ã䜿çšãããã€ã¯ããµãŒãã¹æåã®ã¢ããªã±ãŒã·ã§ã³ãèšèšããããã®ãã€ããªããã¢ãããŒãã
æšæºã®HTTPèŠæ±/å¿çéä¿¡ã䜿çšããŠãã¯ã©ã€ã¢ã³ãããã€ã¯ããµãŒãã¹ã«è¿œå ã§ããŸããèŠæ±ãåä¿¡ãããŠåŠçãããåŸãå¿çãçæãããŸãããã ããå¿çãçæãããåã«ãæ°ããã¯ã©ã€ã¢ã³ãã«é¢ããæ å ±ãå«ãã¡ãã»ãŒãžãã³ã³ãããªã³ã¡ãã»ãŒãžãã¥ãŒã«å ¬éãããä»ã®é¢å¿ã®ãããµãŒãã¹ããããå©çšã§ããããã«ãªããŸããã¡ãã»ãŒãžãã¥ãŒã«éä¿¡ãããæ å ±ã¯ããã€ã¯ããµãŒãã¹ã®è£éã«ãããHTTPå¿çã§çæããããã®ãšåãã«ããããšãããããã«ç°ãªãå ŽåããããŸããããã¯ãã¹ãŠããã€ã¯ããµãŒãã¹ãã©ã®ããã«èšèšãããŠããããããã³ãã€ã¯ããµãŒãã¹ãå®æœããªããã°ãªããªãQoSå¥çŽã«äŸåããŸãã
GraphQLã³ã³ã·ã¥ãŒããŒãšãµãŒãã¹éã®åæéä¿¡ãšéåæéä¿¡ã®äž¡æ¹ããµããŒãããAPIãã¯ãããžãŒã§ãããã®æè¡ãšGraphQLãµãã¹ã¯ãªãã·ã§ã³ã®è©³çŽ°æ å ±ãã¡ãã
ãã€ããªããã¢ãããŒãã®æãéèŠãªç¹åŸŽã¯ãä»ã®2ã€ã®ã¢ãããŒãã®ã¡ãªãããçµã¿åãããŠããããšã§ãããã ããä»éããæ¬ ç¹ãç¹ã«ããã©ãŒãã³ã¹ãäœäžãããæœåšçãªããã«ããã¯ãšããã€ã¯ããµãŒãã¹ã®ãã€ã³ããšãã¢ãŠããã§äœ¿çšããã2ã€ã®æ ¹æ¬çã«ç°ãªãã¿ã€ãã®ã€ã³ã¿ãŒãã§ã€ã¹ããµããŒãããå¿ èŠæ§ã«é¢é£ããè¿œå ã®è€éãããããŸãã
ãã€ã¯ããµãŒãã¹ã®ãã¹ããèšèšãããšãã«åé¡ãçºçããŸã
ãã®ãããªã¢ããªã±ãŒã·ã§ã³ã®ãã¹ãã«é¢ããŠãæåã«èŠããŠããã¹ãããšã¯ãåäžã®ãã€ã¯ããµãŒãã¹ãè€æ°ã®MOAã«ãã£ãŠå ±æãããããšã¯éåžžã«ãŸãã§ãããšããããšã§ããéåžžããã€ã¯ããµãŒãã¹ã¯ãã¢ããªã±ãŒã·ã§ã³å ã®ç¹å®ã®ãã¡ã€ã³ã«ããå€ãã®ãµãŒãã¹ã®1ã€ã§ããã¢ããªã±ãŒã·ã§ã³ã¢ãŒããã¯ãã£èšèšãžã®ãã€ã¯ããµãŒãã¹æåã®ã¢ãããŒãã®å©ç¹ã¯ãæ¬çªç°å¢ãšã®éã®ã³ãŒã転éãé«éã«ãªãããšã§ããããšãã°ãNetflixã«ã¯ 1æ¥ããã4,000ãè¶ ããå±éããããŸããïŒãã®ãªãªãŒã¹çã¯ãåŸæ¥ã®ã¢ããªã·ãã¯ã¢ããªã±ãŒã·ã§ã³ç°å¢ã§ã¯äžå¯èœã§ãã
MOAãã¹ãã¯ãã¯ãã¬ãã«ãšãã¯ãã¬ãã«ã®äž¡æ¹ã§è¡ãå¿ èŠãããããšãèŠããŠããå¿ èŠããããŸãã
ãã€ã¯ãã¬ãã«ã®ãã¹ã
ãã¯ãã¬ãã«ã§ã¯ãåãµãŒãã¹ã¯ãã®è²¬ä»»ç¯å²å ã§åŸ¹åºçã«ãã¹ãããå¿ èŠããããŸããããã€ãã®è§£éã«ããã°ãé¢æ°ã¯ãã€ã¯ããµãŒãã¹ã®å¢çãšèŠãªãããŸãã
åŸæ¥ã®åäœãã¹ããè¶ ãã
ãã€ã¯ããµãŒãã¹ã¯åäžã®æ©èœãšããŠã®ã¿æ瀺ãããã¹ãã§ãããšãããµãŒããŒã¬ã¹ãã©ãã€ã ã®äººæ°ãé«ãŸã£ãŠããããšãèãããšããã€ã¯ããµãŒãã¹å ã®æ©èœã«ç¹å¥ãªæ³šæãæãããšããå§ãã ãŸããããããå€ãã®å®è·µçãªãã¹ã¿ãŒã¯ããã€ã¯ããµãŒãã¹ã䜿çšããå Žåãåäœãã¹ãã«éå®ããåŸåããããŸããåäœãã¹ãã¯éåžžââãéåžžã«éããããã¹ãç°å¢ã§æ©èœããåäžã®æ©èœã察象ãšããŠããŸããããã€ã¯ããµãŒãã¹ã¯Webå šäœã®ãªãŒãã£ãšã³ã¹ã«ãµãŒãã¹ãæäŸããããã«èšèšãããŠããŸãããããã£ãŠããã¹ãæ¡ä»¶ã¯æ¥µç«¯ã§ãªããã°ãªããŸããã
ããšãã°ãåªãããã€ã¯ãã¬ãã«ã®ãã¹ãã®äžç°ãšããŠããã€ã¯ããµãŒãã¹ã®10äžã®ã€ã³ã¹ã¿ã³ã¹ãåæã«å®è¡ãããããããã®èŠæš¡ã§ã©ã®ããã«åäœãããã確èªã§ããŸããåäžã®åäœãã¹ããé©çšããŠãäžåºŠã«1ã€ã®é¢æ°ã ãããã¹ãããã ãã§ã¯äžååã§ããäœæ¥ããå¿ èŠã®ãããã¹ãã£ã³ã°ç°å¢ã®ææšãèæ ®ã«å ¥ããŠãé¢æ°ã®äœåãã®ã€ã³ã¹ã¿ã³ã¹ã§åæã«ãã®ãããªãã¹ããå®è¡ããå¿ èŠããããŸãã
ãããã€ã¡ã³ããŠãããããã¹ãããŸã
ãã€ã¯ããµãŒãã¹ã®æ©èœããã¹ãããã ãã§ãªãããã€ã¯ããµãŒãã¹ããªãªãŒã¹ããããããã€ã¡ã³ããŠãããã®ãã¹ãã«ã泚æãæãå¿ èŠããããŸããéåžžããã€ã¯ããµãŒãã¹ã¯ãKubernetesã DockerSwarmãªã©ã®ãªãŒã±ã¹ãã¬ãŒã·ã§ã³ãã¯ãããžãŒã®äžéšãšããŠã³ã³ãããŒãšã㊠ãããã€ãã ãŸããã³ã³ãããªãŒã±ã¹ãã¬ãŒã·ã§ã³ã®éèŠãªåŽé¢ã¯ããã€ã¯ããµãŒãã¹ã®é·æçãªåŸ©å åã確ä¿ããããšã§ãã
ãã€ã¯ããµãŒãã¹ã¯ããã¹ãã®é害ãšãã€ã¯ããµãŒãã¹èªäœã®ãšã©ãŒã®äž¡æ¹ãåå ã§ãããŸããŸãªçç±ã§å€±æããå¯èœæ§ããããšèããããŠããŸããäœåãã®ã³ã³ããã®åææäœäžã«ãããçš®ã®çŸåšã®èª€åäœãçºçããã®ã¯ããæ®éã®ããšã§ãããã¹ãã®éèŠæ§ã¯ãã²ãŒã ããã®ãã€ã¯ããµãŒãã¹ã®æ£ãã çµäºãããã®æ£ããæ©èœãšåããããéèŠã§ãããšããããšã§ãããã€ã¯ãã¬ãã«ã®ãã¹ãã«ãããã·ã¹ãã ã®ããããèŠæš¡ã§ããã€ã¯ããµãŒãã¹ãé©åã«æ©èœããé©åã«åæ¢ããããšãä¿èšŒãããŸãã
ããªãã«èµ·ãããã¹ãŠã絶察ã«èšé²ãããŠããããšã確èªããŠãã ãã
ãã¹ãã§ã¯ããã€ã¯ããµãŒãã¹ã§çºçãããã¹ãŠã®éèŠãªã€ãã³ããé©åã«ãã°ã«èšé²ãããããšã確èªããå¿ èŠããããŸããåæ§ã«éèŠãªããšãšããŠããããã®ãã°ãšã³ããªãç解ããããšãã§ããŸãããã€ã¯ããµãŒãã¹ã®äžçã§ã¯ãç¹ã«åäœã®é 次å®è¡ããªãéåæMOAã®å Žåããã®ã³ã°ã¯éåžžã«éèŠã§ããå€ãã®å Žåããã°ããŒã¿ã®ã¿ããã¢ããªã±ãŒã·ã§ã³ã§äœãèµ·ãã£ãŠããããç解ããã®ã«åœ¹ç«ã¡ãŸãã
ãã¯ããã¹ã
MOAãåæãéåæããã€ããªããã®ãããã§ãã£ãŠããå³å¯ãªãã¹ãã¢ãŒãã衚瀺ãããŸãããã€ã¯ããµãŒãã¹ããã¯ãã¬ãã«ã§ãã¹ãããå Žåãæºè¶³ã§ãããã®ãšããŠããµãŒãã¹ééä¿¡ãšãããã€ã¡ã³ãããã»ã¹ã®2ã€ã®åŽé¢ãããããšã確èªããå¿ èŠããããŸãã
ã€ã³ããªãžã§ã³ããªãµãŒãã¹ééä¿¡ã®ç¢ºä¿
ãã€ã¯ããµãŒãã¹ã¯ãå®çŸ©äžãäºãã«ç¬ç«ããŠããŸããåä¿¡ããæ å ±ã«åºã¥ããŠäœããã¹ããã決å®ããããããµãŒãã¹ééä¿¡ã®ç²ŸåºŠã¯ããã€ã¯ããµãŒãã¹æåã®ã¢ããªã±ãŒã·ã§ã³ã®å šäœçãªéçšã«ãšã£ãŠéèŠã§ãã
ãµãŒãã¹ééä¿¡ãæäŸãããšããããšã¯ãé©åãªæ å ±ãå¿ èŠãªå Žæã«ç¢ºå®ã«å±ãããã«ããããšãæå³ããŸãããã¹ãã§ã¯ãã¡ãã»ãŒãžãã©ã®ããã«äº€æãããã©ã®ããã«åŠçããããã远跡ã§ããå¿ èŠããããŸããããã¯ãHTTPèŠæ±/å¿çéä¿¡ãšãã¡ãã»ãŒãžãããŒã«ãŒãä»ããŠäŒæãããéåæã¡ãã»ãŒãžã®äº€æã®äž¡æ¹ã«åœãŠã¯ãŸããŸãããã¹ãã¯ã確å®ãªã·ã¹ãã ãã¹ã確ä¿ããããã«ã¡ãã»ãŒãžåœ¢åŒããµããŒããããŠããããšã確èªããã®ã«åœ¹ç«ã€ã¯ã ã§ãããããã³èª€ã£ãŠãã©ãŒããããããã¡ãã»ãŒãžã¯æåŠãããååãªèª¬æããããŸãïŒãäžæ£ãªã¡ãã»ãŒãžããšã©ãŒã ãã§ã¯ãããŸããïŒã
ç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ãšç¶ç¶çãããã€ã®ãã¹ã
çµç¹åãããç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ãšç¶ç¶çãããã€ã¡ã³ãïŒCI / CDïŒããã»ã¹ã¯ããœãããŠã§ã¢éçºãã©ãã€ã ã«äžå¯æ¬ ã§ããããã€ã¯ããµãŒãã¹ã¢ããªã±ãŒã·ã§ã³ã«é¢ããŠã¯ãå¹ççã§æ£ç¢ºãã€é«éãªCI / CDããã»ã¹ãéèŠã§ããMOAã¯ãæ¯æ¥æ°çŸåã®æŽæ°ã®å²åã§æ¹èšãããå¯èœæ§ãããããããã«ããé ããŠããåäžã®ãã€ã¯ããµãŒãã¹ãããã«ããã¯ã«ãªãããªãªãŒã¹ããã»ã¹å šäœã®é床ãäœäžããå¯èœæ§ããããŸãã
å®å šã«ãã¬ã€ããããã®æè¯ã®æ¹æ³ã¯ãCI / CDãã€ãã©ã€ã³ãã¹ãã«ä»ã®é«ã¬ãã«ãã¹ãã¢ãŒããšåãåªå é äœãäžããããšã§ããã³ãŒãå ã®ã¢ãŒãã£ãã¡ã¯ãã«ãããã«ããã€ã¯ããµãŒãã¹ã®é 延ããã€ã¯ããµãŒãã¹ããã¹ããããŠããã©ã³ã¿ã€ã ã®ããããžã§ãã³ã°ã®é 延ãæ¢ã«ãããã€ãããŠãããã€ã¯ããµãŒãã¹ã®ã¢ãããªããã®é 延ãªã©ã®åé¡ãç¹å®ããŠä¿®æ£ããããšã¯ãå¥å šãªCI / CDãã€ãã©ã€ã³ã®åææ¡ä»¶ã§ãããã€ã¯ããµãŒãã¹ãã·ã£ãã«ã®ããã«è€éã§ãã£ãŠããéçšãŠããããè¿ éã«ãããã€ããã³ãããã€ã§ããªãå Žåã¯ãã»ãšãã©åœ¹ã«ç«ã¡ãŸããã
çµè«
ãã€ã¯ããµãŒãã¹ã¯æ¬åœã®ã¯ã€ã«ãã«ãŒãã§ãããã€ã¯ããµãŒãã¹æåã®ã¢ããªã±ãŒã·ã§ã³ã¯ãæ°æ©èœãã»ãŒè¶ é«éã§ãªã³ã©ã€ã³ã«ããããã«å¿ èŠãªæè»æ§ãšé床ãæäŸããŸããä»æ¥ãäœçŸäžãã®ãŠãŒã¶ãŒããµããŒããã倧äŒæ¥ããããåŠã³ãŸããããã¢ããªã±ãŒã·ã§ã³ãWebå šäœã®èŠæš¡ã«éãããšãæ¯æ¥ãŸããŸãå€ãã®äŒæ¥ããã®ã¢ãŒããã¯ãã£ã¹ã¿ã€ã«ãæ¡çšããŠããŸãã
å€ãã®äŒæ¥ããã€ã¯ããµãŒãã¹æåã®ã¢ãŒããã¯ãã£ã®ç²Ÿç¥ãéçºããã»ã¹ã«çå£ã«åãå ¥ããããšããŠããŸããããããã®MOAã¯ãããšããšã¢ããªã·ãã¯ã¢ããªã±ãŒã·ã§ã³ã察象ãšããææ³ã䜿çšããŠãã¹ããããããšããããããŸããããã¯è¿èŠçŒçãªã¢ãããŒãã§ãã
ããã©ããããäŒæ¥ã¯ããã€ã¯ããµãŒãã¹ã®ç¬ç«æ§ãšããããã®ãã€ã¯ããµãŒãã¹ã䜿çšããã¢ããªã±ãŒã·ã§ã³ã®ä¿ææ§ã確ä¿ããããã«èšèšãããææ°ã®ãã¹ãææ³ãåŠã¶å¿ èŠããããŸããéçºããŒã ãšãã¹ã¿ãŒããã€ã¯ããµãŒãã¹ã¢ããªã±ãŒã·ã§ã³ã®èšèšã®èåŸã«ããååãåæãããããšãã§ããã°ãäŒç€Ÿå šäœããã€ã¯ããµãŒãã¹ã®é·æã«ããã«äŸåããããšãã§ããŸãã