Re[6]: POC
От: Sinclair Россия https://github.com/evilguest/
Дата: 18.12.20 14:22
Оценка:
Здравствуйте, Denis Ivlev, Вы писали:

DI>Здравствуйте, Sinclair, Вы писали:


S>>Интрига не в этом. Интрига — что, если у нас внутри этой таблички есть регион 1000*1000, в каждой из ячеек которого написано R[-1]C[-1]+1.

S>>И вот у нас пользователь пишет в левом верхнем углу этого региона число 42. За какое время мы раздадим это изменение остальным 999 пользователям?

DI>Ответ — когда-нибудь. В любом случае на сервере или в кластере выполняем все расчеты, исходим из того, что у нас не должно быть грязных чтений, поэтому пока идет обработка ячейки блокируются.

Отличная идея, коллега. Как выполняется блокировка — через сервер, или через клиента?
S>>Оповещаем пользователей лениво, например каждые 200 мс, то есть аккумулируем изменения и отправляем одним батчем. Появляется 2 кейса:
DI>1. Обработка выполнилась быстрее и пользователь получил актуальные данные
DI>2. Обработка в процессе и в таком случае у пользователя изменяемые ячейки становятся недоступными для редактирования
А вы уже получили полный список ячеек для блокировки?

На самом деле я не жду от вас конкретного алгоритма — это просто пример того, что spreadsheets не сводятся к тупому редактору независимых скаляров. Такую-то штуку, действительно, можно придумать за двадцать минут, особенно если резолвить конфликты как last edit wins.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.