Comment intégrer Java avec nodejs pour gérer des tâches lourdes CPU?
Je suis en train de chercher un bon web technologie, à la fois pour les I/O lourds et CPU des tâches lourdes. NodeJs est parfait pour le traitement de gros de charge et il peut également être mise à l'échelle. Cependant, je suis coincé avec le cpu partie lourde. Est-il possible d'intégrer une autre technologie (par exemple Java) dans le nœud, de sorte que je vais le faire fonctionner mon algorithmes dans d'autres threads et ensuite utiliser les résultats de nouveau dans le nœud. Est-il une solution existante? Toutes les autres suggestions seront très bonnes.
source d'informationauteur Gevorg Soghomonyan
Vous devez vous connecter pour publier un commentaire.
Vous pouvez intégrons NodeJS avec Java à l'aide de nœud-java.
Comme mentionné dans une réponse précédente, vous pouvez utiliser un nœud-java, qui est un mécanisme national de prévention module qui parle à Java. Vous pouvez également utiliser J2V8 qui s'enroule Node.js comme une bibliothèque Java et fournit un Node.js API en Java.
La réponse est lambda architecture.
NodeJs est beau par lui-même - de la manipulation rapide des requêtes dans un léger manière, cela ne fait pas de supplément de calculs sur les données.
Le CPU des tâches lourdes peuvent facilement être déléguées à des composants basés sur la JVM (enfin, les plus célèbres sont sur la JVM). C'est joliment mis en œuvre à l'aide de message les courtiers et les microservices.
Un événement basé sur l'architecture, où nodejs peut être relié à des bases de données comme Cassandra ou Mongodb et de clusters de calcul des frameworks comme Apache Spark (pas nécessairement, cependant, cela dépend du problème) pour gérer le cpu-lourds parties du système. Léger et conteneurs ajouter une cerise pour le gâteau, en fournissant de nice isolé environnements d'exécution pour chacune des composantes de vivre dans.
C'est ma conclusion jusqu'à présent sur cette question.
Je pense que les suggestions ci-dessus sorte d'éliminer le besoin d'envelopper nœud sous java ou d'autres JVM solution basée sur le processeur des tâches lourdes.