EtherPad отправляет все наборы изменений для огромных файлов?

Предположим, существует огромный файл, в котором количество изменений является гигантским, так что коллекция наборов изменений является гигантской. EtherPad отправляет все наборы изменений? Или он периодически делает снимок файла, чтобы избежать отправки действительно старых наборов изменений? И как все это реализовано в серверной базе данных?

1 ответ

Решение

RE отправка наборов изменений см.: https://github.com/ether/etherpad-lite/tree/master/doc/easysync

Нет файла для создания снимков, так что я предполагаю, что вы имеете в виду содержимое пэда? Если это так, то нет, Etherpad Lite пока не сохраняет метатекст, но это то, что Etherpad, вероятно, потребуется реализовать, чтобы временный слайдер мог обрабатывать планшеты с большим содержимым (см. Соответствующие вопросы, которые обсуждают это). У старого Etherpad была эта функциональность, но она стоила дорого (ужасная схема базы данных).

База данных Etherpad абстрагируется через нечто, называемое UeberDB https://github.com/Pita/ueberDB. Большой выигрыш UeberDB дает Etherpad уровень кеширования перед записью и переносимостью. UeberDB позволяет Etherpad хранить содержимое площадок в памяти и не требует накладных расходов на постоянную запись в базу данных; записи ставятся в очередь для уменьшения нагрузки на сервер. UeberDB также позволяет администраторам сайтов использовать свою любимую базу данных, но за счет необходимости хранить KV.

RE, пункты 2 и 3, потому что Ueber будет хранить только значения ключей, которые вы в конечном итоге изо всех сил пытаетесь выполнить, например, полнотекстовое индексирование, которое является ключевой особенностью MySQL, несмотря на использование MySQL в качестве внутренней базы данных. Это, однако, было недавно преодолено и находится в ветке, частично поддерживаемой Mozilla и другими участниками проекта Etherpad. Кроме того, MySQL предоставляет свои собственные функции кэширования, однако это не полезно для Etherpad, поскольку данные постоянно меняются.

Должно быть ясно, что я говорил о Etherpad Lite, так как "старый Etherpad" больше не поддерживается, поэтому его следует избегать. На всю документацию Etherpad следует ссылаться из авторитетного источника http://etherpad.org/

Другие вопросы по тегам