Является ли CouchDB примером Javascript на стороне сервера?

Я смотрю на использование серверной части Javascript и взгляну на persevere/pintura, но для новичка, такого как я, мне нужно больше документации и руководств, и CouchDB, кажется, имеет много этого, но используется ли он как js-инструмент на стороне сервера?

С уважением


person RubyGladiator    schedule 19.08.2010    source источник
comment
Попробуйте переосмыслить, какой из ответов правильный.   -  person Nek    schedule 26.06.2012
comment
Спасибо, должным образом отметили и оценили!!   -  person RubyGladiator    schedule 26.06.2012
comment
Приятно видеть ответ, который я считаю лучшим проверенным :)   -  person Nek    schedule 26.06.2012


Ответы (5)


Да (согласно тому, что @Pointy сказал выше). JavaScript в CouchDB работает на стороне сервера. :)

Помимо этого, JavaScript в CouchDB может делать гораздо больше, чем просто сопоставлять/уменьшать запросы. Он также используется для проверки документа, обработки обновлений (например, для обработки XML, отправленного в CouchDB), а также для вывода HTML или другой разметки либо из одного документа JSON (с использованием _show), либо из результатов запроса map/reduce (с использованием _список).

Однако CouchDB не предлагает доступ к файловой системе или прослушивателям TCP/IP, как это делает Node.js. Прямо сейчас JavaScript сосредоточен на «доставке и обработке» содержимого базы данных (таких вещах, как проверка, форматирование и запросы).

Если вам интересно изучить варианты обработки вещей, которые CouchDB не выполняет «внутренне» (обработка изображений, отправка электронных писем и т. д.), вы можете проверить мой ответ о варианты архитектуры CouchApp.

CouchApp определенно является жизнеспособным вариантом для веб-приложений. В сочетании с репликацией трудно превзойти.

person BigBlueHat    schedule 14.11.2010
comment
Спасибо за ответ и варианты архитектуры вашего поста CouchApp. также очень полезно - person vincentlcy; 21.02.2013

http://nodejs.org/ — отличный пример серверного javascript. Если вы не хотите писать полное веб-приложение на NodeJS, вы можете активировать его с помощью команды node.

person Marcel Jackwerth    schedule 19.08.2010
comment
Я был бы не против написать все свое веб-приложение Nodejs. Я сделал учебник по чату несколько месяцев назад, но я ничего не знал о том, как он работает под капотом, и сейчас я смотрю. - person RubyGladiator; 20.08.2010

CouchDB — это база данных с интересной функцией, она позволяет вам взаимодействовать через API RestFull, что делает ее идеально подходящей для доступа через Интернет, либо в javascript, либо в других клиентских средах. Если вам нужна среда разработки JavaScript на стороне сервера, попробуйте Servoy. Он позволяет разрабатывать полнофункциональные серверные приложения на javascript, включая легкий доступ ко всем основным базам данных.

person Bitsplitter    schedule 14.11.2010

Краткий ответ: Да.

Длинный ответ:

Вместе с CouchDB поставляется механизм Javascript – SpiderMonkey (самый первый движок с открытым исходным кодом, написанный Бренданом Эйхом, создателем javascript)

Функция View CouchDB — это функция JavaScript, работающая на стороне сервера, которая действует как половина Map операции map/reduce для создания представления.

Кроме того, есть API-интерфейс javascript на стороне клиента, который можно использовать для связи со слоем REST для извлечения/обновления документов, где также используется jQuery в CouchDB.

Подробнее о возможностях javascript CouchDB как на стороне сервера, так и на стороне клиента:

Движок по умолчанию способен выполнять множество функций, а доступность пакетов ограничена по сравнению с Node.js. Kan.so можно считать NPM для CouchDB, где некоторые пакеты являются серверными. Например, существуют такие фреймворки, как двойственность, которые пытаются использовать как серверную, так и клиентскую стороны. Возможность javascript для повторного использования кода для рендеринга с диваном.

Еще о двигателе:

(Выбор Spider Monkey вместо v8 обусловлен тем, что для варианта использования CouchDB сокращение карты не предназначено для v8. Также учитывайте упаковку, многопоточность, а также историческую причину, по которой v8 не существовало в то время, когда был выбран SpiderMoney) см. [список рассылки ] и твит2

Есть даже проект по переносу всего CouchDB на Node.js (т.е. вместо Erlang), Честерфилд

Я рад, если кто-то может добавить, как Erlang общается с движком javascript. Спасибо всем за ответ, это важно прояснить для таких людей, как я, которые путают CouchDB с некоторыми пакетами Node.js.

person vincentlcy    schedule 21.02.2013

Нет, CouchDB – это документоориентированная база данных, к которой можно обращаться и индексировать в стиле MapReduce с помощью JavaScript. CouchDB также предлагает инкрементную репликацию с двунаправленным обнаружением и разрешением конфликтов.

http://couchdb.apache.org/

CommonJS можно использовать для серверного JavaScript, см. здесь: http://www.commonjs.org/

NodeJS — другой: http://nodejs.org/

person SQLMenace    schedule 19.08.2010
comment
Спасибо, я изучил javascript, ruby, html, css и не заморачивался с бэкендом. Не могли бы вы перечислить инструменты, необходимые для использования javascript на стороне клиента и на стороне сервера? Я предположил, что база данных и сервер покрывают одну и ту же область с небольшим перекрытием, но я думаю, что нет. В настоящее время я проверяю ссылки на игру со мной. Спасибо - person RubyGladiator; 20.08.2010
comment
JS также используется для проверки и создания списков и представлений в различных форматах. С помощью Couchapp вы можете писать полные веб-приложения, которые размещаются на CouchDB, а движущиеся части написаны на JS, который запускается на сервере. - person Peter Tillemans; 20.08.2010
comment
Это выглядит очень круто и просто. Единственное, что беспокоит, — это слова «ограничения» в их описании. Я прочитаю документацию, чтобы проверить это. CouchApps — это приложения JavaScript и HTML5, которые обслуживаются непосредственно из CouchDB. Если вы сможете вписать свое приложение в эти ограничения, вы получите масштабируемость и гибкость CouchDB бесплатно. - person RubyGladiator; 20.08.2010
comment
@SQLMenace Нет, это не совсем правильный ответ, поскольку CouchDB (через интеграцию с SpiderMonkey) на самом деле действительно позволяет запускать Javascript на сервере для таких вещей, как map/reduce, как вы говорите. Он находится на сервере и на нем работает Javascript, так почему же это не серверный Javascript? Обычно этот термин означает не в веб-браузере, где все все еще ожидают его появления. - person Pointy; 20.08.2010
comment
Вы смешиваете разные понятия. CommonJS — это стандарт библиотеки. Сам по себе он бесполезен. CouchDB реализует CommonJS. Доказательная ссылка Итак, вы противоречите сами себе. - person Nek; 02.02.2011