Оперативное преобразование и сотрудничество в режиме реального времени - PullRequest
0 голосов
/ 28 февраля 2011

После прочтения этого поста (возможно, вы можете понять суть, глядя на изображения, не нужно читать весь текст), мне трудно решить, в какой моментпомощь технологий типа комета .Мне кажется (наивно), что все это может быть достигнуто с помощью запросов ajax и базы данных для получения нескольких версий.Это правда?.

Вероятно, я что-то упустил, поэтому было бы здорово получить разъяснения.

ОБНОВЛЕНИЕ: Учитывая полезный ответ, написанный Эндрю, который говорит, что Ajax-подход к этой проблемеэто не своевременно, мне было интересно, почему, то есть, на каком этапе ответ, отправленный сервером клиенту, вызовет задержку?

1 Ответ

1 голос
/ 28 февраля 2011

Комета IS Ajax-запросов.

Чтобы сервер мог отправлять уведомления в браузеры пользователей (т. Е. Каждый раз, когда вы видите, что сервер отправляет изменение в диаграммах), пользователю необходимо уже подключиться к серверу.Термин комета относится к способу поддержания этого соединения с использованием длинного опроса ajax или тому подобного.

Да, вы можете реализовать это, посылая запрос Ajax каждые x секунд.Но это расточительно и не своевременно.

[Редактировать]

Когда я говорю, что это не своевременно, я говорю, что, используя вызов ajaxобновление по интервалу будет иметь задержку, равную тому, что это интервал.Сервер НЕ МОЖЕТ отправить обновление клиенту.Он может только отвечать на запросы от клиента.Поэтому, если сервер получает новую информацию, он должен сидеть на ней, пока все клиенты не вернутся и не попросят обновления.В подобном сценарии люди могут редактировать одну и ту же информацию и фиксировать ее одновременно, что должно быть обработано сервером и к чему относится статья.Использование кометного фреймворка только уменьшит вероятность этого, потому что различные клиенты будут лучше синхронизированы.

...