| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Общие вопросы > Синхронизация с сервером |
| Автор: AGENTxXx 14.3.2012, 11:49 |
| Добрый день! Хотелось бы услышать ваши мнения как решить сделущую задачу: Есть 2 приложения: один админ, другой - клиент. Общаться др. с др. могут только через сервер. Когда админ начинает игру, он может послать время на сервер, а клиент может считать это время. Но как сделать так, чтобы время как можно с меньшей погрешностью? Как я сейчас вижу, нужно сделать так, чтобы когда админ отправил время он слушал от сервера ответ, а ответ поступит только тогда, когда клиент прочитает это время. Но я не знаю каким образом можно это сделать, а именно - чтобы админ слушал постоянно ответ от сервера, а не по таймеру... Ну если иначе нельзя, то видно по таймеру прийдется делать! Очень нужны ответы... Можно сказать проект уже горит. Буду очень благодарен. PS: используем java script и сервер - php. Использование скриптов на стороне сервера - не вариант, так как не успеем это реализовать просто.... Жду, жду, жду!!!!!!! |
| Автор: skyboy 14.3.2012, 12:29 |
| https://www.google.com.ua/search?q=permanent+connection+javascript, возможно, то, что ты ищешь. |
| Автор: AGENTxXx 14.3.2012, 16:11 |
| Это было не совсем то... Вообще то нужно что то типа постоянного слушателя... Кто прогал на том же C# думаю поймет. Принцип создания клиент-серверного приложения. В данном случае решил проблему следующем образом: админ посылает запрос на сервер. В это время в таблицу записывается время обращения админа. А далее когда клиент посылает запрос от сервера высчитывается разница между текущим временем и временем обращения аднима и получаем число, которое нужно вычисть из времени у клиента => время на приложении админа и приложении клиента - будет одинаково! Использовал функцию time(), так как мне нужно было до точности - секунды. Если есть еще у кого-то лучшее предложение - пишите! =) |
| Автор: ksnk 14.3.2012, 17:03 |
| Так это просто синхронизация времени? А просто синхронизироваться по серверу почему нельзя? |
| Автор: AGENTxXx 18.3.2012, 20:05 |
| Да в общем я так и сделал... Просто почему то сразу не получилось "вычислить" данный способ. А так как проек можно сказать, что уже горел, то пришлось сюда написать, чтобы попробовать ускорить данное решение. в общем, сейчас все нормально работает! Всем спасибо! =) |