Pregunta

He estado usando la siguiente pila de desarrollo web durante algunos años:

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

Para ciertos requisitos, estoy considerando cambiar a un almacén de datos NoSQL con una interfaz AJAX. Probablemente construiría la interfaz con jQuery y me comunicaría con el middleware de la aplicación web usando JSON. Me estoy inclinando hacia MongoDB debido a las capacidades de consulta más dinámicas, pero todavía estoy considerando CouchDB.

No estoy seguro de qué usar en el medio. ¿Probablemente algo RESTANTE? Prefiero seguir con Java (o tal vez Scala o Groovy) ya que estoy usando herramientas como Drools para las reglas y Shiro para la seguridad. Pero, de nuevo, quiero elegir algo que sea rápido y fácil de trabajar, así que estoy abierto a otras soluciones.

Si está creando soluciones ajax / json / nosql, me gustaría escuchar detalles sobre qué herramientas está utilizando y cualquier pros / contras que haya encontrado al usarlas.

¿Fue útil?

Solución

  1. Elija el middleware con el que se sienta más cómodo.

  2. CouchApp es muy experimental en este momento. El problema principal es poder agregar seguridad a su aplicación sin tener un cuadro emergente HTTP estándar. Obviamente, este es un gran problema para las aplicaciones web estándar.

  3. Intente evitar analizar cada solicitud de DB en el middleware y reconstruir la consulta para couchdb. Puede hacer que su middleware actúe como un proxy para que la mayoría de las solicitudes se reenvíen sin modificaciones. También puede agregar una capa de seguridad en la capa intermedia sobre todas las solicitudes que necesitan autenticación.

  4. Elija un middleware / framework con buenas capacidades de enrutamiento de URL. Por ejemplo, puede enrutar todas las solicitudes que van a mydomain.com/db/ a couchdb.

Otros consejos

Si utiliza CouchDB, puede utilizar CouchApp , que es un conjunto de scripts para implementar un aplicación directamente a una base de datos CouchDB. En esencia, omite el middleware y utiliza las vistas, listas y funciones de visualización de CouchDB junto con JavaScript del cliente para implementar toda la aplicación. Si su aplicación funciona en esta arquitectura, es sorprendentemente refrescante, simple y genial.

Además, si le gusta la idea de JSON / REST y apegarse al cliente de JavaScript al servidor, la nueva generación del núcleo de Persevere, Pintura es un marco JS JSON / REST puro que está diseñado específicamente para funcionar bien con NoSQL DB.

He estado jugando con algunos. En última instancia, me gustaría mover mi capa de controlador de MVC a la interfaz jQuery / javascript y usar JSON / REST puro para hablar con el back-end. Aunque el backend necesitará una seguridad sólida y, para mi aplicación, cierta capacidad para hacer flujo de trabajo, consultas y reglas.

También es posible que desee mirar:

1) couldkit, que se ejecuta en el gabinete de Tokio. Admite JSONQuery y OAuth. Las ejecuciones en Ruby / Rack pueden tener suficiente funcionalidad. Parece una implementación REST fuerte. 2) Persevere, que está basado en Java y fuertemente soportado en Dojo. Es REST-ish pero también tiene algunas llamadas de tipo RPC. Parece muy poderoso en general, con secuencias de comandos Java del lado del servidor, etc.

No me importaría escuchar cómo te va.

Saludos, Alex

Escribí una gema llamada Rack :: JSON para exactamente este propósito, actúa como un básico Interfaz REST a un db MongoDB. Fue inspirado por Cloudkit y es compatible con JSONQuery y también se ejecuta en Ruby / Rack. Le permite almacenar y luego acceder / consultar documentos JSON.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top