un cocktail pleins de zestes

Ou comment mixer node.js avec java

Le problème exposé dans ce sujet a été résolu.

Salut à tous, J ai commencé à travailler avec node.js et je voudrais creer une application qui utilise java pour le core, le dur du programme et utilise node.js pour le networking vu que java et le reseau c est pas ça :/. Seulement je ne vois pas comment procéder exactement. Dois envoyer mes packets qui seront parser en js et lus? Dois utiliser des fichiers json? Merci beaucoup de vos aides

Si tu donnes pas plus de précisions, c'est difficile de t'orienter…

En tout cas essayer d'intégrer node.js, tu vas t'embeter pour rien. Certaines choses emergent pour l'integrer à Java, mais c'est trop recentet instable pour être pertinent et ça reste de l'experimentation.

+0 -0

Et ce que j'entends par 3/4 c'est une application faite avec plusieurs langages mais je ne me rappelle plus exactement l'appellation exacte. Alors, je devrais plus utiliser NETTY? le jeu doit pouvoir interagir avec une interface web avec les différentes infos du joueurs.

+0 -0

C'est un peu confus. De quel genre de jeu parle-t-on ? un client lourd avec un serveur ou un jeu en ligne par navigateur ?

Dans le second cas, tu vas avoir un/des langages pour les interfaces et la communication avec le serveur (generalement js/html/css) et un langage pour le serveur (python, php, js, java…)

Après une application avec plusieurs langages c'est large : moi je developpe un site web, j'utilise trois langages techniquement (HTML, CSS, Python par exemple voire 4 si tu ajoutes JS). Je n'ai jamais entendu de nom specifique pour des applications multi-langages.

Concernant Netty, il s'agit d'un framework separé des lib standard de Java. il faut voir les besoins exacts. Ce qui est sur c'est que si on parle d'un client en java et d'un serveur en java, les RMI de java peuvent parfaitement fonctionner par exemple

+0 -0

Vert.x scale plus facilement que node. Pour communiquer entre un client lourd et le serveur tu auras à ta disposition un eventbus, que tu peux manipuler aussi bien en Java qu'en JS, qu'en Ruby, qu'en Groovy ou qu'en Ceylon.

Pas besoin de réimpleméter un protocole d'adressage, c'est déjà fait. Tu as un support pour les websockets si tu en as besoin. Et c'est au dessus de Netty.

Après en lisant ton message on ne sait vraiment pas ce que tu veux faire. Python et flask pourraient peut être convenir ? Ou Akka ? Qui sait ? Tu dois mieux spécifier tes besoins, sinon tu risques de t'enfermer dans un choix qui n'a aucun sens.

+1 -0

Je cherche la technologie la plus adaptée pour faire du réseau en java et qui ne soit pas forcement du java. L'idée du ruby me plait plutot bien Et vert.x aussi. Finalement ne pas utiliser java pour le reseau c'est plus une contrainte que je m impose qu autre chose, un défi. Mais si pour vous cette démarche n'a pas de sens et ait sterile, je conserverais le java pour faire la partie réseau. Et dans l'idée, on a: un serveur distant ecrit dans un langage X et mes clients qui s y connectent écrit en Java. Et qui communiquent entre eux ou avec le serveur.

Ce qu'on essaie désespérément de t'expliquer c'est que "faire du réseau" c'est tellement vague qu'on ne peut pas t'orienter correctement.

Honnêtement si tu me dis "faire du réseau" j'ai envie de te répondre "utilise Erlang" parce que c'est quasiment fait pour ça. (mais ça ne rime à rien).

Concrètement, tu veux faire QUOI ?

+0 -0

Je cherche la technologie la plus adaptée pour faire du réseau en java et qui ne soit pas forcement du java.

Gné ? Ca n'a pas de sens cette phrase.

LE plus simple c'est quand même d'en faire un maximum avec le même langage. Si tu fais un bout en python, un bout en Java et un bout en Node, tu ne vas pas t'en sortir. Tu ferais mieux d'éviter, c'est de la sophistication inutile. Je sais que plein de projets le font mais à mon avis c'est une erreur ou alors ça se justifie par un historique long/riche/ouvementé (genre utiliser le truc en Cobol que personne ne veut/peut plus toucher).

IL y a déjà pas mal de choses pour faire du réseau en Java sans avoir besoin de faire appel à un autre langage. La base TCP et UDP tu les as. Pour faire du WebSocket et du webservice REST/SOAP, tu l'as dans JavaEE. Pour faire du protocole classique genre mail, FTP, SSH, etc. des libs ça se trouve. Côté concurrence et asynchronisme, Java est aussi assez bien placé.

Maintenant si tu tiens absolument à faire du JavaScript dans le cadre de Java, tu pourrais aller regarder l'API javax.script et le moteur Nashorn (Java 8) ou Rhino (Java 7). C'est probablement 18 fois plus lent que Node ceci dit. L'intérêt que je vois à la démarche d'intégrer du scripting, c'est pour simplifier le développement une fois que la grosse base lourde est fonctionelle; ça peut être vraiment cool, mais à mon avis vraiment pas pour des parties assez critiques/complexes comme la gestion du réseau.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte