A browser extension that replaces occurrences of 'serverless' with 'CGI-bin'
github.com
github.com
The sad piece of truth in your comment is that there are actually people who seem to know only AWS (etc.) and use it for everything, whether it makes sense or not. Well, that's their choice.
To get a sense of how much we're putting the cart before the horse, I recommend taking an occasional look at a subreddit frequented by webdev bootcampers (eg. [1] where they're hellbent to justify using React for static sites, because that's all they really know, and even accuse dissenters of being hiveminded).
[1]: https://www.reddit.com/r/webdev/comments/cxfvcw/is_react_sti...
It's only sheer force of keeping servers internal that we've had the expertise and knowhow to host our platform ourselves. Now that we're the size that we are, the platform is crazily reliant on hosting it ourselves for administration and liability, so we'd need to have migrated anyway.
The tooling is a lot better for Serverless, but I'd hesitate to call it 20 years better - I'd hesitate to call it 10 years better.
That is not how it works in the most popular solutions. Both aws lambda and Google cloud functions will keep the server instance running after your first request and only dispatch function calls - you can cache data between requests in globals. That's also why the first cold request is so much slower (it actually loads the code for the first time).
Most serverless function environments are much closer to managed fastcgi, than old cgi-bin approach.
This is mentioned right in the service docs: https://cloud.google.com/functions/docs/concepts/exec#functi...
Also, thanks for proving my point - some people don't understand it's a meme, not real equivalence.
I get it, it's nice, but I agree with others it's mostly a nice extension and better api for CGIs. Oh, with better marketing of course.
This is of course a false and misleading analogy - the reason spawning a new process for each request is bad is that it doesn’t scale on a single server, but in the serverless model the infrastructure serving this is scaled up exactly so you don’t have to worry about this aspect.
Response times are measurably very good for go python and js, in our experience, and aws serverless will try to reuse you running process for subsequent requests (warm start).
And most importantly — there are no servers to manage.
This is because most modern serverless implementations are closer to FastCGI (which had similar benefits over classic CGI). But the concepts are the same.
On a different note, the whole serverless thing seemed weird to me until I looked into it an realized that it kind of is cgi-bin all over again.
I love it, someone else can manage and patch the server and worry about scaling. I just deploy my workload as a self-contained app or set of apps. Scale is only limited by the bank account.
[1] https://chrome.google.com/webstore/detail/millennials-to-sna... [2]https://gizmodo.com/new-york-times-issues-correction-after-e...
Now we have serverless and HTML that talks to our cgi-bin using JavaScript. Life is full circle. Client/server back to the cloud, which reminds me of the dumb-terminal/mainframe days.
Back in the day, deploying code to cgi-bin first required buying and hosting your own server; which I have neither the time or patience to do today.
Building and hosting your own server was prerequisite for having hacker cred in the 90s.
But even then you could buy shared hosting just as simply as you can sign up for "serverless" services. Some ISP's would even give you shared hosting as part of your internet connection. In many universities you could drop a script in your home directory and it was instantly available to the world.
Even further back owning and hosting your own server was a dream almost no one could afford. People had to upload their serverless code to time sharing systems.
Maybe ‘Electron’ can be replaced by ‘JVM’?