Концепция таймера на стороне сервера

Вот сценарий:

У меня есть сервер SmartFox, работающий на Amazon EC2 и использующий MySQL для базы данных. Я использую AS3 в качестве языка программирования.

У меня есть виртуальный мир, в котором пользователь может щелкнуть значок (например, дизайн дома), и он показывает анимацию по мере строительства дома. На его сборку уходит восемь часов, и он будет отображать процент с индикатором выполнения по мере сборки.

Я мог бы использовать таймеры AS3, но проблема в том, что пользователь может выйти из виртуального мира (или закрыть браузер) и вернуться позже (например, через два-восемь часов).

Я не делал ничего подобного раньше, поэтому кто-нибудь может мне помочь с деталями, такими как, какую общую стратегию нужно использовать, как ее реализовать и т. Д.

Пожалуйста помоги.

1 ответ

Решение

Вы можете сделать это следующим образом - сразу после того, как пользователь нажмет и запустит процесс, уведомит сервер об этом и заставит серверный скрипт получать текущее время и сохранить его в БД. Если пользователь выходит из системы сразу после этого, просто извлекайте сохраненную временную метку каждый раз, когда ваше клиентское приложение запускается снова, и рассчитайте, сколько времени прошло с момента получения временной метки (на стороне сервера), а затем передайте рассчитанное значение клиенту. Таким образом, вы всегда будете отображать правильное время и расчеты будут независимыми от внутренних часов клиента.

Другие вопросы по тегам