Подходит ли rethinkdb для приложения чата

Я увидел, что rethinkdb имеет возможности реального времени, что заставило меня подумать, что он отлично подойдет для приложения чата, однако я увидел предостережение на веб-сайте переосмысления, в котором говорится, что приложения, требующие высокой пропускной способности записи, должны вместо этого рассматривать riak.

Что это за ограничение для записи, о котором идет речь, и подходит ли он для стандартного чат-приложения, которое будет поддерживать многие тысячи одновременных пользователей?


person MonkeyBonkey    schedule 10.10.2015    source источник
comment
1. Вы грубо, это вопрос с меткой rethinkdb, и если у вас нет опыта с ним, вы должны воздержаться от комментариев 2. вам нужна база данных или какое-то хранилище данных для сохранения состояния чата, если вы не хотите только что-то в память 3. не изобретая заново колесо, а просто вытаскивая компоненты с полки, чтобы собрать приложение чата, которое соответствует индивидуальным требованиям, реализация приложения в хранилище данных тривиальна. 4. это очень конкретный вопрос о переосмыслении полной пропускной способности записи на примере варианта использования.   -  person MonkeyBonkey    schedule 10.10.2015
comment
Почему не эджабберд + риак?   -  person Suvitruf - Andrei Apanasik    schedule 10.10.2015
comment
иметь кучу кредитов у существующего поставщика переосмысления и не обязательно нуждаться в поддержке xmpp ... поэтому было более любопытно узнать больше о rethinkdb, поскольку это новая технология. Я знаю, что это можно сделать и другими способами, но хотел изучить возможности переосмысления.   -  person MonkeyBonkey    schedule 10.10.2015
comment
Не думаю, что у вас возникнут проблемы с Rethink. Но в любом случае, если у вас возникнут проблемы с производительностью, вы всегда можете использовать какой-то кеш: memcache, Redis и т. Д., Чтобы уменьшить нагрузку на переосмысление   -  person Suvitruf - Andrei Apanasik    schedule 10.10.2015


Ответы (1)


RethinkDB - хороший выбор для приложения чата. Фактически, его каналы изменений в реальном времени специально разработаны, чтобы упростить создание таких приложений реального времени. .

В FAQ на самом деле говорится:

В некоторых случаях RethinkDB жертвует доступностью записи в пользу согласованности данных. Если высокая доступность записи имеет решающее значение, и вы не возражаете против конфликтов, вам может быть лучше использовать систему в стиле Dynamo, такую ​​как Riak.

Доступность записи - это не то же самое, что пропускная способность записи. Пропускная способность RethinkDB более чем способна обрабатывать тысячи одновременных пользователей (большинство баз данных в этом отношении справятся).

Что касается доступности для записи: RethinkDB поддерживает согласованность, тогда как Riak поддерживает доступность. Этот набор компромиссов обычно называют теоремой CAP, которая утверждает, что в одной распределенной системе невозможно достичь всех трех свойств: согласованности, доступности и устойчивости к разделению.

Вы можете узнать больше о том, что это означает, в FAQ по архитектуре RethinkDB.

person mglukhovsky    schedule 10.10.2015