3 ms·
IMHO serverless is a dangerous trend. It locks the developer to one of the large cloud vendors with a propietary API, a problem I thought would have been solved
by lnsp 9y ago
IMHO serverless is a dangerous trend. It locks the developer to one of the large cloud vendors with a propietary API, a problem I thought would have been solved with orchestration software (like k8s) that abstracts away service providers. It may be useful for minor quick-and-dirty trigger functions - but no way for business-level logic!
- 0x6877 9y agoI’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 https://github.com/apex/gateway
- brianwawok 9y agoFor 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...
- dfirment 9y agothe 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)
- 0x6877 9y agoI 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.
- brianwawok 9y ago> 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.
- _pdp_ 9y agoWe decided to base our new platform on serverless - previously docker. Couldn't be any happier. Everything runs as expected and I don't need to worry about a tone of things. People talk about vendor lock-in and all that. If you don't write things from scratch there is a vendor lock-in everywhere. Open source is also vendor lock-in. For example, we used to use xulrunner from Mozilla for some time and look where it is right now - nowhere. I was also concerned initially with being locked in into a particular platform but then again, what I realised is that if your project is extremely successful you can always spend big to migrate when you have the funds to do it. As a startup, that is not the case. You start with nothing. So platforms like AWS are absolutely amazing because not too long ago you still had to buy your own datacenters.
- mcny 9y ago> So platforms like AWS are absolutely amazing because not too long ago you still had to buy your own datacenters. But just in terms of dollars, how much does it cost to own hardware? I have never worked in an "infrastructure" team so I'm am outsider looking at it with no experience but I hope someone will correct me. Imagine a startup needs a 42U cabinet in four co locations. Each one costs a thousand to fifteen hundred dollars a month? Let's say that puts the colocation bill at $5k a month. Next, we need the actual computers and it seems this is the expensive part? I simply searched for servers. Just for kicks, I selected a 2U supermicro 2023US-TR4. With 2x epyc 7301 16 core processors, 16 x 4GB RAM, 2TB Intel P4600 SSD, 4TB Hitachi 7K6000 HDD, and a five year next business day on site service quotes about $10k. I imagine you can fit up to 20 such computers in a full 42U cabinet. This means just buying the computers will set us back 4 * 20 * $10k? Spending almost $1M on admittedly low end server hardware sounds expensive. Colocation cost over let's say five years will be about 5 * 12 * $5k or about $300k. I guess just because you have space for 20 computers doesn't mean you have to fill them all up. Also, I guess you don't need to be in four locations. If we scale down our ambitions to 10 computers each in two locations, initial cost is 2 * 10 * $10k or about $200k and colocation costs are 5 * 12 * < $2k? or about $100k? because we no longer need a full cabinet... I know I'm making a lot of assumptions and I'm hand washing a lot of important details but this seems like the smallest possible cost of self hosting, no? About $300k over five years is about $5k per month. It won't make sense for everyone but I guess if we have a thousand people paying us ten dollars a month, that pays for the hardware? I welcome all corrections and insights. Like I said, I have no experience in these things.