ããã«ãŠã§ã¢ãšã¯ïŒ
ããã«ãŠã§ã¢ã¯ãã»ãšãã©ã®ãœãããŠã§ã¢ã¢ããªã±ãŒã·ã§ã³ã§éåžžã«éèŠãªåœ¹å²ãæ ã£ãŠããŸããã§ããå ·äœçã«ã©ããªããšãããã®ã§ããããïŒããã«ãŠã§ã¢ã«ã€ããŠãã£ãšç¥ãããã«ãèªã¿é²ããŠãã ããã

ãœãããŠã§ã¢ãæ§ç¯ãã éãèæ ®ãã¹ãç¹ãããã€ããããŸããããã«ã¯ãæ§ç¯ãããæ§ã ãªã¢ãžã¥ãŒã«ãšãã®æ©èœã䜿çšããæè¡ã¹ã¿ãã¯ãäºç®äžã®å¶éãªã©ãå«ãŸããŸãããã®ãããªéèŠãªåŽé¢ã®1ã€ã¯ãã¢ããªã±ãŒã·ã§ã³ã®æ§ã ãªéšåãã©ã®ããã«æ¥ç¶ãããç¶æ ã«ããããšããããšã§ãã
ã¢ããªã±ãŒã·ã§ã³ã¯ãä»ã®ããŒã«ããã¯ãããžãŒãšçžäºäœçšããããã«æ¥ç¶ããå¿ èŠããããŸããããããå€éšããŒã«ã®ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã¯ãã©ã®ããã«ããŠããªãã®ã¢ããªãšéä¿¡ããããšãç¥ãã®ã§ããããïŒäž¡è ã¯ç°ãªãæè¡ãæšæºã䜿çšããŠããå¯èœæ§ããããäºææ§ããªãå¯èœæ§ããããŸããããã§ç»å Žããã®ããmiddleware ããã®åã®éãã2ã€ã®ã¢ããªã±ãŒã·ã§ã³ã®äžéã«äœçœ®ããäºãã®ããåããæ¯æŽããŸããããã§ã¯ã詳ããèŠãŠãããŸãããã
middleware ãšã¯äœã§ããïŒ
MiddlewareMiddleware ã¯ãåºæ¬çã«ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãããªã¢ãŒãã¢ããªã±ãŒã·ã§ã³ã®ããŒã¿åŠçãšçžäºäœçšã容æã«ããé ããã翻蚳ã¬ã€ã€ãŒãšããŠæ©èœããŸãã2ã€ã®ããã°ã©ã ãçµåããŠãæ å ±ãšããŒã¿ããŒã¹ã®ãã€ããäœããŸãã
äžè¬çãªmiddleware ã®äŸãšããŠã¯ããã©ã³ã¶ã¯ã·ã§ã³åŠçç»é¢ãã¡ãã»ãŒãžã«ç¹åããmiddleware ããªã³ã©ã€ã³middleware ããªã¬ãŒã·ã§ãã«middleware ãWeb ãµãŒããŒã«ãããmiddleware ãªã©ããããŸããäžè¬ã«ããã¹ãŠã®ããã°ã©ã ã¯ã¡ãã»ãŒãžã³ã°æ©èœãæäŸããŠããã RESTãSOAP(Simple object access protocol)ã JSONãªã©ã® ã¡ãã»ãŒãžã³ã°ãã¬ãŒã ã¯ãŒã¯ã䜿çšããŠè€æ°ã®ã¢ããªã±ãŒã·ã§ã³ãäºãã«å¯Ÿè©±ã§ããããã«ãªã£ãŠããã
äŒæ¥ãå©çšããmiddleware ã®çš®é¡ã¯ããã¹ãŠã®middleware ãæ¥ç¶çŸ©åãæäŸããã«ããããããã䜿çšäžã®ãµãŒãã¹ãšäº€æããå¿ èŠãããããŒã¿ã®çš®é¡ã«äŸåããŸããããã¯ãã¢ããªã±ãŒã·ã§ã³ãŠã§ããµãŒããŒããªã³ã©ã€ã³ãŠã§ããµãŒããŒããã¥ãŒãäžŠè¡æ§å¶åŸ¡ãã»ãã¥ãªãã£èå¥ãããã³ãã£ã¬ã¯ããªã§æ§æãããããšãã§ããŸãããŸããmiddleware ã¯ãããŒã¿ã®ããåãã ãã§ãªããçŸåšé²è¡åœ¢ã§æææ±ºå®ãè¡ã忣åŠçã«ãå©çšã§ããŸãã
middleware ã¯ã©ã®ããã«æ©èœããã®ãïŒ
ãããã¯ãŒã¯ããŒã¹ã®ã¯ãšãªã®ç®çã¯ãããã¯ãšã³ãã®æ å ±ãšéä¿¡ããããšã§ãããã®æ å ±ã¯ã衚瀺ããç»åãå®è¡ããã¯ãªããã®ãããªç°¡åãªãã®ãããè²¡åæŽ»åã®å±¥æŽã®ãããªè€éãªãã®ãŸã§ãããŸãã
å¿ èŠãªæ å ±ã¯ããã¡ã€ã«ã·ã¹ãã ããååŸããããã¡ãã»ãŒãžãã¥ãŒããååŸããããããŒã¿ããŒã¹ïŒmiddleware ïŒã«ä¿åããããšãããŸããŸãªãœãŒã¹ãä¿åæ¹æ³ãèããããŸããããã«ãŠã§ã¢ã®åœ¹å²ã¯ããã®ãããªããã¯ãšã³ãã®WebãµãŒããŒãžã®ã¢ã¯ã»ã¹ã容æã«ããå¯èœã«ããããšã§ããã
åè¿°ã®ããã«ãSimple object access protocolã®ãããªã¡ãã»ãŒãžã³ã°ãã¬ãŒã ã¯ãŒã¯ã䜿çšãããäžè¬çã«ãmiddleware ãJavaã PythonãC++ãPHPãªã©ãè€æ°ã®ããã°ã©ãã³ã°èšèªã§éçºãããããŒãã§ãµãŒãã¹ãæäŸããäºãã«éä¿¡ããã
middleware ã®ã¢ãŒããã¯ãã£ã¯ã©ã®ãããªãã®ã§ããïŒ
middleware ãœãããŠã§ã¢ã®ã¢ãŒããã¯ãã£ã¯ãçžäºã«æ¥ç¶ãããè€æ°ã®ãŠã§ããµãŒãã飿ºããŠããŒã¿ãã€ãã©ã€ã³ã圢æããŠããŸããmiddleware ãéããŠããããªã³ã¯ããã°ã©ã ããå¥ã®ãªã³ã¯ããã°ã©ã ãžæ å ±ãéä¿¡ãããŸããmiddleware ã¯ãã³ã³ãã©ã€ã¢ã³ã¹ã®ããã«ããŒã¿ãåŠçããŸãã

ç»åãœãŒã¹ïŒfiware-middleware.github.io
ã¢ãŒããã¯ãã£ã¯ãäžè¬çã«ä»¥äžã®ããã«æ§æãããŠããŸãã
- 管çã³ã³ãœãŒã«
middleware ã·ã¹ãã ã®æäœãããã°ã©ã ã®èŠå®ãèšå®ãªã©ã¯ããœãããŠã§ã¢æè¡è åãã®ç®¡çã³ã³ãœãŒã«ã§è©³çްã«èª¬æãããŸãã
- 顧客ã€ã³ã¿ãŒãã§ãŒã¹
middleware ãœãããŠã§ã¢ã·ã¹ãã ã®ãã¡ãã¢ããªã±ãŒã·ã§ã³ã®å€éšã§ããåããããœãããŠã§ã¢ã³ã³ããŒãã³ããã«ã¹ã¿ããŒã€ã³ã¿ãŒãã§ã€ã¹ãšåŒã³ãŸããããã°ã©ããŒã¯ãã«ã¹ã¿ããŒã€ã³ã¿ãŒãã§ãŒã¹ã®æ©èœãå©çšããŠãä»ã®ã¢ããªãããŒã¿ããŒã¹middleware ããµãŒãã¹ãšéä¿¡ããã
- å éšã€ã³ã¿ãŒãã§ã€ã¹
è€æ°ã®ã¢ã¹ãã¯ãããŸãšãããœãããŠã§ã¢ã®æ¥çå€ã¯ãå éšã€ã³ã¿ãŒãã§ã€ã¹ïŒmiddleware ïŒã§ããmiddleware ãœãããŠã§ã¢ã³ã³ããŒãã³ãã¯ãå éšã€ã³ã¿ãŒãã§ã€ã¹ã䜿çšããŠãåºæã®ãããã³ã«ã®äžè²«æ§ãç¶æããŸãã
- ãã©ãããã©ãŒã ã€ã³ã¿ãŒãã§ãŒã¹
middleware ã€ã³ã¿ãŒãã§ãŒã¹ã¯ãmiddleware ãœãããŠã§ã¢ã¢ããªã±ãŒã·ã§ã³ã®ã¯ãã¹ãã©ãããã©ãŒã ã³ã³ããããªãã£ãä¿èšŒãããã®ã§ããå€ãã®ãªãã¬ãŒãã£ã³ã°ã»ã·ã¹ãã ã§äœ¿çšã§ãããœãããŠã§ã¢ã»ã³ã³ããŒãã³ããåããŠããŸãã
- ã³ã³ãã©ã¯ããããŒãžã£ãŒ
middleware ããã°ã©ã ã®ã³ã³ãã©ã¯ããããŒãžã£ãŒã¯ãããŒã¿å ±æã®ããã®ã¬ã€ãã©ã€ã³ã確ç«ããŸãããŸããmiddleware ãéããŠããŒã¿ãé ä¿¡ããéã«ãã¢ããªãã¬ã€ãã©ã€ã³ãéµå®ããããã«ããŸãã
- ã»ãã·ã§ã³ã»ã³ãŒãã£ããŒã¿ãŒ
ã»ãã·ã§ã³ã»ãããŒãžã£ãŒã¯ãmiddleware ãœãããŠã§ã¢ãšã¢ããªã®éã«å®å šãªéä¿¡ãªã³ã¯ã確ç«ããŸããã»ãã·ã§ã³ã»ãããŒãžã£ãŒã¯ãã€ã³ã¿ã©ã¯ã·ã§ã³ãåæ»ã«è¡ãããããã«ããåæã®ããã«ããŒã¿ã®ã¢ã¯ãã£ããã£ãèšé²ããŸãã
- ã©ã³ã¿ã€ã ã¢ãã¿ãŒ
ã©ã³ã¿ã€ã ã¢ãã¿ã¯ãããã«ãŠã§ã¢ã®ããŒã¿ãããŒãç¶ç¶çã«ç£èŠããŸããçãããæŽ»åãèªèããããã°ã©ããŒã«èŠåãçºããŸãã
çš®é¡middleware
Middleware ããã«ãŠã§ã¢ã«ã¯æ§ã ãªåœ¢æ ãããããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ããã®ç¹å®ã®æ¥ç¶åœ¢æ ã«éäžãããã®ãããã°ãç¹å®ã®ããã°ã©ã ããœãããŠã§ã¢ã³ã³ããŒãã³ããããã€ã¹ã«æ³šç®ãããã®ãããããŸããã¢ããªã±ãŒã·ã§ã³ã®éçºèŠä»¶ããµããŒãããããã«ã ãœãããŠã§ã¢ã®æ©èœããã¬ã³ããããã®ããããŸãã以äžã¯ãæãåºã䜿ãããŠãã ãœãããŠã§ã¢ã®äžéšã§ãããmiddlewaremiddleware
ã¢ããªã±ãŒã·ã§ã³ããã°ã©ãã³ã°ã€ã³ã¿ãŒãã§ãŒã¹ (API)
ç¹å®ã®ãã©ãããã©ãŒã ã§ã¢ãã€ã«ã¢ããªã±ãŒã·ã§ã³ãäœæããããã® APIãªã©ããœãããŠã§ã¢ãäœæããããã®ããŒã«ã®éåäœã§ããã
ã¢ããªã±ãŒã·ã§ã³ãµãŒããŒ
ãšã³ã¿ãŒãã©ã€ãºã»ã¢ããªã±ãŒã·ã§ã³ã¯ãã¢ããªã±ãŒã·ã§ã³ã»ãŠã§ããµãŒããŒããœãããŠã§ã¢ã»ã¡ãã»ãŒãžã³ã°ã»ãã¬ãŒã ã¯ãŒã¯äžã§ éçºã»å®è¡ãããŸãã
ã³ã³ãã³ãéèŠåmiddleware
ã³ã³ãã³ã管çã·ã¹ãã ã¯ããããã€ããŒãšæ¶è²»è ã®æœè±¡åã䜿çšããŠãç¹å®ã®ããŒã¿ãååŸããŸãã
ãšã³ãããããã©ãããã©ãŒã middleware
çµã¿èŸŒã¿ããã°ã©ã ããœãããŠã§ã¢ãã©ãããã©ãŒã ãããã³ãµãŒãã¹ã®ããã®æ¥ç¶ãšçµ±åã€ã³ã¿ãŒãã§ã€ã¹ã¯ãçµã¿èŸŒã¿ã«ãã£ãŠå®çŸãããmiddleware ã
ã¡ãã»ãŒãžæåmiddleware (MOM)
ã¡ãã»ãŒãžæåmiddleware ã¯ã忣ããã¢ããªã±ãŒã·ã§ã³ãŸãã¯ãœãããŠã§ã¢middleware ã³ã³ããŒãã³ãéã§æ å ±ã亀æããããã®ã€ã³ãã©ã¹ãã©ã¯ãã£ãæäŸããŸãã
ããŒã¿ããŒã¹middleware
ããŒã¿ããŒã¹middleware ã¯ãããã¯ãšã³ãããŒã¿ããŒã¹ãšã®éä¿¡ãæ€çŽ¢ã容æã«ããŸãã SQL ããŒã¿ããŒã¹middleware ãµãŒããŒãããŒã¿ããŒã¹ãšããŠãã䜿ãããmiddleware ã
äŒæ¥ã¢ããªã±ãŒã·ã§ã³ã®çµ±åmiddleware
äŒæ¥ã¯ãäŒæ¥ã¢ããªã±ãŒã·ã§ã³çµ±åmiddleware ã䜿ã£ãŠãäŒæ¥çµ±åã»ã³ã¿ãŒãäœãããšãã§ããŸããããã¯ãäŒæ¥å šäœã®ãã¹ãŠã®ã¢ããªã±ãŒã·ã§ã³ããœãããŠã§ã¢ã¢ãžã¥ãŒã«ãããžãã¹ãªãã¬ãŒã·ã§ã³ãããã³ããã¯ãšã³ãæ å ±ãœãŒã¹ãæ¥ç¶ããããã®å®çŸ©ãããæ¹æ³ã§ãã
ãªãmiddleware ã䜿ãã®ãïŒ
ãã©ãããã©ãŒã ããã«ãŠã§ã¢ã®ç®æšã¯ãããã°ã©ã ã®ããŸããŸãªãœãããŠã§ã¢ã³ã³ããŒãã³ãéããããã¯åã ã®ãœãããŠã§ã¢ã¢ããªã±ãŒã·ã§ã³éã®éä¿¡ãä¿é²ããããšã§ããmiddleware ã䜿çšããäŒæ¥ã¯ãä¿¡é Œæ§ã®é«ãæ¥ç¶æ§ãšç§»è¡æéã®ççž®ãå®çŸããŠããŸãã
middleware ãå®çŸããç®çã¯ããã€ããããŸããMiddleware ãœãããŠã§ã¢ã³ã³ããŒãã³ãã¯ãæ¥ç¶ããŒã«ã確ç«ããŠãããç¥ãããããã¯ãšã³ãããŒã¿ããŒã¹ã«è¿ éãã€å¹æçã«ã¢ã¯ã»ã¹ããããšãã§ããŸãããŸãã顧客ã®ãªã¯ãšã¹ãã«å¿ããããžãã¯ãå®è¡ããããšãã§ããŸãã
Middleware ã¯ã©ãŠããã€ãã£ãã¢ããªã±ãŒã·ã§ã³
ã¯ã©ãŠããã€ãã£ãã¢ããªã±ãŒã·ã§ã³ã®éçºææ³ã¯ããªã³ãã¬ãã¹ããã©ã€ããŒãããããªãã¯ã¯ã©ãŠãã®åç°å¢ã§ãã¢ããªã±ãŒã·ã§ã³ã®éçºãé åžãä¿å®ããµããŒãããããã«äžå¯æ¬ ãªã¯ã©ãŠãã³ã³ãã¥ãŒãã£ã³ã°ãã¯ãããžãŒã䜿çšããŠããŸããæè¿ã®ã¯ã©ãŠããã€ãã£ãã¢ããªã±ãŒã·ã§ã³ã¯ããã€ã¯ããµãŒãã¹ããäœæãããããã°ã©ã ãš Kubernetes ã³ã³ããã§é åžãããŸãããããã®æè¡ã¯ãæ°ãããã€ããªããã¯ã©ãŠãã¢ããªã±ãŒã·ã§ã³ã®éçºããåŸæ¥ã®ã¬ã¬ã·ãŒã·ã¹ãã ãã¯ã©ãŠãçšã«ã¢ããããŒãããããã®åŒ·åãªãã¬ãŒã ã¯ãŒã¯ãçã¿åºããŸãã
Middleware ãå©çšããããšã§ããã®é£ç¹ãããçšåºŠè»œæžããããšãã§ããŸãããåŸæ¥ã®ãã©ãããã©ãŒã middleware ãå©çšããŠã³ã³ããåã¢ããªã±ãŒã·ã§ã³ãéçšãããšãæ°ããªé£ç¹ãçºçããå¯èœæ§ããããŸãã
middleware ã®ãŠãŒã¹ã±ãŒã¹ã¯äœã§ããïŒ
Middleware ã¯ãå€ãã®ãœãããŠã§ã¢ã§å¹ åºãå©çšãããŠããŸããç¥ã£ãŠããããäž»ãªãŠãŒã¹ã±ãŒã¹ã玹ä»ããŸãã
ã²ãŒã éçº
ã²ãŒã ãã¶ã€ããŒã¯ããã©ãããã©ãŒã middleware ãã²ãŒã ãšã³ãžã³ãšããŠäœ¿çšããŸããã²ãŒã ãæ©èœããããã«ã¯ãããã°ã©ã ã倿°ã®ç»åãé³å£°ãæ åãµãŒãã¹ãéä¿¡æè¡ãšçžäºäœçšããå¿ èŠããããŸãããã®çžäºäœçšã¯ãã²ãŒã ãšã³ãžã³ã«ãã£ãŠããç°¡åã«ãããçç£çã«ãªããŸãã
ãšã¬ã¯ãããã¯ã¹
ãšã³ãžãã¢ã¯ãmiddleware ãã»ã³ãµãŒãã³ã³ãããŒã©ãçµ±åããå¿ èŠããããŸããæšæºçãªã¡ãã»ãŒãžã³ã°ãã¬ãŒã ã¯ãŒã¯ãéããŠããã©ãããã©ãŒã middleware ã¬ã€ã€ãŒã¯ããããã®éã®éä¿¡ãå¯èœã«ããŸãã
ãœãããŠã§ã¢éçº
Middleware ã¯ããœãããŠã§ã¢ãšã³ãžãã¢ãæ§ã ãªãœãããŠã§ã¢éšåãä»ã®ããã°ã©ã ã«çµ±åããããã«äœ¿çšããããŒã«ã§ãã
AppMaster ã®åºçªã¯ïŒ
çŸåšã ã¢ããªã ã¢ããªã±ãŒã·ã§ã³ã äœãã®ã«ãã³ãŒãã£ã³ã°ã®ã¹ãã«ã¯å¿ èŠãããŸãããåŸæ¥ã®ã³ã³ãã¥ãŒã¿ããã°ã©ãã³ã°ã§ã¯ãªããã€ã³ã¿ãŒãã§ãŒã¹ãšã«ã¹ã¿ãã€ãºã«äŸåããããšã§ãããŒã³ãŒããã©ãããã©ãŒã ã¯ãã³ãŒããŒããã³ããã°ã©ããŒããœãããŠã§ã¢ã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããããšãå¯èœã«ããŸãã
ã®ãããªãã©ãããã©ãŒã ã®å©ããåããŠãã³ãŒãã£ã³ã°ã®ç¥èããªããŠãã¢ããªãäœãããšãã§ããããã«ãªããŸããã no-code AppMasterã®ãããªãã©ãããã©ãŒã ãå©çšããããšã§ãã³ãŒãã£ã³ã°ã®ç¥èããªããŠãã¢ããªãäœæã§ããããã«ãªããŸãããããã«ãäœæããã³ãŒãã®æææš©ã¯ããªãã«ç¬å ããããããå¿é ããå¿ èŠã¯ãããŸããã
AppMaster ãã©ãããã©ãŒã ã§ã¯ã ãšã³ããã€ã³ããžã® ã¢ã¯ã»ã¹èšå®ã«middleware ã䜿çšããŸããAppMaster ã§ã¯ãåãšã³ããã€ã³ãã¯ç¡å¶éã«middleware ã«æ¥ç¶ããããšãã§ããŸããéåžžãããã€ãã®middleware ã¯ããã«çµã¿èŸŒãŸããç¡å¹ã«ãããæå¹ã«ãããããããšãã§ããŸãããåé€ããããšã¯ã§ããŸããããŸããããã€ãã®ã¢ãžã¥ãŒã«ã¯ãã®middleware ãæäŸããŸãã
çµè«
Middleware ã¯ã¢ããªã±ãŒã·ã§ã³ã®éçºããµããŒãããããšãã§ããã¢ããªã±ãŒã·ã§ã³ãæ©èœçã«ããã®ã«åœ¹ç«ã¡ãŸããå€ãã®ãŠãŒã¹ã±ãŒã¹ããããããªãã䜿ã£ãŠããæ¥ã ã®ã¢ããªã±ãŒã·ã§ã³ã®å€ãã§ããã®æ©æµãåããŠããããšã§ãããã ãšãã®çš®é¡ãç¥ãããšã§ãã¢ããªã±ãŒã·ã§ã³ãããã°ã©ã ã«å¿ èŠãªãã©ãããã©ãŒã ãæ±ºããããšãã§ããŸããmiddlewaremiddleware


