Я поддерживаю и старую основанную на PHP CMS, которая содержит программное обеспечение для форумов, систему публикации статей, среди прочего - все обычай. Теперь владельцы хотят реализовать глобальное псевдо реальное время (это, вероятно, просто обновить один раз каждые десять секунд, или что-то) поток активности, похожее на тот, на Facebook:Поток активности в реальном времени
Прямо сейчас я m, пытаясь придумать лучший и простой способ реализовать это таким образом, чтобы его можно было легко расширить, включив в него различные виды деятельности (создание записей в блогах, комментирование фотоальбомов/сообщений в блогах, создание или ответ на темы форума, публикация статьи и т. д.)
Передний бит не должен быть слишком твердым, Что я не уверен в том, как настроить таблицу событий в соответствии с ommodate для всех различных видов событий, которые будут включены. Все события будут включать в себя такие вещи, как идентификатор пользователя, URL-адрес, дату-время и «тип события», но мне нужно было бы сохранить очень разные данные в зависимости от того, создал ли пользователь фотоальбом или кто-то ответил на тему форума , Как я могу это решить?
Ваше предположение верно. Все пользователи будут видеть один и тот же канал. Что касается рекомендованных подходов: 1. Это похоже на то, о чем я думал, но проблема заключается в том, что он не будет находиться где-то рядом с реальным временем. Клиент хочет приятного эффекта слайдов всякий раз, когда происходит новое. Как я уже сказал в своем посте, это не должно быть _really_ в реальном времени, но по крайней мере. 2. Это звучит очень интересно. Я посмотрю. 3. Такая же проблема, как # 1. Очень хороший ответ, хотя! –
Ничего не мешает вам генерировать статический файл каждую минуту, если хотите (и сценарий достаточно быстр, чтобы сделать реалистичный вариант). Затем с помощью нескольких строк Javascript вы можете восстановить статический html-файл и вставить его в контейнер на странице. –
Однажды каждую минуту все еще было слишком медленно. Один раз каждые 10 секунд будет приемлемым. Я только что начал проверять memcached, но я решил, что я попрошу, прежде чем я углубится: будут ли сохраненные значения в memcached глобальными? Поэтому, если пользователь # 1 создает поток форума, я могу нажать объект, который представляет его на memcached, а затем, в следующий раз, когда поток будет обновлен для пользователя № 2, они увидели бы этот объект? –