Pergunta

Eu tenho usado a seguinte pilha de desenvolvimento web por alguns anos:

java / Primavera / Hibernate / mysql / Pontão / postigo / jQuery

Para determinadas condições, eu estou pensando em mudar para um armazenamento de dados NoSQL com um frontend AJAX. Eu provavelmente iria construir a interface com jQuery e se comunicar com o middleware de aplicações web usando JSON. Eu estou inclinado a MongoDB por causa de mais recursos de consulta dinâmica, mas ainda estou considerando CouchDB.

Eu não tenho certeza o que usar no meio. Provavelmente algo RESTful? Minha preferência é ficar com Java (ou talvez Scala ou Groovy) desde que eu estou usando ferramentas como Drools para regras e Shiro para a segurança. Mas, novamente, eu quero escolher algo que é rápido um fácil de trabalhar, por isso estou aberto a outras soluções.

Se você está construindo soluções Ajax / JSON / NoSQL, eu gostaria de ouvir detalhes sobre quais as ferramentas que você está usando e quaisquer vantagens / desvantagens que você encontrou para usá-los.

Foi útil?

Solução

  1. Escolha qualquer middleware que você está mais confortável com.

  2. CouchApp é muito experimental no momento. A questão principal é ser capaz de adicionar segurança a sua aplicação sem ter um pop-up caixa padrão HTTP. Esta é, obviamente, um grande problema para aplicações web padrão.

  3. tentar evitar a análise de cada pedido DB no middleware e reconstruir a consulta para couchdb. Você pode fazer seu ato middleware como um proxy para a maioria dos pedidos são encaminhados sem modificação. Você também pode adicionar uma camada de segurança na middlelayer no topo de todos os pedidos que a autenticação necessidade.

  4. Escolha um middleware / quadro com capacidades de roteamento boa URL. Por exemplo, você pode encaminhar todas as solicitações que vão para mydomain.com/db/ para couchdb.

Outras dicas

Se você vai com CouchDB, você pode usar CouchApp que é um conjunto de scripts para implantar um aplicação directamente a uma base de dados CouchDB. Em essência, você pular o middleware e usar exibições, listas e mostra as funções do CouchDB juntamente com clientside JavaScript para implementar o aplicativo inteiro. Se o seu aplicativo funciona nesta arquitetura, é surpreendentemente refrescante, simples e fresco.

Além disso, se você gosta da idéia de JSON / REST e aderindo a cliente JavaScript para o servidor, a nova geração de núcleo de Persevere, Pintura é framework JS JSON / REST pura que é projetado especificamente para trabalhar bem com NoSQL bancos de dados.

Eu fui mexer com alguns. Finalmente, eu gostaria de mudar a minha camada de controlador de MVC do jQuery / frontend javascript e usar puro JSON / REST para conversar com o backend. Embora a infra-estrutura terá uma forte segurança e, para a minha candidatura alguma habilidade para fazer fluxo de trabalho, consultas e regras.

Você também pode querer olhar em:

1) Couldkit, que funciona em Tokyo Cabinet. Suporta JSONQuery e OAuth. Funciona em Ruby / cremalheira pode ter funcionalidade suficiente. Loks como uma implementação RESTO forte. 2) Persevere, que é baseado em Java e fortemente apoiada no Dojo. É RESTO-ish, mas também tem algumas chamadas do tipo RPC. Parece muito poderoso no geral, com server-side scripting java, etc.

Eu não me importaria de ouvir como você está vindo junto.

Cheers, Alex

Eu escrevi uma jóia chamado Rack :: JSON exatamente para este fim, ele age como um básico Interface de repouso para uma db MongoDB. Foi inspirado por Cloudkit e suportes JSONQuery e também roda em Ruby / Rack. Ele permite que você armazenar e, em seguida, documentos de acesso / consulta JSON.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top