Etherpad Lite передает целые документы или только diff? - PullRequest
1 голос
/ 08 марта 2012

При работе с очень большими документами это может привести к перегрузке соединения и заземлению или успешно справиться с использованием различий?

Ответы [ 3 ]

3 голосов
/ 19 марта 2012

Короче говоря: diff

Каждый раз, когда кто-то нажимает клавишу в документе etherpad, все подключенные участники получают короткое сообщение (около 100 байт + несколько килобайт или около того заголовков HTTP и прочее)

Пропускная способность не будет первым узким местом, поэтому не беспокойтесь о насыщении («заполнении») вашей пропускной способности с помощью сервера etherpad lite.Базовая структура (node.js), возможно, могла бы (статические файлы и т. Д.), Но код etherpad lite, безусловно, будет ограничен скоростью процессора и, возможно, дисковым пространством.(Классический ehterpad может генерировать ГБ файлов журналов диска в день, и я не знаю, по умолчанию ли "lite" более ограниченное ведение журнала, но вы, конечно, можете изменить это или просто удалить старые файлы журнала)

Я осмотрел старый / оригинальный etherpad, и etherpad lite использует те же методы для обработки текстовых документов.Ни один документ не хранится «полностью», но всегда как набор изменений.Изменения запускаются «воспроизведение», чтобы воссоздать документ.Чтобы избежать воспроизведения тысяч мелких изменений, в базе данных хранятся совокупные изменения (поэтому вы воспроизводите изменения в масштабе времени log10).

1 голос
/ 09 марта 2012

Вы должны посмотреть на это: http://en.wikipedia.org/wiki/Operational_transformation.

Пока я не знаю о Etherpad, http://codecollab.gamooga.com/ и http://collabedit.com/ используют это.Документы Google используют один из вариантов этого.

1 голос
/ 08 марта 2012

Я бы задал этот вопрос автору (petermartischka - googlemail - com?) Вместо этого, возможно, разместив ответ здесь?

...