2010-01-02 15 views
20

Je me demandais depuis quelques temps d'essayer le javascript côté serveur. Et je trouve une bonne quantité de serveurs, comme: Node.jsRhinoSpiderMonkey entre autres.Meilleurs serveurs javascript côté serveur

Quelqu'un pourrait-il avoir de l'expérience sur le javascript côté serveur, dites-moi quels sont les meilleurs moteurs? et pourquoi? J'aime le Node.js parce qu'il est basé sur le moteur V8 de Google. Et semble facile à utiliser. Mais certains commentaires sur ce que vous choisiriez serait génial.

Edit:

Some benchmarks for Node.

Je pense à aller avec celui-ci mais le retour est toujours la bienvenue.

Merci

+0

http://gromjs.org/ (basé sur SpiderMonkey). – ephemient

Répondre

15

Je pense que chaque solution a ses propres avantages/inconvénients

ici une liste de solutions SSJS:

  • Aptana Jaxer:

  • Sitepoint Persévérez tristement abandonné: basé sur rhino - inclure JSDB, prend en charge JSO N Requête - par Kris Zyp, l'auteur du JSON schéma

  • RingoJS: basé sur Rhino - ex Helma NG successeur de Helma qui existait depuis il y a longtemps - multi-thread - communauté agréable - grand acteur sur CommonJS

  • Narwhal: peut travailler soit SpiderMonkey, V8 ou WebKit JavaScriptCore - un autre grand acteur sur CommonJS - de condamné à une amende l'API JSGI dans le Jack serveur

  • Joyent NodeJS: basé sur V8 (rapide) - tout fonctionne dans un seul thread - tout le code doit être écrit en utilisant callbacks - beaucoup de modules disponible via NPM (package Node Manager)

  • 4D Wakanda: basé sur Webkit JavaScriptCore aka SFX ou Nitro (qui a été plus rapide que V8 et pourrait être plus rapide à nouveau) - comprennent un objet NoSQL orienté Java Script datastore avec une API native REST - multi-thread - fournit un studio avec un débogueur, un concepteur de modèle, et un concepteur graphique - fournit un cadre avec des widgets directement bindable au datastore et entre les uns des autres

  • projet APE: basé sur SpiderMonkey - un moteur Push pour synchroniser des données en direct entre de nombreux navigateurs visiteurs

  • 10gen MongoDB: un NoSQL magasin de document code permettant soit Erlang & JavaScript (en utilisant SpiderMonkey)

  • Apache CouchDB: Un autre magasin de document NoSQL code permettant également dans les deux Erlang & JavaScript (en utilisant SpiderMonkey)

Voir un Server-Side JavaScript presentation avec quelques histoire, points de repère, & descriptions

3

Le mot serveur est mal utilisé. Ce sont des implémentations JavaScript différentes.

Personnellement, la seule chose que je doute de ces implémentations concerne la faible quantité de bibliothèques système. La plupart d'entre eux viennent avec des choses standard (sockets, systèmes de fichiers, etc.) mais manquent de support pour les Threads et la concurrence. C'est pourquoi j'utilise habituellement Rhino, sauf si je me soucie de la vitesse.

+0

C'était peut-être vrai en 2010. Depuis, Wakanda propose au moins la prise en charge de l'API standard Web Workers sur le serveur (dédié et partagé), et dispose d'une API Mutex et d'un noeud.js comme un énorme dépôt de modules serveur JS. –

0

Il peut être utile de décrire le problème que vous tentez de résoudre. Il y a beaucoup d'implémentations JS "côté serveur" qui répondent à divers besoins. Il y a aussi plusieurs plateformes "serveur" construites autour de ces implémentations. J'ai écrit une implémentation au dessus de Servlets Rhino et Java, appelée Myna. Myna est pour les applications Web, et j'ai détaillé certains de ses avantages dans un autre question.

Essayez-vous de déployer des applications Web? Êtes-vous en train d'écrire un script existant? Votre code doit-il démarrer rapidement à partir d'une ligne de commande, ou va-t-il être implémenté en tant que démon?

Il n'y a actuellement aucun gagnant clair dans cet espace qui fait bien toutes ces choses, mais il y a de bons choix pour des besoins spécifiques.

+0

Je n'ai pas de besoins spécifiques, je les essaie juste – fmsf