Week 17 - 2019

4/22 - 4/28


Now 2

This week I first realized Now 2 was released last year and it's very different from now 1. I built the hobby web services 🌱 buttons in Now 1 infrastructure, and I started considering migrating it to Now 2. Now 1 was just a container abstraction. So I was able to write simple express app in it and that was easy. But Now 2 isn't based on containers, but it based on AWS Lambdas. I actually didn't look into it deeply, because its usage seems very limited because of ENI Cold Start problem. Lambda starts very slowly when it needs ENI to access VPC. It's simply caused by the fact that ENI needs about 10 seconds to be created. Because of this slow cold start problem, Lambda is unusable when it connects to VPC (this is most use cases) and also it is required to respond in a small latecy, like 1 second. This means we can't use lambdas for Web APIs because 10 seconds latency is totally unacceptable. So when I first heard that now switch to lambdas, I was very skeptical about thier decision, and simply didn't understand it. After searching a while I found an answer, or a clue of the answer. In re:invent session last year, a guy in AWS seems to have announced that they're going to address the ENI Cold Start issue in 2019! If that's true, the lambda finally becomes what they described themselves at first. With this information, now the switch of Now from v1 to v2 makes sense, and I decided to migrate my service's backend APIs to now 2 and serverless architecture, switching from express to micro.

Looks like @awscloud has some ideas to fix #Lambda cold starts in a #VPC. 🙌 Coming in 2019! #serverless #reInvent

— Jeremy Daly (@jeremy_daly) November 29, 2018


Rust LT


Have you found a mistake in the article? Please fix it here!