J'ai beaucoup parlé de la façon dont Node.js est génial pour les applications Web en temps réel - des choses qui nécessitent des sockets, des communications Comet, AJAX, etc. Je sais que son modèle basé sur les événements, asynchrone et basé sur les threads est également bon pour la concurrence avec une faible surcharge.
J'ai également vu des didacticiels Node.js pour des applications plus simples, «traditionnelles» et non temps réel (par exemple, l'exemple de blog standard, qui semble être le «Hello World» standard pour les personnes qui apprennent le développement d'applications). Et je sais aussi que node-static vous permet de servir des actifs statiques.
Ma question est: y a-t-il une bonne raison d' éviter Node.js pour les applications Web traditionnelles, comme les petites annonces, les forums, l'exemple de blog susmentionné ou le type d'applications CRUD que vous créez pour les applications métier internes? Juste parce qu'il excelle dans tous les trucs funky en temps réel, cela le contre-indique-t-il pour des utilisations plus staid?
La seule chose à laquelle je peux penser, au départ, est le manque de bibliothèques matures (bien que cela change).
(La raison pour laquelle je demande est que j'envisage d'abandonner PHP pour Node.js, principalement pour surmonter le décalage d'impédance de la commutation entre les langues, mais aussi pour que je puisse réutiliser le code de validation et ainsi de suite. Mon surmoi me recommande de choisir le meilleur outil pour le travail ; cependant, je n'ai pas beaucoup de temps pour apprendre quinze langues et toutes leurs bibliothèques utilisateur juste pour avoir un arsenal complet. Il est également rassurant que Node.js pourrait me donner un chemin d'optimisation plus facile que PHP / Apache à l'avenir quand je devrai commencer à penser à un trafic intense.)
[EDIT] Merci pour les réponses jusqu'à présent, les amis; Je veux juste voir si quelqu'un d'autre interviendra avant de choisir une réponse. La réponse de @Raynos confirme un peu ce que je pense, et les liens des commentateurs ont donné matière à réflexion, mais je veux voir si quelqu'un d'autre a des réponses spécifiques aux nœuds, comme 'N'UTILISEZ PAS NODE POUR LE PROBLÈME X '. (Outre les tâches à processeur élevé, je le sais déjà :-)