Kelly, please see my inline response.

On Mon, Mar 19, 2018 at 7:36 AM, Kelly Cookson <KCookson@xxxxxxxxxxxx>
wrote:

Walmart went live with Node on Black Friday specifically to handle the
higher-than-average volume of business. Things went well. I'm just not
buying the idea that Node doesn't "really" scale well in light of
real-world examples by well-known businesses that have very high volumes of
activity. If they made it work, so can others.

If your main point is that Node isn't the only technology that can scale,
then yes. Other technologies can scale. Node is not magical or unique in
this regard. I hope no one got the idea that I was ever saying otherwise.


No, my main point is simple and strait-forward. Node.js doesn't scale well
in the traditional sense. Let's begin with a definition of scalability.
Here's one:

"Scalability is a characteristic of a system, model or function that
describes its capability to cope and perform under an increased or
expanding workload. A system that scales well will be able to maintain or
even increase its level of performance or efficiency when tested by larger
operational demands."

My point is that Node.js doesn't meet that definition of scalability.
Adding applications and users to a Node instance will cause Node to
destabilize and ultimately fail.

In regard to your point about Walmart using Node in their high-volume web
site, what you will find is that Walmart spent millions of dollars adding
architecture and infrastructure that is external to Node.js in order to
meet their stability and high-volume requirements. Don't give credit to
Node's scalability. Give credit to the infrastructure and architecture
provided by Walmart that provided the scalability.


If your main point is that scalability should not be the only reason why a
shop chooses Node, then again yes. Node-like any other technology-should be
evaluated in terms of an entire context: What are the problems you need to
solve? What are the skills you have? What is the budget you're being given?
Where do you want to be in 5 years? 10 years?


Walmart also spent millions adding infrastructure on top of Node.js in
order to meet their functional requirements.


Node uses a reactor pattern (event loop) architecture, which makes Node
opinionated about how things get done. If someone doesn't like that
opinion, then Node will always be low on that person's list of preferences.
I personally find the idea of asynchronous programming with an event loop
both challenging and interesting. I might even call it stimulating. :)


The event loop with asynchronous callbacks is poorly suited for things like
managing individual user state, database I/O, data validation, business
rules, CPU intensive processing, and other requirements of business
applications.

Given deep enough pockets, and given strong evangelists, organizations can
make anything work.

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.