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