Redis подходит для данных такого типа. Он также поддерживает некоторые фундаментальные структуры данных и обеспечивает их работу.
Недавно я преобразовал свое приложение для форума Django, чтобы использовать его для всех данных в режиме реального времени/отслеживания. Это так хорошо, что у вас больше не возникает icky чувство, которое вы получаете, когда делаете такие вещи (SET views = views + 1
и другие записи на каждой странице view) с реляционной базой данных.
Вот пример использования Redis для хранения данных, необходимых для отслеживания активности пользователя, в том числе сохранение упорядоченный набор последних видел пользователей до настоящего времени, в Python:
def seen_user(user, doing, item=None):
"""
Stores what a User was doing when they were last seen and updates
their last seen time in the active users sorted set.
"""
last_seen = int(time.mktime(datetime.datetime.now().timetuple()))
redis.zadd(ACTIVE_USERS, user.pk, last_seen)
redis.setnx(USER_USERNAME % user.pk, user.username)
redis.set(USER_LAST_SEEN % user.pk, last_seen)
if item:
doing = '%s <a href="%s">%s</a>' % (
doing, item.get_absolute_url(), escape(str(item)))
redis.set(USER_DOING % user.pk, doing)
Вы можете поделиться тем, что веб-стек вы используете? LAMP или .NET или? – DuckMaestro