ãã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ã®ãã¶ã€ã³ãã¿ãŒã³ãæ¢ããŸããã¹ã±ãŒã©ãã«ã§å埩åããããã°ããŒãã«ã«åæ£ããã¢ããªã±ãŒã·ã§ã³ã®æ§ç¯æ¹æ³ãåŠã³ãŸããäºäŸãšãã¹ããã©ã¯ãã£ã¹ãå«ã¿ãŸãã
ãã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ïŒã°ããŒãã«ãªæåã®ããã®ãã¶ã€ã³ãã¿ãŒã³
ãã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ã¯ãã¢ããªã±ãŒã·ã§ã³ã®æ§ç¯ãšãããã€ã®æ¹æ³ã«é©åœããããããŸããããã®ã¢ãããŒãã¯ãå€§èŠæš¡ãªã¢ããªã±ãŒã·ã§ã³ãããå°ããç¬ç«ãããµãŒãã¹ã«åå²ããããšãç¹åŸŽãšããã¹ã±ãŒã©ããªãã£ãå埩åãä¿ææ§ã®é¢ã§å€§ããªå©ç¹ããããããŸããã°ããŒãã«ãªãŠãŒã¶ãŒå±€ã«ãšã£ãŠã广çãªãã¶ã€ã³ãã¿ãŒã³ãçè§£ãå®è£ ããããšã¯ã忣ã·ã¹ãã ã®èª²é¡ã«èããäžçäžã®å€æ§ãªãŠãŒã¶ãŒããŒã¹ã«å¯Ÿå¿ã§ããã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããããã«äžå¯æ¬ ã§ãã
ãã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ãšã¯ïŒ
ãã®äžæ žã«ãããŠããã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ã¯ãã¢ããªã±ãŒã·ã§ã³ãççµåãªãµãŒãã¹ã®éåãšããŠæ§æããããšãå«ã¿ãŸããåãµãŒãã¹ã¯ç¹å®ã®ããžãã¹èœåã«çŠç¹ãåœãŠãç¬ç«ããŠåäœããŸãããã®ç¬ç«æ§ã«ãããããŒã ã¯å¿ èŠã«å¿ããŠç°ãªãæè¡ã䜿çšãããµãŒãã¹ãåå¥ã«éçºããããã€ãã¹ã±ãŒã«ããããšãã§ããŸããããã¯ããã¹ãŠã®ã³ã³ããŒãã³ããäžç·ã«ãã³ãã«ãããåäžã®ãŠããããšããŠãããã€ãããã¢ããªã·ãã¯ã¢ããªã±ãŒã·ã§ã³ããã®å€§ããªè»¢æã§ãã
ãã€ã¯ããµãŒãã¹ã®äž»ãªå©ç¹ïŒ
- ã¹ã±ãŒã©ããªãã£ïŒ åã ã®ãµãŒãã¹ã¯éèŠã«åºã¥ããŠç¬ç«ããŠã¹ã±ãŒã«ã§ãããªãœãŒã¹å©çšãæé©åããŸããç°ãªãã¿ã€ã ãŸãŒã³ã§ã®ããŒã¯ã·ã§ããã³ã°ã·ãŒãºã³äžã«ã補åã«ã¿ãã°ãµãŒãã¹ãå€§å¹ ã«ã¹ã±ãŒã«ããå¿ èŠãããã°ããŒãã«ãªeã³ããŒã¹ãã©ãããã©ãŒã ãæ³åããŠã¿ãŠãã ããã
- å埩åïŒ 1ã€ã®ãµãŒãã¹ã倱æããŠãã圱é¿ã¯éé¢ãããã¢ããªã±ãŒã·ã§ã³å šäœãããŠã³ããã®ãé²ããŸããäŸãã°ãã·ã³ã¬ããŒã«ã®æ±ºæžåŠçãµãŒãã¹ã«åœ±é¿ãäžãã屿çãªé害ãããšãŒããããã¢ã¡ãªã«ã®ãŠãŒã¶ãŒã®ããã«ãã©ãããã©ãŒã å šäœãããŠã³ãããã¹ãã§ã¯ãããŸããã
- ããéãéçºãšãããã€ïŒ ããå°ããªã³ãŒãããŒã¹ãšç¬ç«ãããããã€ãµã€ã¯ã«ã¯ãããéãéçºãšãããã€æéã«ã€ãªãããŸããããã¯ãå€åããåžå Žã®èŠæ±ã«é©å¿ããã°ããŒãã«ãªé¡§å®¢åãã«æ°æ©èœãè¿ éã«ç«ã¡äžããããã«äžå¯æ¬ ã§ãã
- æè¡ã®å€æ§æ§ïŒ ç°ãªããµãŒãã¹ã¯ç°ãªãæè¡ã䜿çšããŠæ§ç¯ã§ãããããããŒã ã¯ä»äºã«æé©ãªããŒã«ãéžæã§ããŸããããŒã¿åæãµãŒãã¹ã¯Pythonã§æžãããããã³ããšã³ããµãŒãã¹ã¯JavaScriptã§æžããããããããŸããã
- ããŒã ã®èªåŸæ§ã®åäžïŒ ããŒã ã¯èªåãã¡ã®ãµãŒãã¹ãææãéå¶ããããšãã§ããèªåŸæ§ãè²ã¿ãäŸåé¢ä¿ãæžãããŸãã
äžå¯æ¬ ãªãã€ã¯ããµãŒãã¹ãã¶ã€ã³ãã¿ãŒã³
ãã€ã¯ããµãŒãã¹ã广çã«å®è£ ããã«ã¯ãããŸããŸãªãã¶ã€ã³ãã¿ãŒã³ãžã®æ·±ãçè§£ãå¿ èŠã§ãããããã®ãã¿ãŒã³ã¯ã忣ã·ã¹ãã ã§ééããäžè¬çãªèª²é¡ã«å¯Ÿããå®çžŸã®ãã解決çãæäŸããŸããããã€ãã®éèŠãªãã¶ã€ã³ãã¿ãŒã³ãæ¢ã£ãŠã¿ãŸãããïŒ
1. APIã²ãŒããŠã§ã€ãã¿ãŒã³
APIã²ãŒããŠã§ã€ã¯ããã¹ãŠã®ã¯ã©ã€ã¢ã³ããªã¯ãšã¹ãã«å¯Ÿããåäžã®ãšã³ããªãã€ã³ããšããŠæ©èœããŸããã«ãŒãã£ã³ã°ãèªèšŒãèªå¯ãããã³ãã®ä»ã®æšªæçãªé¢å¿äºãåŠçããŸããã°ããŒãã«ã¢ããªã±ãŒã·ã§ã³ã®å ŽåãAPIã²ãŒããŠã§ã€ã¯ç°ãªããªãŒãžã§ã³éã®ãã©ãã£ãã¯ç®¡çãšããŒããã©ã³ã·ã³ã°ãåŠçã§ããŸãã
äž»ãªè²¬åïŒ
- ã«ãŒãã£ã³ã°ïŒ ãªã¯ãšã¹ããé©åãªãµãŒãã¹ã«è»¢éããã
- èªèšŒïŒ ãŠãŒã¶ãŒã®èº«å ã確èªããã
- èªå¯ïŒ ãŠãŒã¶ãŒãå¿ èŠãªæš©éãæã£ãŠããããšã確èªããã
- ã¬ãŒãå¶éïŒ ãµãŒãã¹ãéè² è·ããä¿è·ããã
- ç£èŠãšãã®ã³ã°ïŒ ããã©ãŒãã³ã¹åæãšãã©ãã«ã·ã¥ãŒãã£ã³ã°ã®ããã®ããŒã¿ãåéããã
- ãããã³ã«å€æïŒ å¿ èŠã«å¿ããŠç°ãªããããã³ã«éã§å€æããã
äŸïŒ ã°ããŒãã«ãªã¹ããªãŒãã³ã°ãµãŒãã¹ã¯ãAPIã²ãŒããŠã§ã€ã䜿çšããŠæ§ã ãªããã€ã¹ïŒã¹ããŒãTVãæºåž¯é»è©±ããŠã§ããã©ãŠã¶ïŒããã®ãªã¯ãšã¹ããåŠçããããããé©åãªããã¯ãšã³ããµãŒãã¹ïŒã³ã³ãã³ãã«ã¿ãã°ããŠãŒã¶ãŒèªèšŒã決æžåŠçïŒã«ã«ãŒãã£ã³ã°ããŸããã²ãŒããŠã§ã€ã¯ãŸããä¹±çšãé²ãããã®ã¬ãŒãå¶éãšãç°ãªãå°ççãªãŒãžã§ã³ïŒäŸïŒåç±³ããšãŒããããã¢ãžã¢å€ªå¹³æŽïŒã®è€æ°ã®ãµãŒãã¹ã€ã³ã¹ã¿ã³ã¹ã«ãã©ãã£ãã¯ã忣ããããã®ããŒããã©ã³ã·ã³ã°ãå®è¡ããŸãã
2. ãµãŒãã¹ãã£ã¹ã«ããªãã¿ãŒã³
åçãªãã€ã¯ããµãŒãã¹ç°å¢ã§ã¯ããµãŒãã¹ã¯é »ç¹ã«åºçŸãããæ¶ãããããŸãããµãŒãã¹ãã£ã¹ã«ããªãã¿ãŒã³ã¯ããµãŒãã¹ãäºããèŠã€ããŠéä¿¡ã§ããããã«ããŸãããµãŒãã¹ã¯ãµãŒãã¹ã¬ãžã¹ããªã«èªèº«ã®å Žæãç»é²ããä»ã®ãµãŒãã¹ã¯ã¬ãžã¹ããªãã¯ãšãªããŠç¹å®ã®ãµãŒãã¹ã®å ŽæãèŠã€ããããšãã§ããŸãã
äžè¬çãªå®è£ ïŒ
- ConsulïŒ ãµãŒãã¹ãã£ã¹ã«ããªããã«ã¹ãã§ãã¯ãèšå®ãæäŸãã忣ãµãŒãã¹ã¡ãã·ã¥ã
- etcdïŒ ãµãŒãã¹ãã£ã¹ã«ããªãšèšå®ç®¡çã«äœ¿çšããã忣ããŒããªã¥ãŒã¹ãã¢ã
- ZooKeeperïŒ èšå®æ å ±ã®ç¶æãåœåã忣åæã®æäŸãè¡ãäžå€®éæš©åãµãŒãã¹ã
- KubernetesãµãŒãã¹ãã£ã¹ã«ããªïŒ Kubernetesã¯ã³ã³ããåãããã¢ããªã±ãŒã·ã§ã³ã®ããã®çµã¿èŸŒã¿ãµãŒãã¹ãã£ã¹ã«ããªæ©èœãæäŸããŸãã
äŸïŒ ã°ããŒãã«ãªé è»ã¢ããªã±ãŒã·ã§ã³ãèããŠã¿ãŸãããããŠãŒã¶ãŒãé è»ããªã¯ãšã¹ããããšããªã¯ãšã¹ãã¯æãè¿ãå©çšå¯èœãªãã©ã€ããŒã«ã«ãŒãã£ã³ã°ãããå¿ èŠããããŸãããµãŒãã¹ãã£ã¹ã«ããªã¡ã«ããºã ã¯ããªã¯ãšã¹ããç°ãªããªãŒãžã§ã³ã§å®è¡ãããŠããé©åãªãã©ã€ããŒãµãŒãã¹ã€ã³ã¹ã¿ã³ã¹ãèŠã€ããã®ãå©ããŸãããã©ã€ããŒãå Žæãç§»åãããµãŒãã¹ãã¹ã±ãŒã«ã¢ãããŸãã¯ããŠã³ããã«ã€ããŠããµãŒãã¹ãã£ã¹ã«ããªã¯é è»ãµãŒãã¹ãåžžã«ãã©ã€ããŒã®çŸåšäœçœ®ãç¥ã£ãŠããããšãä¿èšŒããŸãã
3. ãµãŒããããã¬ãŒã«ãŒãã¿ãŒã³
忣ã·ã¹ãã ã§ã¯ããµãŒãã¹ã®é害ã¯é¿ããããŸããããµãŒããããã¬ãŒã«ãŒãã¿ãŒã³ã¯ããªã¢ãŒããµãŒãã¹ã®å¥å šæ§ãç£èŠããããšã§é£éçãªé害ãé²ããŸãããµãŒãã¹ãå©çšã§ããªããªã£ããé ããªã£ãããããšããµãŒããããã¬ãŒã«ãŒãéããé害ã®ãããµãŒãã¹ãžã®ãããªããªã¯ãšã¹ãã®éä¿¡ãé²ããŸããã¿ã€ã ã¢ãŠãæéã®åŸããµãŒããããã¬ãŒã«ãŒã¯ããŒããªãŒãã³ç¶æ ã«ç§»è¡ããéãããæ°ã®ãªã¯ãšã¹ãããµãŒãã¹ã®å¥å šæ§ããã¹ãããããšãèš±å¯ããŸãããããã®ãªã¯ãšã¹ããæåããã°ãµãŒããããã¬ãŒã«ãŒã¯éããããã§ãªããã°åã³éããŸãã
å©ç¹ïŒ
- é£éçãªé害ã®é²æ¢ïŒ 倱æãããªã¯ãšã¹ãã«ãã£ãŠã¢ããªã±ãŒã·ã§ã³ãå§åãããã®ãé²ããŸãã
- å埩åã®åäžïŒ é害ã®ãããµãŒãã¹ãã¢ããªã±ãŒã·ã§ã³å šäœã«åœ±é¿ãäžããããšãªãå埩ã§ããããã«ããŸãã
- é害ã®åé¢ïŒ é害ã®ãããµãŒãã¹ãåé¢ããã¢ããªã±ãŒã·ã§ã³ã®ä»ã®éšåãæ©èœãç¶ããããšãå¯èœã«ããŸãã
äŸïŒ åœéçãªèªç©ºäŒç€Ÿã®äºçŽã·ã¹ãã ãã€ã³ãã®æ±ºæžåŠçãµãŒãã¹ã§é害ãçºçããå ŽåããµãŒããããã¬ãŒã«ãŒã¯ãã©ã€ãäºçŽãµãŒãã¹ãé害ã®ããæ±ºæžãµãŒãã¹ã«ç¹°ãè¿ããªã¯ãšã¹ããéä¿¡ããã®ãé²ãããšãã§ããŸãã代ããã«ããŠãŒã¶ãŒãã¬ã³ããªãŒãªãšã©ãŒã¡ãã»ãŒãžã衚瀺ããããäžçäžã®ä»ã®ãŠãŒã¶ãŒã«åœ±é¿ãäžããããšãªã代æ¿ã®æ¯æããªãã·ã§ã³ãæäŸãããã§ããŸãã
4. ããŒã¿æŽåæ§ãã¿ãŒã³
è€æ°ã®ãµãŒãã¹ã«ãããããŒã¿æŽåæ§ãç¶æããããšã¯ããã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ã«ãããéèŠãªèª²é¡ã§ãããã®åé¡ã«å¯ŸåŠããããã«ããã€ãã®ãã¿ãŒã³ã䜿çšã§ããŸãïŒ
- Sagaãã¿ãŒã³ïŒ 忣ãã©ã³ã¶ã¯ã·ã§ã³ããäžé£ã®ããŒã«ã«ãã©ã³ã¶ã¯ã·ã§ã³ã«åå²ããŠç®¡çããŸããããã«ã¯ã³ã¬ãªã°ã©ãã£ããŒã¹ãšãªãŒã±ã¹ãã¬ãŒã·ã§ã³ããŒã¹ã®2ã€ã®äž»èŠãªã¿ã€ãããããŸããã³ã¬ãªã°ã©ãã£ããŒã¹ã®Sagaã§ã¯ãåãµãŒãã¹ãã€ãã³ãããªãã¹ã³ããŠããã«å¿ããŠåå¿ããŸãããªãŒã±ã¹ãã¬ãŒã·ã§ã³ããŒã¹ã®Sagaã§ã¯ãäžå€®ã®ãªãŒã±ã¹ãã¬ãŒã¿ãŒããã©ã³ã¶ã¯ã·ã§ã³ã調æŽããŸãã
- çµææŽåæ§ïŒ ããŒã¿ã®å€æŽã¯éåæã§äŒæãããäžæçãªäžæŽåã蚱容ããŸãããæçµçãªæŽåæ§ãä¿èšŒããŸããããã¯Sagaãã¿ãŒã³ãšçµã¿åãããŠãã䜿çšãããŸãã
- è£åãã©ã³ã¶ã¯ã·ã§ã³ïŒ ãã©ã³ã¶ã¯ã·ã§ã³ã倱æããå Žåãæåãããã©ã³ã¶ã¯ã·ã§ã³ã«ãã£ãŠè¡ããã倿ŽãããŒã«ããã¯ããããã«è£åãã©ã³ã¶ã¯ã·ã§ã³ãå®è¡ãããŸãã
äŸïŒ åœé泚æãåŠçããeã³ããŒã¹ã¢ããªã±ãŒã·ã§ã³ãèããŠã¿ãŸãããããŠãŒã¶ãŒã泚æãããšã泚æãµãŒãã¹ãåšåº«ãµãŒãã¹ã決æžãµãŒãã¹ãªã©ãè€æ°ã®ãµãŒãã¹ãé¢äžããå¿ èŠããããŸããSagaãã¿ãŒã³ã䜿çšããŠã泚æãµãŒãã¹ããã©ã³ã¶ã¯ã·ã§ã³ãéå§ããŸããåšåº«ãå©çšå¯èœã§æ¯æããæåããå Žåãæ³šæã¯ç¢ºå®ãããŸããããããã®ã¹ãããã倱æããå ŽåãããŒã¿æŽåæ§ã確ä¿ããããã«è£åãã©ã³ã¶ã¯ã·ã§ã³ïŒäŸïŒåšåº«ã®è§£æŸãæ¯æãã®è¿éïŒãããªã¬ãŒãããŸããããã¯ãç°ãªã決æžã²ãŒããŠã§ã€ããã«ãã£ã«ã¡ã³ãã»ã³ã¿ãŒãé¢äžããå¯èœæ§ãããåœé泚æã«ãšã£ãŠç¹ã«éèŠã§ãã
5. èšå®ç®¡çãã¿ãŒã³
è€æ°ã®ãµãŒãã¹ã«ãããèšå®ã®ç®¡çã¯è€éã«ãªãããšããããŸããèšå®ç®¡çãã¿ãŒã³ã¯ãèšå®å€ãä¿åããã³ç®¡çããããã®äžå€®éæš©çãªãªããžããªãæäŸããŸããããã«ããããµãŒãã¹ãåãããã€ããããšãªãèšå®å€ãæŽæ°ã§ããŸãã
äžè¬çãªã¢ãããŒãïŒ
- äžå€®éæš©åèšå®ãµãŒããŒïŒ ãµãŒãã¹ã¯äžå€®ãµãŒããŒããèšå®ãååŸããŸãã
- Configuration-as-CodeïŒ èšå®ã¯ããŒãžã§ã³ç®¡çãããã³ãŒããªããžããªã«ä¿åãããŸãã
- ç°å¢å€æ°ïŒ èšå®ã¯ç°å¢å€æ°ãä»ããŠãµãŒãã¹ã«æž¡ãããŸãã
äŸïŒ ç°ãªããªãŒãžã§ã³ã«ãããã€ããããµãŒãã¹ãæã€ã°ããŒãã«ã¢ããªã±ãŒã·ã§ã³ã¯ãç°å¢ã«ãã£ãŠç°ãªãããŒã¿ããŒã¹æ¥ç¶æååãAPIããŒããã®ä»ã®èšå®ãæ§æããå¿ èŠããããŸããäŸãã°ãäžå€®éæš©åèšå®ãµãŒããŒã¯ãããã®èšå®ãä¿æã§ããç°ãªããªãŒãžã§ã³ã®èŠä»¶ïŒäŸïŒç°ãªãããŒã¿ã»ã³ã¿ãŒã®ããã®ç°ãªãããŒã¿ããŒã¹èªèšŒæ å ±ïŒã«é©å¿ããããã®ç°¡åãªæŽæ°ãå¯èœã«ããŸãã
6. ãã®ã³ã°ãšç£èŠãã¿ãŒã³
广çãªãã®ã³ã°ãšç£èŠã¯ãåé¡ã®ãã©ãã«ã·ã¥ãŒãã£ã³ã°ãããã©ãŒãã³ã¹ã®çè§£ããã€ã¯ããµãŒãã¹ã®å¥å šæ§ã®ç¢ºä¿ã«äžå¯æ¬ ã§ããäžå€®éæš©çãªãã®ã³ã°ãšç£èŠãœãªã¥ãŒã·ã§ã³ã¯ããµãŒãã¹ãç°ãªããªãŒãžã§ã³ãã¿ã€ã ãŸãŒã³ã«ãããã€ãããŠããã°ããŒãã«ã¢ããªã±ãŒã·ã§ã³ã«ãšã£ãŠæ¥µããŠéèŠã§ãã
äž»ãªèæ ®äºé ïŒ
- äžå€®éæš©ãã®ã³ã°ïŒ ãã¹ãŠã®ãµãŒãã¹ã®ãã°ãäžå€®ã®å Žæã«éçŽããŸãã
- 忣ãã¬ãŒã·ã³ã°ïŒ è€æ°ã®ãµãŒãã¹ã«ããããªã¯ãšã¹ãã远跡ããŠãããã©ãŒãã³ã¹ã®ããã«ããã¯ãç¹å®ããŸãã
- ãªã¢ã«ã¿ã€ã ç£èŠïŒ ãªã¯ãšã¹ãã¬ãŒãããšã©ãŒã¬ãŒããå¿çæéãªã©ã®äž»èŠãªã¡ããªã¯ã¹ãç£èŠããŸãã
- ã¢ã©ãŒãïŒ é倧ãªåé¡ã«ã€ããŠããŒã ã«éç¥ããããã®ã¢ã©ãŒããèšå®ããŸãã
äŸïŒ ã°ããŒãã«ãªãœãŒã·ã£ã«ã¡ãã£ã¢ãã©ãããã©ãŒã ã¯ãäžå€®éæš©ãã®ã³ã°ãšåæ£ãã¬ãŒã·ã³ã°ã䜿çšããŠãããŸããŸãªãµãŒãã¹ã®ããã©ãŒãã³ã¹ãç£èŠããŸãããªãŒã¹ãã©ãªã¢ã®ãŠãŒã¶ãŒããããªã®ã¢ããããŒãæã«ããã©ãŒãã³ã¹ãé ããšå ±åããå ŽåãããŒã ã¯åæ£ãã¬ãŒã·ã³ã°ã䜿çšããŠé å»¶ã®åå ãšãªã£ãŠããç¹å®ã®ãµãŒãã¹ïŒäŸïŒãšãŒãããã®ãã©ã³ã¹ã³ãŒãã£ã³ã°ãµãŒãã¹ïŒãç¹å®ããåé¡ã«å¯ŸåŠã§ããŸããç£èŠããã³ã¢ã©ãŒãã·ã¹ãã ã¯ããŠãŒã¶ãŒãžã®åœ±é¿ãæ¡å€§ããåã«åé¡ãç©æ¥µçã«æ€åºããèŠåããããšãã§ããŸãã
7. CQRSïŒã³ãã³ãã¯ãšãªè²¬ååé¢ïŒãã¿ãŒã³
CQRSã¯èªã¿åãæäœãšæžãèŸŒã¿æäœãåé¢ããŸããã³ãã³ãïŒæžãèŸŒã¿æäœïŒã¯ããŒã¿ã¹ãã¢ãæŽæ°ããã¯ãšãªïŒèªã¿åãæäœïŒã¯ããŒã¿ãååŸããŸãããã®ãã¿ãŒã³ã¯ãç¹ã«èªã¿åãã®å€ãã¯ãŒã¯ããŒãã§ããã©ãŒãã³ã¹ãšã¹ã±ãŒã©ããªãã£ãåäžãããããšãã§ããŸãã
å©ç¹ïŒ
- ããã©ãŒãã³ã¹ã®åäžïŒ èªã¿åãæäœã¯æžãèŸŒã¿æäœããç¬ç«ããŠæé©åã§ããŸãã
- ã¹ã±ãŒã©ããªãã£ïŒ èªã¿åãæäœãšæžãèŸŒã¿æäœã¯ç¬ç«ããŠã¹ã±ãŒã«ã§ããŸãã
- æè»æ§ïŒ èªã¿åãæäœãšæžãèŸŒã¿æäœã«ç°ãªãããŒã¿ã¢ãã«ã䜿çšã§ããŸãã
äŸïŒ åœéçãªéè¡ã¢ããªã±ãŒã·ã§ã³ãæžãèŸŒã¿æäœïŒäŸïŒãã©ã³ã¶ã¯ã·ã§ã³ã®åŠçïŒã¯äžé£ã®ãµãŒãã¹ã«ãã£ãŠåŠçãããèªã¿åãæäœïŒäŸïŒå£åº§æ®é«ã®è¡šç€ºïŒã¯å¥ã®ãµãŒãã¹ã«ãã£ãŠåŠçãããŸããããã«ãããã·ã¹ãã ã¯èªã¿åãããã©ãŒãã³ã¹ãæé©åããèªã¿åãæäœãç¬ç«ããŠã¹ã±ãŒã«ã§ããäžçäžã®å€æ°ã®åæãŠãŒã¶ãŒãå£åº§æ å ±ã«ã¢ã¯ã»ã¹ããã®ãåŠçããããã«äžå¯æ¬ ã§ãã
8. BFFïŒBackends for FrontendsïŒãã¿ãŒã³
BFFãã¿ãŒã³ã¯ãã¯ã©ã€ã¢ã³ãã¢ããªã±ãŒã·ã§ã³ã®ã¿ã€ãããšïŒäŸïŒãŠã§ããã¢ãã€ã«ïŒã«å°çšã®ããã¯ãšã³ããµãŒãã¹ãäœæããŸããããã«ãããåã¯ã©ã€ã¢ã³ãã®ç¹å®ã®ããŒãºã«åãããŠããã¯ãšã³ãã調æŽãããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãæé©åã§ããŸããããã¯ã倿§ãªãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ãŒã¹ãšããã€ã¹æ©èœãæã€ã°ããŒãã«ã¢ããªã±ãŒã·ã§ã³ã§äœæ¥ããå Žåã«ç¹ã«åœ¹ç«ã¡ãŸãã
å©ç¹ïŒ
- ãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã®åäžïŒ 調æŽãããããã¯ãšã³ãã¯ãç¹å®ã®ã¯ã©ã€ã¢ã³ãåãã«ããŒã¿ãæé©åã§ããŸãã
- è€éãã®è»œæžïŒ ã¯ã©ã€ã¢ã³ããšããã¯ãšã³ããµãŒãã¹éã®çžäºäœçšãç°¡çŽ åããŸãã
- æè»æ§ã®åäžïŒ ã¯ã©ã€ã¢ã³ãåºæã®ããŒãºãžã®è¿ éãªã€ãã¬ãŒã·ã§ã³ãšé©å¿ãå¯èœã«ããŸãã
äŸïŒ ã°ããŒãã«ãªæ è¡äºçŽãŠã§ããµã€ãããã®ãŠã§ããµã€ãã¯ããã¹ã¯ããããã©ãŠã¶åãã«æé©åããããŠã§ãã¢ããªã±ãŒã·ã§ã³çšã®BFFãšãã¢ãã€ã«ããã€ã¹åãã«æé©åãããã¢ãã€ã«ã¢ããªã±ãŒã·ã§ã³çšã®å¥ã®BFFã䜿çšããŸããããã«ãããåã¢ããªã±ãŒã·ã§ã³ã¯æãå¹ççãªæ¹æ³ã§ããŒã¿ãååŸããŠè¡šç€ºã§ããã¢ãã€ã«ããã€ã¹ã®éãããç»é¢ã¹ããŒã¹ãšããã©ãŒãã³ã¹ã®å¶çŽãèæ ®ããŠãäžçäžã®æ è¡è ã«åªãããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãæäŸããŸãã
ãã€ã¯ããµãŒãã¹å®è£ ã®ãã¹ããã©ã¯ãã£ã¹
ãã€ã¯ããµãŒãã¹ãæåè£ã«å®è£ ããã«ã¯ãç¹å®ã®ãã¹ããã©ã¯ãã£ã¹ã«åŸãå¿ èŠããããŸãïŒ
- æç¢ºãªãµãŒãã¹å¢çã®å®çŸ©ïŒ çµåãæå°éã«æããåé床ãæå€§åããããã«ãããžãã¹èœåã«åºã¥ããŠãµãŒãã¹å¢çãæ éã«èšèšããŸãã
- èªååã®æ¡çšïŒ CI/CDãã€ãã©ã€ã³ã䜿çšããŠããã«ãããã¹ãããããã€ãããã³ç£èŠããã»ã¹ãèªååããŸãã
- ãã¹ãŠãç£èŠïŒ å æ¬çãªãã®ã³ã°ãç£èŠãããã³ã¢ã©ãŒããå®è£ ããŸãã
- å埩åã®åªå ïŒ ãµãŒãã¹ããã©ãŒã«ããã¬ã©ã³ãã«èšèšãããµãŒããããã¬ãŒã«ãŒãªã©ã®ãã¿ãŒã³ã䜿çšããŸãã
- APIã®ããŒãžã§ãã³ã°ïŒ äžäœäºææ§ãšã¹ã ãŒãºãªã¢ããã°ã¬ãŒããå¯èœã«ããããã«ãAPIãããŒãžã§ãã³ã°ããŸãã
- é©åãªæè¡ã®éžæïŒ ç¹å®ã®ãµãŒãã¹ãšã¢ããªã±ãŒã·ã§ã³ã¢ãŒããã¯ãã£å šäœã«é©ããæè¡ãšããŒã«ãéžæããŸãã
- æç¢ºãªéä¿¡ãããã³ã«ã®ç¢ºç«ïŒ åæãŸãã¯éåæã¡ãã»ãŒãžã³ã°ã䜿çšããŠããµãŒãã¹ãäºãã«ã©ã®ããã«éä¿¡ããããå®çŸ©ããŸãã
- ãµãŒãã¹ã®ä¿è·ïŒ èªèšŒãèªå¯ãæå·åãå«ãå ç¢ãªã»ãã¥ãªãã£å¯Ÿçãå®è£ ããŸãã
- ããŒã æ§é ã®æ€èšïŒ ãµãŒãã¹ãäžå¿ã«ããŒã ãç·šæãã圌ããèªåãã¡ã®ãµãŒãã¹ãææãéå¶ããæš©éãäžããŸãã
çµè«
ãã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ã¯ãã¹ã±ãŒã©ãã«ã§å埩åããããã°ããŒãã«ã«åæ£ããã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããããã®å€§ããªå©ç¹ããããããŸãããã®èšäºã§èª¬æãããã¶ã€ã³ãã¿ãŒã³ãçè§£ãé©çšããããšã§ãã°ããŒãã«ãªãŠãŒã¶ãŒå±€ã®è€éãã«å¯Ÿå¿ã§ãããããåªããã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ã§ããŸããé©åãªãã¿ãŒã³ãéžæããããããæ£ããå®è£ ãããã¹ããã©ã¯ãã£ã¹ã«åŸãããšã¯ãããæè»ã§é©å¿æ§ã®ãããæåããã¢ããªã±ãŒã·ã§ã³ã«ã€ãªãããäŒæ¥ãæ¥éã«é©æ°ãã倿§ã§å€åãç¶ããã°ããŒãã«åžå Žã®ããŒãºã«å¿ããããšãå¯èœã«ããŸãããã€ã¯ããµãŒãã¹ãžã®ç§»è¡ã¯ãåãªããã¯ãããžãŒã«é¢ãããã®ã§ã¯ãããŸãããããã¯ã仿¥ã®ã°ããŒãã«ãªç¶æ³ã«ãããŠãããŒã ãçµç¹ãããä¿æã§å¯Ÿå¿åãæã€ããã«åãäžããããšãªã®ã§ãã