Live data from Hacker News

The Serverless Revolution Has Stalled

infoq.com

581–590 of 670 posts

Re: The Serverless Revolution Has Stalled

#581
post #538

Earlier quoted context omitted.

Just run PHP and MySQL locally? Native PHP on Windows is horrible to set up, but with WSL/WSL2 you suddenly can get a normal Linux environment without much hassle. sudo apt install nginx php mysql, point the www directory of nginx to something on your computer (/mnt/c/projects/xyz) and you've got a running setup. Or run Linux in general, that's what most people I've seen work on backends seem to do. You can run the s…

What's horrible about it? I just download it, unzip to Program Files, add the folder to my %PATH% and that's about it. I didn't find myself in a situation where I would need an Apache or other webserver, the built-in one is good enough. It also makes using different versions easy, no need to deal with Apache and CGI/FPM. You just use other PHP executable.

I find it easier to handle multiple PHP versions on Windows than on Linux. As you say just download zip,unpack somewhere copy php.ini-development to php.ini, and you can do this for every minor PHP-version.

Apache is almost as easy, download zip, unpack & configure apache conf to use your php.

MySQL is somewhat more complicated because you need to run an setup script after unpacking the zip.

Re: The Serverless Revolution Has Stalled

#582

Earlier quoted context omitted.

I bought into hosting stuff on AWS, specifically on EBS which I assume is meant by a 'serverless' infrastructure, but I don't know crap about it. Still think it is mostly awesome and the services are solid. But such infrastructure comes with its own caveats. EBS now bugs me about some 'HealthCheckAuthEnabled'. I don't know what it wants, just that I have limited time to react. Cannot understand the clearly auto-trans…

> Hosting your own server is a lot of work and isn't fun. For me it's easy because i just maintain my ansible roles. It's fun because I get to keep up with OSS and be part of an amazing community. And I get much better hardware for the price.

If you want more fun stand up your own k8s cluster.

Re: The Serverless Revolution Has Stalled

#583
post #478

I don't buy into serverless. I went to a webdev convention, and it ended up being a serverless hype train. Industry experts with a financial incentive to promote serverless went on stage and told me they can't debug their code, or run it on their machine. They showed me comically large system diagrams for very simple use cases, then spent an hour explaining how to do not-quite-ACID transactions. Oh yeah and you can o…

Every server less design I've seen turns into a complex workflow of distributed functions chained together by a pile of xml.

Each example that I've seen could have been replaced with a simple single process job. You should not need to go over the network because you need a process to run for more than 10 minutes. You should be able to check the status of resource creation via for loop.

An argument can be made for not needing a server, but I can easily fire off a container in fargate/gks/ecs and get similar benefit.

Re: The Serverless Revolution Has Stalled

#584

Earlier quoted context omitted.

I disagree. Every AWS Lambda function I've ever written can be ran as a regular node/python process. The lambda-specific part is miniscule. If I wanted to run these on Azure or Google only the most inconsequential parts of the function would need to be changed.

In my experience, having started and abandoned side projects in both aws lambda and google app engine, half your project becomes: * Well, obviously we use a hosted database * And obviously, AWS provides our logging and all our analytics. * Obviously when people call our lambda functions, they do so either through an AWS-specific API, or one constrained to a very limited set of forms. * Of course, we can't blindly let…

Then your service becomes just a tiny stub of vestigial logic buried under layers and layers of YAML, vendor libraries and locked assumptions.

Re: The Serverless Revolution Has Stalled

#585
post #407

Earlier quoted context omitted.

That's such a straw man, it pains me to even respond to it. Doing it 'quick and dirty right now with the tools I happen to know' instead of 'doing some research, then doing it in a way that is maintainable using standard tools and taking a bit longer' isn't 'endangering the survival of the company', it's professional level practice. Failing to do so is, a) negligent, and b) incompetent. I'm certainly not suggesting t…

You are on such a high horse, it pains me to even respond to you. You can call it devops, a mess, whatever you want... but nothing about serverless frameworks is creating that mess. A service is a service, whether it's running Lambda, Spring Boot, or whatever the hottest new framework is... Nothing prevents you from documenting a service. Nothing prevents you from creating basic alarms (it's literally easier for me t…

If you read my comment, you’ll realise that I’m not saying serveless is bad.

I’m saying; if that’s your only tool, you’re not doing your job.

“Velocity” is not an excuse for not doing your job to a professional degree. Its a strawman people use to justify doing substandard work (or, often, pressuring engineers who know better, into doing substandard work).

Re: The Serverless Revolution Has Stalled

#586
post #478

I don't buy into serverless. I went to a webdev convention, and it ended up being a serverless hype train. Industry experts with a financial incentive to promote serverless went on stage and told me they can't debug their code, or run it on their machine. They showed me comically large system diagrams for very simple use cases, then spent an hour explaining how to do not-quite-ACID transactions. Oh yeah and you can o…

I bought into hosting stuff on AWS, specifically on EBS which I assume is meant by a 'serverless' infrastructure, but I don't know crap about it. Still think it is mostly awesome and the services are solid. But such infrastructure comes with its own caveats. EBS now bugs me about some 'HealthCheckAuthEnabled'. I don't know what it wants, just that I have limited time to react. Cannot understand the clearly auto-trans…

"Hosting your own server is a lot of work and isn't fun. There is still a lot of work to do if you host on something on such an infrastructure."

So true.

I really want to know how many of these "I host my own stuff"-people keep all there systems up to date. Updates, security patches etc.

Re: The Serverless Revolution Has Stalled

#587
post #478

I don't buy into serverless. I went to a webdev convention, and it ended up being a serverless hype train. Industry experts with a financial incentive to promote serverless went on stage and told me they can't debug their code, or run it on their machine. They showed me comically large system diagrams for very simple use cases, then spent an hour explaining how to do not-quite-ACID transactions. Oh yeah and you can o…

Serverless is meant to make bar lower for front-end developer so they don't have to learn the basics about web back-end development and be able to develop apps. I'm very glad if failed! People who don't put time into learning development should not do it.

Gatekeeping by randomly drawing the line by learning backend development, aren't we?

Re: The Serverless Revolution Has Stalled

#588
post #478

I don't buy into serverless. I went to a webdev convention, and it ended up being a serverless hype train. Industry experts with a financial incentive to promote serverless went on stage and told me they can't debug their code, or run it on their machine. They showed me comically large system diagrams for very simple use cases, then spent an hour explaining how to do not-quite-ACID transactions. Oh yeah and you can o…

It reminds me of https://www.frankmcsherry.org/graph/scalability/cost/2015/01... - you pay an extremely high cost upfront without even noticing - for the promise that at some point, you'll be able to scale out to any scale, with no extra human effort and for costs proportional to the scale. I have not observed enough uses of serverless I can draw conclusions from, but if it's anywhere like hadoop style scaling, 95% o…

It depends. Give you an example: We have an expensive reporting workflow that needs considerable resources, but usually only once a month. Two ways to do this cost effectively: Scale down containers to zero, meaning several minutes of response time if you do need it ad-hoc sometime. At least as complex to configure. OR you fit it to AWS SAM. The latter has proven to be a good match for us. I solved the debugging story by keeping lambda functions AWS agnostic and wrapping them i a Flask debug server - will respond exactly the same but it is all local in a single process.

Re: The Serverless Revolution Has Stalled

#589
post #583
post #478

I don't buy into serverless. I went to a webdev convention, and it ended up being a serverless hype train. Industry experts with a financial incentive to promote serverless went on stage and told me they can't debug their code, or run it on their machine. They showed me comically large system diagrams for very simple use cases, then spent an hour explaining how to do not-quite-ACID transactions. Oh yeah and you can o…

Every server less design I've seen turns into a complex workflow of distributed functions chained together by a pile of xml. Each example that I've seen could have been replaced with a simple single process job. You should not need to go over the network because you need a process to run for more than 10 minutes. You should be able to check the status of resource creation via for loop. An argument can be made for not…

Our approach is to start with a mildly-distributed (among threads within the process) monolith based on future passing, and my impression is that any latency-sensitive operation in a session cluster (that is, all of the sessions who are interacting directly with the same working set of processes and aggregates) can and should be supported by a single node. Rebalancing involves moving the cached aggregate (any blob, like a sqlite database or a JSON file) and/or† catching up the log (sequence of blobs) on the target node.

Futures are basically trivial to serialize, so the cost of involving a second node is as little as it could be; and node consolidation can be generalized because each node's dispatcher knows how many times it has accessed a remote process, which means that consensus on who should lead its log can be reached by simply sending it to the node that has the most use for it (with load balancing achieved by nodes simply not bidding for logs when their load factor or total service time is over some threshold, or say the 60th percentile of all the nodes, or whichever of those two is higher).

† In some cases it's faster to just catch up the log, rather than sending the aggregate.

Post reply on HN