Hacker News new | ask | show | jobs
by 0x6877 3066 days ago
I’d argue that if you’re doing serverless right you should be abstracting away the particulars of the serverless provider and implementing your functions in an provider agnostic way.

A good example would be using something like apex/gateway which simply proxies lambda requests to golang standard http handlers. Virtually elminating vendor lock-in.

I think serverless has a place (yes even for business logic) but like anything you have to pick the right took for the job.

Apex/gateway: https://github.com/apex/gateway

1 comments

For what end? So many things I see going serverless would work for a similar price and 1/2 the developer hassle running on a couple instances...
I disagree that it’s half the hassle. With serverless I don't have to keep the os’s updated and hardened, manage load balancing or scaling (yes I’m aware of the cold start latency cost). It does that all for me. I also don’t have to worry about my service going down. Yes with good devops practices you could automate all of the above but serveless is still easier imo.

I won’t argue that its cheaper because it’s not. Once you get to a certain point you should probably migrate onto real instances which is why I think that the abstraction I talked about is important.

> With serverless I don't have to keep the os’s updated and hardened,

You can easily get this with CoreOS + docker images on GCE

> manage load balancing

Load balancers are one click since what, 2005?

> or scaling (yes I’m aware of the cold start latency cost).

Except you do. You run a 4 CPU database on the backend. How many lambdas can hit it at once before it dies? You need to manage this still.

Lambda is not the worst thing ever, but many many things using it would be far better off on something like kubernetes or a docker image behind a load balancer.

the example in the blog seems fairly straightforward -- low cost solution with minimal operations. not sure why anyone would want to replace that with instances, unless they enjoy maintaining and patching large surface areas (or has an ops team that does it for them)