That was precisely the author's point. You'd rather stick with what you know then bother to deal with traditional server side techniques.
That was precisely the author's point. You'd rather stick with what you know then bother to deal with traditional server side techniques.
JavaScript works well for Node because it is a language that has evolved to be asynchronous. Not because some front-end web monkey n00bz know JavaScript. Although that is certainly a plus.
Node.JS shines when you need to write network applications. It was advertised for this purpose by its creator. That is its stated goal.
Traditional server-side solutions SUCK at this. Try writing a non-blocking server-side WebSocket server in PHP and distribute the load across all of the cores. Yeah. Exactly.
Don't get me wrong, I love PHP. But for every job, a proper tool.
Node.JS takes care of the network server and hands off the work to PHP via FastCGI. That's how it should be. Node.JS solves real problems right now. If it isn't doing that, you're trying to hammer in a nail with a screwdriver. Stop it.
Wouldn't the traditional way to do it server-side be to just write it in C/C++ or Java with a thread pool? Or if you prefer the evented model, Python+Twisted isn't old enough to really be traditional, but is pretty widespread; and some Java server-side apps have been moving to an async model as well.
I was a bit vague. What I should have said was that dynamic language solutions are bad at it. Certainly you can pull out C/C++, Java, Erlang, etc. but at that point, you need to compile and recompile when you change your code. You are dealing with dependencies, libraries, binary compatibility, and the usual complexities that come with compiled languages.
> Or if you prefer the evented model, Python+Twisted
Well, Node.JS isn't the only game in town, certainly. Competition is a good thing.
Node.js works for me.
I don't think much else needs to be said.
I use node for new cutting edge things which Django and Python can handle, but not as easily as node.
Like what?
Once you reach into realms where the label "massive" comes into play the importance of per-host performance is usually dwarfed by attributes like robustness and maturity.