Я пытаюсь решить, как я хочу разделить мою логику.Разделение логики: поиск, база данных и приложение
Я размещаю свою основную бизнес-логику в Node.js/Express, и я использовал Mongo для своей базы данных. Это отлично работает, но теперь мне нужно реализовать действительно мощную поисковую систему, так как поиск - одна из самых важных функций моего сайта. Сначала я был очень поражен отсутствием поддержки и интеграции, которые предлагали Монго и Куш, но потом я понял, что пытался получить базу данных, чтобы сделать то, для чего это не было сделано.
Теперь я смотрю на использование Solr или ElasticSearch, но его начало кажется, что они способны даже выполнять некоторые или большинство запросов, которые может сделать Mongo, если я правильно индексирую документы (и их природа, я буду индексировать почти все свойства каждого документа). Так что, я думаю, может быть, мне нужно просто использовать что-то мертвое простое, как Redis, и полагаться на мощный инструмент поиска, например Solr/ElasticSearch.
Это кажется мудрым выбором? Кроме того, почему нет модулей Nodejs для Solr, Lucene или ElasticSearch?
Я также нашел [RedBackJS] (http://redbackjs.com), который выглядит так, как будто это может быть правильным решением для меня, но опять же, меня интересует мудрость некоторых более опытных архитекторов. – cjroth
Вам в основном нужна только клиентская библиотека HTTP (желательно одна, которая может объединять соединения), и вы можете самостоятельно создать класс запроса solr (не забудьте сделать URL и Solr char escaping). – aitchnyu