The only impressive about this thing is technology abuse to do such a slow job on such a large scale.
I recall ruby on rails doing at most 150 requests per second on a laptop 15 years ago, which was laughably low even for those days. I could do hundreds times more using c++, or at least tens times more using unoptimized python.
Their achievement should not be praised, on contrary they need to be told they're wasting resources, heating up planet and emit carbon dioxide for no good reason. This is not how optimization looks like.
And no, it is not serverless, since obviously something serves that stuff, stop lying already.
“Server” is a long-running process that serves requests. “Serverless” means that your requests are handled by short-lived processes of some kind.
This is just the name for it. If you want to poke holes in the definition I gave, it won’t do any good, because definitions are kinda fuzzy and incomplete to begin with. If you try to argue about what “serverless” means, you’re just going to end up drifting away from the consensus about what words mean. Consensus is the only thing that matters here. Consensus generally won’t be universal—I know people that refuse to accept “literally” as an intensifier—but that is a problem we have to deal with.
Likewise, every pair of “wireless headphones” have many sets of wires inside them, if you cut them open.
“Vegan” products you buy at the store are made by humans, who are a type of animal, so you cannot say that vegan products contain no animal products. Plastic is an animal product because humans make it, and humans are animals.
If we go down this road, the only conclusions we get are absurd and useless ones. Language is a consensus process dominated by metaphor and shared context. It is not a mathematical process.
> A server is a physical machine with an operating system. It can run many processes.
That is an acceptable and different definition of “server”. Words have multiple definitions, that’s why any time you look something up in the dictionary, you are likely to see multiple entries for the same word.
I generally don’t use the word “server” that way. I say “machine” when I am talking about machines, and “server” when I am talking about daemon processes. A great many people I have worked with in the past ten years or so, in multiple parts of the country, have adopted similar terminology to lessen confusion.
If you accept that words have multiple definitions, and accept that “server” has multiple definitions, then it is easy to accept that “serverless” means something like “the response is not ultimately processed by a daemon process”. Just like we accept that wireless headphones are called “wireless headphones”, even though they have wires inside. They are only missing one particular set of wires. Like, “the audio is not transmitted to the headphones over a wire” wireless, “the request is ultimately processed by something other than a long-running daemon” serverless.
I find these definitions easy to understand, natural to use, and I find that they don’t confuse listeners when I use them.
I avoid calling the machine a “server” because it is sometimes confusing, but I’m not going to argue with someone who uses it that way and tell them that they are wrong. That would be horrible.
My point was that I have never heard anyone describe a server or serverless in that way: as simply a process. I agree that thinking about server as a process/Daemon is a great way to frame serverless.
I've also not considered that wireless headphones have wires so it's been fun to think about that too.
Their achievement should not be praised, on contrary they need to be told they're wasting resources, heating up planet and emit carbon dioxide for no good reason. This is not how optimization looks like. And no, it is not serverless, since obviously something serves that stuff, stop lying already.