æè¿ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ãæ±ãã課é¡ã解決ããããã«è²ã ãããã¨ãã¦ããã®ã§ã¾ã¨ãã¦ã¿ã¾ããã
- ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã®æ¡ç¨
- éçºå¹çã¨ççµåãªçµç¹
- éçºå¹çã¨å¤æ§æ§
- ä½ãã©ãã¾ã§ã«ã¼ã«åããã
- å¤§è¦æ¨¡ãªãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã®é£ãã
- ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ã
- "èªè¨¼èªå¯ x ã¼ããã©ã¹ããããã¯ã¼ã¯ x DDD x ãã¤ã¯ããµã¼ãã¹" ãæ±ããã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ããã¼ã
- ã¾ã¨ã
ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã®æ¡ç¨
ä»ãããã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£èªä½ã«ã¤ãã¦èªåã説æãããã¨ããªãã®ã ãã ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã®ç®çã®1ã¤ã¯ "大人æ°ã§éçºãã¦ãéçºå¹çãè½ã¨ããªããã¨" ã§ããã¨æã£ã¦ããã æ®éã«èã㦠"巨大ãªã¢ããªã¹ãªã·ã¹ãã ã大人æ°ã§è§¦ã" ã¨ããã¢ããã¼ãã§ã¯éçãããã ããã ä»ã§ã¯ã¢ã¸ã¥ã©ã¢ããªã¹ã¨ãã鏿è¢ãããã®ã§ "䏿ãããã°" ã¢ããªã¹ã§ãããç¨åº¦ã®è¦æ¨¡ã¾ã§ã¯é å¼µããã®ãããããªãã
éçºå¹çã¨ççµåãªçµç¹
徿¥ã®ã¢ããªã¹ãªã·ã¹ãã ã«ãããå¤§è¦æ¨¡éçºã§ã¯ããããã¤ãå®è£ ãªã©éçºã«ãããããããé¢ã§ãã¼ã å士ã®ã³ãã¥ãã±ã¼ã·ã§ã³ãçºçãã¦ãã¾ãã ãã®ããéçºè¦æ¨¡ã大ãããªãã»ã©éçºå¹çãè½ã¡ã¦ãã¾ãã 䏿¹ã§ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã§ã¯è¤æ°ã®ãã¤ã¯ããµã¼ãã¹ãAPIçµç±ã§ããã¨ãããã¨ããæ§è³ªä¸ã åãã¼ã ã®ã³ãã¥ãã±ã¼ã·ã§ã³ãççµåã«ä¿ã¤ãã¨ãã§ããããã«ãªãã å½ç¶ççµåã¨ããã®ã¯çµåããªãããã§ã¯ãªãã®ã§ãç¹å®ã®ãã¤ã³ãã§ã¯ã³ãã¥ãã±ã¼ã·ã§ã³ãçºçãããã¨ã¯ããããã¢ããªã¹ãªãã®ã«æ¯ã¹ãã¨åå "ç" ã¨è¨ããã ããã
åãã¼ã ãççµåã«ããã¨ãåãã¼ã ãä»ã®ãã¼ã ã«å½±é¿ãä¸ãããã¨ãªãéçºãé²ãããã¨ãã§ããå¯è½æ§ãé«ããªãã ã³ãã¥ãã±ã¼ã·ã§ã³ããã¼ã å ã§å®çµãããã¨ãå¤ããªãã åãã¼ã ã¯ã¹ã¿ã¼ãã¢ããã®ããã«ã¹ãã¼ãæãæã£ã¦åããã¨ãã§ããããã«ãªãã ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ãæ¡ç¨ããã«ããã£ã¦ãæè¡çãªèª²é¡ã®è§£æ±ºãå½ç¶éè¦ã§ãããã åãã¼ã ãççµåã«ããã¨ããçµç¹çãªé¨åãé常ã«éè¦ã§ããã
ãããããã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã¯åãã¤ã¯ããµã¼ãã¹ãAPIçµç±ã§ããã¨ãããã®ã§ã ä½ãããã¨ãåãã¼ã ãççµåã«ããã¨ããé¨åã¯ããç¨åº¦ä¿è¨¼ããããããªæ°ã¯ããã å½ç¶éçºããã¼ãçµç¹æ§é ã«ãããã®ã ããAPIçµç±ã§ããã¨ããã¦ããç¶æ³ã§ã³ãã¥ãã±ã¼ã·ã§ã³ãå¯çµåã«ããæ¹ãé£ããã®ã§ã¯ãªããã
éçºå¹çã¨å¤æ§æ§
ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã§ã¯åãã¼ã ãççµåã«ãããã¨ãéè¦ã§ã¯ãããã ççµåã§ãããããã«åãã¼ã ã®å¤æ§æ§ãé度ã«è¨±å®¹ãã¦ãã¾ãã¨ãéçºå¹çãä¸ãã£ã¦ãã¾ãå¯è½æ§ãããã ãªãéçºå¹çãä¸ãããã¨ããã¨ãåãã¼ã ãèªåãã¡ã®ãã¨ã ãèãã¦éçºãã¦ãã¾ãããã§ããã
ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã¯åãã¤ã¯ããµã¼ãã¹ãAPIçµç±ã§ããã¨ããããã åãã¼ã ã¯ãã®APIãã©ã®ããã«å®è£ ããã ããã
ãããã¼ã 㯠HTTP ãå©ç¨ãã REST ãããããªãã ãããã¼ã 㯠gRPC ãããããªãã APIã«å¯¾ããèªè¨¼ã¯ã©ããªãã ãã? ãã¼ã¿å½¢å¼ã¯JSON? Protocol Buffers?
ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã§ã¯åãã¼ã ãæé©ãªæè¡ãå©ç¨ãã¦éçºãé²ãããã¨ãã§ããã ã½ããã¦ã§ã¢éçºã¯è¦ä»¶ã夿§åããæè¡çãªé£æåº¦ãé«ããªã£ã¦ããã®ã§ããã®ç¹ã¯ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã«ãããã¡ãªããã®1ã¤ã§ããã ãããã䏿¹ã§ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã§ã¯ãã¤ã¯ããµã¼ãã¹å士ã®éä¿¡ã«ãã£ã¦ç¹å®ã®ã¦ã¼ã¹ã±ã¼ã¹ãæºããã¨ããã®ãåæã«ãªã£ã¦ããã ãã®ãããåãã¼ã ãä½ã®ã«ã¼ã«ããªãèªç±ã«å®è£ ãã¦ãã¾ãã¨é信対象ã®ãã¤ã¯ããµã¼ãã¹ãã¨ã«éä¿¡æ¹æ³ãçè§£ããªããã°ãããªãã ãã®éã«APIãæä¾ãããã¼ã ã¨å©ç¨ãããã¼ã éã§ç¡è¦ã§ããªãã»ã©ã®ã³ãã¥ãã±ã¼ã·ã§ã³ã³ã¹ããçºçããã®ã§ããã°ã ãã¼ã å士ãççµåã«ãªã£ã¦ããã¨ã¯è¨ããªãã ããã
å½ç¶APIã®å®è£ ã ããåé¡ã«ãªãããã§ã¯ãªãã ä¾ãã°åãã¼ã ãèªç±ã«ããã°ã©ãã³ã°è¨èªãé¸ãã§ãã¾ãã¨ããã¼ã ç°åæã«é å±å ã§æ¯åæ°ããè¨èªããã£ããã¢ããããªããã°ãªããªãã ãã®ä»ã®æè¡ããã¼ã«ã«ãã¦ãåããã¨ãè¨ããã ããã çµç¹ã«ãããäººã®æµåæ§ã¨ããã®ãéçºå¹çã¨ãã観ç¹ã§ã¯éè¦ã§ããã ãã¯ããã¸ã¼ã¹ã¿ãã¯ãç°ãªãã¨çµç¹å ã§ã®ãã¦ãã¦å ±æãé£ãããªãã
ä½ãã©ãã¾ã§ã«ã¼ã«åããã
ããã¾ã§å¤§è¦æ¨¡ãªãã¤ã¯ããµã¼ãã¹ã«ãã夿§æ§ã«ãã£ã¦éçºå¹çãä¸ããåé¡ã«ã¤ãã¦æ¸ãã¦ãããã ããã解決ããããã«ã¯ "ä½ãã©ãã¾ã§ã«ã¼ã«åããã" ã¨ããæ¹éãå¿ è¦ã«ãªãã
ä¾ãã°ããã°ã©ãã³ã°è¨èªã1ã¤ã«çµ±ä¸ããã¨ããã®ã¯ãã¾ãç¾å®çã§ã¯ãªãã MLã§ã¯Pythonã使ããããããããªããã忣å¦çã§ã¯JVMç³»ã®è¨èªãå©ç¨ããããããããªãããã§ããã ããããã¶ãã¯ãªã¨ "å°ãªãã¨ããµã¼ããµã¤ãã¯Kotlinã«çµ±ä¸ãã", "XXXé¨ã¯Goã«çµ±ä¸ãã" ã¨ããæ¹éã§ããã°ããç¨åº¦ç¾å®çã§ããã 人ã®ç§»åããã¦ãã¦å ±æããããªãã«é å¼µããã¯ãã§ããã
å½ç¶ããããå ±éåãããã¨èªä½ç¾å®çã§ã¯ãªããã®ãå ±éåããçµæãã¡ãªããã大ãããªã£ã¦ãã¾ããã®ãããã çµç¹ã®è¦æ¨¡ããã¸ãã¹ãã§ã¼ãºãªã©ãªã©ãæ§ã ãªå¤æ°ã«ãã£ã¦ "ä½ãã©ãã¾ã§ã«ã¼ã«åããã" ã®æé©è§£ã¯å¤ãã£ã¦ããã ããã "ã«ã¼ã«ãè¨ããªã" ã¨ãã鏿è¢ãããå¾ãã ãã ããããã "ã«ã¼ã«ãè¨ããªãã¨ããã«ã¼ã«" ã§ããã çµç¹ã¨ãã¦ã®éçºå¹çãé«ããããã®æ ¹æ èªä½ã¯åå¨ããã¹ãã ã¨æãã
å¤§è¦æ¨¡ãªãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã®é£ãã
"ä½ãèããåãã¼ã ã®å¤æ§æ§ãå ¨é¢çã«èªãã¦ãã¾ãã¨éçºå¹çãè½ã¡ã¦ãã¾ã" ã¨ããåé¡ã¯çµç¹å ã®äººã®å¤æ§æ§ã«ä¾åããé¨åã大ããã¨æã£ã¦ããã
極端ãªä¾ã ãã1人ã§10åã®ãã¤ã¯ããµã¼ãã¹ãéçºããå ´åããã®10åã¯åããããªä½ãã«ãªãã ããã ãããã10人ã§1人1ã¤ãã¤ãã¤ã¯ããµã¼ãã¹ãä½ãå ´åããã®10åã¯åãä½ãã«ã¯ãªããªãã ããã çµç¹è¦æ¨¡ã大ããã»ã©ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã«ããã夿§æ§ã¯é«ããªãã¯ãã§ããã ãã®ããä¾ãã°2ãã¼ã ã§5ã¤ã®ãã¤ã¯ããµã¼ãã¹ãä½ããããªè¦æ¨¡ã ã¨ããã¾ã§åé¡ã«ãªããªãå°è±¡ãåããã
人ãå¢ãããã¨ã«ãã£ã¦å¤æ§æ§ãé«ã¾ãã¨ãéçºå¹ç以å¤ã«ãå½±é¿ãä¸ããã åãããããã®ã¯ã»ãã¥ãªãã£ã ããã ä¸è¨ã§ãã㨠"誰ãä½ãããããåãããªã" ã¨ããç¶æ³ã«ãªãã æªæã®ããè¡åã¯ãã¡ããã ããæä½ãã¹ãå®è£ ãã¹ã¨ãããã®ããæ¯æ¥ã©ããã§çºçãããããªç¶æ³ã«ãªãã åãã¤ã¯ããµã¼ãã¹ãæä¾ããAPIã®èªè¨¼ã社å ã·ã¹ãã ã®æ¨©é管çãªã©ãªã©ãããããé¨åã§æä½éã®ã»ãã¥ãªãã£ã¬ãã«ãæ±ããããã ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã«ãã£ã¦åãã¼ã ãããããç¬èªã§å®è£ ãã¦ãã¾ãã¨ã ãã¼ã ã®ã¬ãã«ã«ãã£ã¦ã»ãã¥ãªãã£ã¬ãã«ããã©ã¤ãã¦ãã¾ãã ã»ãã¥ãªãã£ãã¼ã ãªã©ã®æ¨ªæçãªçµç¹ãããããã¬ãã¥ã¼ãã¦åã£ã¦ããããã æãåããªãã£ãããã¬ãã¥ã¼æ¼ãããã£ãããåé¡ã¯è²ã ã¨ããã ããã ãã®ãããã»ãã¥ãªãã£ã«é¢ããé¨åã¯æè¡çãªä»çµã¿ã§ä¸å 管çãããªã©ã¨ãã£ãã¢ããã¼ããå¿ è¦ã«ãªãã¯ãã§ããã å ·ä½çãªä»çµã¿ã¨ãã¦ã¯ Google ã® Zanzibar, BeyondCorp, BeyondProd ã¿ãããªãã®ã§ãã£ããã ã¼ããã©ã¹ããããã¯ã¼ã¯ã¨ããèãæ¹èªä½ãå¿ è¦ã«ãªã£ã¦ããã¯ãã§ããã
夿§æ§ã®é«ãã«ãããéçºå¹çã¨ã»ãã¥ãªãã£ã®åé¡ã«ã¤ãã¦èª¬æãããã ããã¯ããç¨åº¦å¤§ããªçµç¹ã«ããããã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ãç´é¢ããåé¡ãªã®ã§ã¯ãªãã ãããã
ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ã
å¤§è¦æ¨¡ãªãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã§ã¯ä»ã¾ã§è©±ãã¦ãã "éçºå¹ç" ã "ã»ãã¥ãªãã£" ã¨ãã£ãã 人ã®å¤æ§æ§ã«ãã£ã¦çºçããåé¡ã解決ããªããã°ãªããªãã ãã®ãããªèª²é¡ã解決ããã«ã¯ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£å ¨ä½ãçµç¹å ¨ä½ãã¹ã³ã¼ãã«ãã¦ç©äºãèããå½¹å²ãå¿ è¦ã§ããã èªåã¯ãã®å½¹å²ã "ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ã" ã¨è¡¨ç¾ãã¦ããã
ä»èªåã¯DMMã§ã¨ã³ã¸ãã¢ã¨ãã¦åãã¦ããããå½¹å²ã¨ãã¦ã¯ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã§ããã æè¿èªåã Twitter ã§ã¢ããªã±ã¼ã·ã§ã³ã¢ã¼ããã¯ãã£ããããã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã«é¢ãããã¯ããã¸ã¼ã¹ã¿ãã¯ã追ã£ã¦ããã®ã¯ãã®ããã§ããã
ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã¨ããå½¹å²ã«ã¤ãã¦ã¯ãããµã2020ã§ä¸äºãããè¨åãã¦ãããããã è³æãä¸ãã£ã¦ãããã詳細ã¯åãããªãã®ã§ãèªåã®å®ç¾©ãããã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã¨ã¯å³å¯ã«ã¯ç°ãªããããããªããã ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£å ¨ä½ã«å¯¾ãã¦ã¢ããã¼ãããã¨ããé¨åã¯åããªã®ããªã¨æã£ã¦ããã
"èªè¨¼èªå¯ x ã¼ããã©ã¹ããããã¯ã¼ã¯ x DDD x ãã¤ã¯ããµã¼ãã¹" ãæ±ããã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ããã¼ã
ããããã¯å®£ä¼ã§ãã èªåãæå±ããDMMã¯ãããªãã«å¤§ããçµç¹ãªã®ã§ãå½ç¶ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã§ã®éçºãå¿ è¦ã«ãªã£ã¦ãã¾ãã ãã®ããDMMã®ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£å ¨ä½ã«å¯¾ãã¦ã¢ããã¼ããã "ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ããã¼ã " ã¨ãããã¼ã ãç«ã¡ä¸ãã¾ããã
ãã¼ã ã®ç®ç㯠"èªè¨¼åºç¤ãä¸å¿ã¨ããã¼ããã©ã¹ããããã¯ã¼ã¯ãªãã¤ã¯ããµã¼ãã¹ãã©ãããã©ã¼ã ãä½ããã¨" ã§ãã éçºå¹çãåä¸ãããããã®ãã¤ã¯ããµã¼ãã¹ãã©ãããã©ã¼ã ã¨ã»ãã¥ã¢ãªç°å¢ãæä¾ããèªè¨¼åºç¤ãæ§ç¯ãã¾ãã èªåãä»ã¾ã§æ¦å¨ã«ãã¦ããã¢ããªã±ã¼ã·ã§ã³ã¢ã¼ããã¯ãã£ãæ´»ããã¦ããã®ã§ãéã«DDDã£ã¦æ¸ãã¦ã¾ãã ç«ã¡ä¸ããã°ãããªã®ã§ãã¼ã ã¡ã³ãã¼ã¯èªåã ãã§ãã ãªã®ã§ããµã¼ããµã¤ãã¨ã³ã¸ãã¢ã¨SREãåéä¸ã§ãã
ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ã¯å¤§ããçµç¹ã»ã©æ¡ç¨ãããã¨ã«ã¡ãªããã®ããã¢ã¼ããã¯ãã£æ¦ç¥ã¨ãªãã¾ããã ãã®è¦æ¨¡ã大ããã»ã©æè¡çã«ãçµç¹çã«ãé£æåº¦ãä¸ããã¾ãã ãªã®ã§ãDMMã¨ããããç¨åº¦å¤§ããçµç¹ã®ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ãã£ããªã¼ããããã¨ã«ãã£ã¦å¾ãããçµé¨ã¯è²´éãªã®ã§ã¯ãªããã¨æã£ã¦ãã¾ãã "èªè¨¼èªå¯ x ã¼ããã©ã¹ããããã¯ã¼ã¯ x DDD x ãã¤ã¯ããµã¼ãã¹" ã«èå³ã®ãã人ãããããæ¯é以ä¸ã®Bosyuã確èªãã¦ã¿ã¦ãã ããã
DMMã®ãã¤ã¯ããµã¼ãã¹ã¢ã¼ããã¯ããã¼ã ã§ã¯ãµã¼ããµã¤ãã¨ã³ã¸ãã¢ã¨SREãåéä¸ã§ãããã¤ã¯ããµã¼ãã¹ããã©ãããã©ã¼ã ã¨ã³ã¸ãã¢ãªã³ã°ã«èå³ã®ãã人ã§ããã°æ¥½ãããç°å¢ã ã¨æãã¾ããé¸èãªãã®ã«ã¸ã¥ã¢ã«é¢è«ããã¦ããã®ã§èå³ã®ããæ¹ã¯ãã²ãhttps://t.co/EndrfjFRHj
— pospome (@pospome) August 17, 2021
ã¾ã¨ã
é·ã ã¨æ¸ãã¾ããããèªåã¯æè¿ãããªæãã§ãã