Промежуточное программное обеспечение для MongoDB или CouchDB с интерфейсом jQuery Ajax / JSON - PullRequest
19 голосов
/ 28 ноября 2009

Я использую следующий стек веб-разработки в течение нескольких лет:

Java / весна / спящий режим / MySQL / Пристань / калитка / JQuery

Для некоторых требований я рассматриваю переход на хранилище данных NoSQL с интерфейсом AJAX. Я бы, вероятно, создал интерфейс с помощью jQuery и связывался с промежуточным ПО веб-приложения с помощью JSON. Я склоняюсь к MongoDB из-за более динамических возможностей запросов, но все еще рассматриваю CouchDB.

Я не уверен, что использовать в середине. Наверное, что-то RESTful? Я предпочитаю придерживаться Java (или, может быть, Scala или Groovy), поскольку я использую такие инструменты, как Drools для правил и Shiro для безопасности. Но опять же, я хочу выбрать что-то, с чем можно легко работать, поэтому я открыт для других решений.

Если вы создаете решения ajax / json / nosql, я хотел бы услышать подробности о том, какие инструменты вы используете, и какие плюсы и минусы вы обнаружили при их использовании.

Ответы [ 5 ]

5 голосов
/ 11 декабря 2009
  1. Выберите любое промежуточное ПО, которое вам наиболее удобно.

  2. CouchApp на данный момент очень экспериментален. Основная проблема заключается в возможности повысить безопасность вашего приложения без стандартного всплывающего окна HTTP. Это очевидно большая проблема для стандартных веб-приложений.

  3. Старайтесь не анализировать каждый запрос БД в промежуточном программном обеспечении и перестраивать запрос для couchdb. Вы можете заставить ваше промежуточное программное обеспечение действовать как прокси, так что большинство запросов пересылаются без изменений. Вы также можете добавить уровень безопасности в промежуточный слой поверх всех запросов, требующих аутентификации.

  4. Выберите промежуточное ПО / инфраструктуру с хорошими возможностями маршрутизации URL. Например, вы можете перенаправить все запросы, которые идут на mydomain.com/db/, на couchdb.

3 голосов
/ 28 ноября 2009

Если вы используете CouchDB, вы можете использовать CouchApp , который представляет собой набор сценариев для развертывания приложения непосредственно в базе данных CouchDB. По сути, вы пропускаете промежуточное программное обеспечение и используете представления, списки и функции CouchDB вместе с клиентским JavaScript для реализации всего приложения. Если ваше приложение работает в этой архитектуре, оно удивительно свежее, простое и классное.

2 голосов
/ 13 января 2010

Также, если вам нравится идея JSON / REST и привязка JavaScript-клиента к серверу, новое поколение ядра Persevere - Pintura - это чистый JS / REST-фреймворк, специально разработанный для работы с базами данных NoSQL.

1 голос
/ 19 декабря 2009

Я возился с несколькими. В конечном счете, я хотел бы переместить свой уровень контроллера MVC на внешний интерфейс jQuery / javascript и использовать чистый JSON / REST для взаимодействия с внутренним сервером. Несмотря на то, что бэкэнду понадобится сильная безопасность и, для моего приложения, некоторая способность выполнять рабочие процессы, запросы и правила.

Вы также можете посмотреть:

1) Couldkit, работающий на Токийском Кабинете. Поддерживает JSONQuery и OAuth. Работы на Ruby / Rack могут иметь достаточную функциональность. Loks как сильная реализация REST. 2) Persevere, который основан на Java и поддерживается в Dojo. Это REST-иш, но также есть вызовы типа RPC. В целом кажется очень мощным, с серверными сценариями Java и т. Д.

Я не против услышать, как вы идете.

Ура, Alex

0 голосов
/ 04 мая 2010

Я написал гем под названием Rack :: JSON именно для этой цели, он действует как базовый интерфейс REST для базы данных MongoDB. Он был вдохновлен Cloudkit и поддерживает JSONQuery, а также работает на Ruby / Rack. Позволяет хранить, а затем обращаться к / запрашивать документы JSON.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...