ãå³è§£ã§æ¯èŒãEC2 vs Lambda â AWSãµãŒã㌠vs ãµãŒããŒã¬ã¹ã培åºè§£èª¬
AWSã§ãµãŒããŒã䜿ããããã ãã©ãEC2ãšLambdaã£ãŠã©ãéãã®ïŒ
ãã£ããèšããšãEC2ã¯ãèªåå°çšã®ä»®æ³ãµãŒããŒãåããããµãŒãã¹ã§ãLambdaã¯ãããã°ã©ã ã®é¢æ°ã ããé ããŠãå¿ èŠãªãšãã ãå®è¡ããŠãããããµãŒãã¹ã ããEC2ã¯ã¬ã³ã¿ã«ãªãã£ã¹ãLambdaã¯äŒè°å®€ã®æé貞ãã¿ãããªã€ã¡ãŒãžã ãã
Lambdaã¯ããµãŒããŒã¬ã¹ãã£ãŠèšããããã©ãæ¬åœã«ãµãŒããŒããªãã®ïŒ
å®ã¯ãµãŒããŒèªäœã¯AWSã®è£åŽã«ã¡ãããšãããã ããã ãå©çšè ããµãŒããŒã®ç®¡çãäžåããªããŠããããããµãŒããŒã¬ã¹ããšåŒã°ããŠããããOSã®ã¢ããããŒããã»ãã¥ãªãã£ããããå šéšAWSä»»ããEC2ã ãšèªåã§OSã®é¢åãèŠãå¿ èŠããããããéçšè² è·ãããªãéããã ã
æéã®ä»çµã¿ã¯ã©ãéãã®ïŒ
EC2ã¯ããµãŒããŒãèµ·åããŠããæéãã«å¯ŸããŠèª²éããããã䜿ã£ãŠããªããŠãèµ·åäžãªãæéãããããäžæ¹Lambdaã¯ã颿°ãå®è¡ãããåæ°ãšå®è¡æéãã ãã«èª²éããããæ100äžãªã¯ãšã¹ããŸã§ç¡ææ ããããããã¢ã¯ã»ã¹ãå°ãªããµãŒãã¹ã ãšã»ãŒã¿ãã«ãªãããšããããã ã
ãããLambdaã®ã»ãããåŸã£ãŠããšïŒ
äžæŠã«ãããšã¯èšããªããã ãã¢ã¯ã»ã¹ãåžžã«å€ããµãŒãã¹ã ãšãLambdaã®åŸé課éãç©ã¿éãªã£ãŠEC2ããé«ããªãããšããããç®å®ãšããŠã24æéãã£ãšãªã¯ãšã¹ããæ¥ããããªWebã¢ããªã¯EC2åãã1æ¥ã«æ°åã ãåããããåŠçãAPIã¯Lambdaåãã ãã
ã¹ã±ãŒãªã³ã°ãã€ãŸãã¢ã¯ã»ã¹ãå¢ãããšãã®å¯Ÿå¿ã¯ã©ããªãã®ïŒ
EC2ã¯Auto Scalingã°ã«ãŒããèšå®ããã°èªåã§ãµãŒããŒå°æ°ãå¢ããããã©ãèšå®ã¯èªåã§ããå¿ èŠãããããLambdaã¯å®å šèªåã§ããªã¯ãšã¹ããå¢ããã°åæã«äœçŸã»äœåãã®é¢æ°ã䞊åå®è¡ãããããã ãLambdaã«ã¯åæå®è¡æ°ã®äžéïŒããã©ã«ã1000ïŒããããããå€§èŠæš¡ãªå Žåã¯äžéç·©åã®ç³è«ãå¿ èŠã ãã
Lambdaã®ãã³ãŒã«ãã¹ã¿ãŒããã£ãŠèããããšããããã ãã©ãäœãåé¡ãªã®ïŒ
Lambdaã¯ãªã¯ãšã¹ããæ¥ãŠããå®è¡ç°å¢ãæºåãããã ãã©ããã°ããã¢ã¯ã»ã¹ããªãã£ãåŸã®æåã®ãªã¯ãšã¹ãã§ã¯ããã®æºåã«æ°çŸããªç§ãæ°ç§ãããããšããããã ããããã³ãŒã«ãã¹ã¿ãŒãåé¡ããªã¢ã«ã¿ã€ã æ§ãæ±ãããããµãŒãã¹ã ãšäœæã§ããã¬ãã«ã®é å»¶ã«ãªãããšããããã
ã³ãŒã«ãã¹ã¿ãŒãã解決ããæ¹æ³ã¯ããã®ïŒ
ããã€ããããããŸããProvisioned Concurrencyããšããæ©èœã§ããããããå®è¡ç°å¢ãæž©ããŠããããšãã§ãããJavaç³»ã®LambdaãªããSnapStartããšããæ©èœã§ãèµ·åæã®ã¹ãããã·ã§ããããé«é埩å ã§ãããã ãããšã¯ãLambda@Edgeãã䜿ãã°CloudFrontã®ãšããžãã±ãŒã·ã§ã³ã§å®è¡ã§ããããããŠãŒã¶ãŒã«è¿ãå Žæã§ã¬ã¹ãã³ã¹ãè¿ãããã
EC2ã§ãLambdaã§ããªããäžéã¿ãããªéžæè¢ã£ãŠããã®ïŒ
ãã質åã ããECSïŒElastic Container ServiceïŒãFargateããŸãã«ããã ããã³ã³ããã䜿ã£ãŠã¢ããªãåãããµãŒãã¹ã§ãECSã¯EC2ã®äžã§ã³ã³ããã管çããæ¹åŒãFargateã¯ãµãŒããŒã¬ã¹ã§ã³ã³ãããAWSã管çããæ¹åŒã ãLambdaã®15åå®è¡å¶éãå³ããåŠçããEC2ã»ã©èªç±åºŠã¯ãããªããã©ãµãŒããŒç®¡çã¯ããããªãããšããå Žé¢ã«ãŽã£ããã ãã
çµå±ãã©ããã£ãŠéžã¹ã°ããã®ïŒ
å€æåºæºããŸãšãããšãããªãããåžžæçšŒåã®Webã¢ããªãGPUãå¿ èŠãªåŠçãªãEC2ãAPIãã€ãã³ãåŠçãçæéã®ãããåŠçãªãLambdaãã³ã³ããã§åãããããã©ãµãŒããŒç®¡çãå«ãªãFargateãæè¿ã¯ããŸãLambdaã§å§ããŠãéçãæ¥ããã³ã³ãããEC2ã«ç§»è¡ããããšããã¢ãããŒããäž»æµã«ãªã£ãŠããŠããããå°ããå§ããŠå¿ èŠã«å¿ããŠã¹ã±ãŒã«ã¢ããããã®ãã¯ã©ãŠãã®è³¢ãäœ¿ãæ¹ã ãã