CouchDB поддерживает уведомления при изменении документов: лента изменений .
Вы можете опросить ленту изменений с параметром ?since=X
, чтобы получать только обновления, начиная с X.
Вы также можете "долго опрашивать" канал, добавив &feed=longpoll
.Если изменений пока нет, CouchDB получит ваш запрос, но не ответит до тех пор, пока, наконец, не произойдет изменение.
Или вы можете получить полный фид в стиле COMET, добавив вместо него &feed=continuous
.Это похоже на longpoll, однако CouchDB не будет никогда закрывать соединение.Каждый раз, когда происходит изменение, он отправляет вам JSON, а затем продолжает ждать.
Наконец, вы можете получать уведомления, когда что-либо изменяется в базе данных, или вы можете указать фильтр Javascript длязапустить на сервере (&filter=designdoc/filtername
).Вы будете получать уведомления только в случае одобрения фильтра.