Je remonte le sujet, après un certain temps déjà. La situation a évolué, mais j'ai toujours quelques interrogations, et j'aurais besoin de votre avis sur ce coup-là.
Voici ce que ça donne jusqu'à maintenant:
1. Côté client
Langage: Javascript
Frameworks: Backbone.js et Marionette.js
Fonction: Interface de communication avec le client et de navigation.
Autres:
- Communication avec l'API fournie par l'application serveur.
2. Côté serveur
A) Application serveur
Langage: Ruby
Framework: Ruby on Rails
Fonction: Traiter les informations envoyées par l'utilisateur et relayer la suite au moteur de persistance (en ajoutant les tâches aux queues respectives), gérer les modules non-persistants (blog, forum, wiki, etc).
Autres:
- Communication avec la base de données avec MongoMapper.
- API RESTful, renvoyant du JSON à l'application cliente.
B) Moteur de persistance
Langage: Erlang
Framework: Aucun (pour le moment du moins)
Fonction: Exécuter les queues et tâches, assurer la persistance du monde virtuel.
Autres:
- Communication avec la base de données avec Mongrel.
C) Serveur de push
Langage: Javascript
Framework: Node.js
Fonction: Envoyer les données nécessaires au client par push.
Autres:
- Communication avec l'application cliente pour le push de données.
- Utilisation de Socket.io?
Alternative: Juggernaut
3. Base de données
Type: MongoDB
Avantages:
- Uniformisation de toutes les composantes logicielles sous un seul et même format de données (JSON).
- Séparation intelligente des couches de travail.
Désavantages:
- Beaucoup de langages/technologies.
- Autres?
Voilà .. qu'en dites-vous? Des questions, avis, commentaires, critiques? ^^
Voici ce que ça donne jusqu'à maintenant:
1. Côté client
Langage: Javascript
Frameworks: Backbone.js et Marionette.js
Fonction: Interface de communication avec le client et de navigation.
Autres:
- Communication avec l'API fournie par l'application serveur.
2. Côté serveur
A) Application serveur
Langage: Ruby
Framework: Ruby on Rails
Fonction: Traiter les informations envoyées par l'utilisateur et relayer la suite au moteur de persistance (en ajoutant les tâches aux queues respectives), gérer les modules non-persistants (blog, forum, wiki, etc).
Autres:
- Communication avec la base de données avec MongoMapper.
- API RESTful, renvoyant du JSON à l'application cliente.
B) Moteur de persistance
Langage: Erlang
Framework: Aucun (pour le moment du moins)
Fonction: Exécuter les queues et tâches, assurer la persistance du monde virtuel.
Autres:
- Communication avec la base de données avec Mongrel.
C) Serveur de push
Langage: Javascript
Framework: Node.js
Fonction: Envoyer les données nécessaires au client par push.
Autres:
- Communication avec l'application cliente pour le push de données.
- Utilisation de Socket.io?
Alternative: Juggernaut
3. Base de données
Type: MongoDB
Avantages:
- Uniformisation de toutes les composantes logicielles sous un seul et même format de données (JSON).
- Séparation intelligente des couches de travail.
Désavantages:
- Beaucoup de langages/technologies.
- Autres?
Voilà .. qu'en dites-vous? Des questions, avis, commentaires, critiques? ^^