Question

J'utilise la pile de développement Web suivante depuis quelques années:

java / spring / hibernate / mysql / jetty / wicket / jquery

Pour certaines exigences, j’envisage de passer à un magasin de données NoSQL avec une interface frontale AJAX. Je construirais probablement l'interface avec jQuery et communiquerais avec le middleware d'application Web à l'aide de JSON. Je me penche vers MongoDB en raison de capacités de requête plus dynamiques, mais je considère toujours CouchDB.

Je ne sais pas quoi utiliser au milieu. Probablement quelque chose de reposant? Ma préférence est de rester avec Java (ou peut-être Scala ou Groovy) car j'utilise des outils tels que Drools pour les règles et Shiro pour la sécurité. Mais encore une fois, je veux choisir quelque chose qui soit rapide et facile à utiliser, je suis donc ouvert à d'autres solutions.

Si vous construisez des solutions ajax / json / nosql, j'aimerais connaître en détail les outils que vous utilisez et les avantages / inconvénients que vous avez trouvés à les utiliser.

Était-ce utile?

La solution

  1. Choisissez le middleware avec lequel vous êtes le plus à l'aise.

  2. CouchApp est très expérimental pour le moment. Le principal problème est de pouvoir ajouter de la sécurité à votre application sans avoir de boîte de dialogue HTTP standard. C’est évidemment un gros problème pour les applications Web standard.

  3. Essayez d’éviter d’analyser chaque requête de base de données du middleware et de reconstruire la requête pour couchdb. Vous pouvez faire en sorte que votre middleware agisse comme un proxy afin que la plupart des demandes soient transmises sans modification. Vous pouvez également ajouter une couche de sécurité dans le calque intermédiaire en plus de toutes les demandes nécessitant une authentification.

  4. Choisissez un middleware / framework avec de bonnes capacités de routage d’URL. Par exemple, vous pouvez acheminer toutes les demandes de mydomain.com/db/ vers couchdb.

Autres conseils

Si vous utilisez CouchDB, vous pouvez utiliser CouchApp , qui est un ensemble de scripts permettant de déployer une application directement à une base de données CouchDB. Essentiellement, vous ignorez le middleware et utilisez les vues, les listes et les fonctions d’affichage de CouchDB ainsi que le code JavaScript côté client pour mettre en œuvre l’application complète. Si votre application fonctionne dans cette architecture, elle est étonnamment rafraîchissante, simple et cool.

De même, si vous aimez l’idée de JSON / REST et que vous vous en tenez au client JavaScript, nouvelle génération du noyau de Persevere, Pintura est un pur framework JS JSON / REST conçu spécifiquement pour fonctionner avec les bases de données NoSQL.

J'ai bricolé quelques-uns. En fin de compte, j'aimerais déplacer ma couche de contrôleur de MVC vers l'interface frontale jQuery / javascript et utiliser du JSON / REST pur pour parler avec le serveur. Bien que le serveur nécessite une sécurité renforcée et, pour mon application, une certaine capacité à effectuer des flux de travail, des requêtes et des règles.

Vous voudrez peut-être aussi regarder:

1) Couldkit, qui siège au Cabinet de Tokyo. Prend en charge JSONQuery et OAuth. Les exécutions sur Ruby / Rack peuvent avoir suffisamment de fonctionnalités. Loks aime une implémentation forte de REST. 2) Persévère, basé sur Java et fortement pris en charge dans Dojo. C'est REST-ish mais a aussi des appels de type RPC. Cela semble très puissant dans l’ensemble, avec des scripts Java côté serveur, etc.

Cela ne me dérangerait pas d'entendre comment vous allez venir.

Salut, Alex

J'ai écrit une pierre précieuse appelée Rack :: JSON . Dans ce but précis, elle sert de base Interface REST vers une base de données MongoDB. Inspiré par Cloudkit, il prend en charge JSONQuery et fonctionne également sur Ruby / Rack. Il vous permet de stocker puis d’accéder / interroger des documents JSON.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top