2015-08-20 4 views
0

Я хотел знать, действительно ли это накладные расходы, чтобы использовать комету для обновления таймера с использованием javascript на клиентском сайте и отправки на сервер определенного времени для регистрации времени, если это необходимо?Какой лучший способ показать таймер на странице

body() -> 
wf:comet(fun() -> counter(1) end), 
#panel { id=placeholder }. 

counter(Count) -> 
timer:sleep(1000), 
wf:update(placeholder, integer_to_list(Count)), 
wf:flush(), 
counter(Count + 1). 

Я понимаю его накладные расходы, но я хочу знать, сколько? поскольку вся связь событий происходит через websocket.

+2

Либо вы указываете, что вы имеете в виду, либо это слишком мнение, чтобы дать ответ. –

+1

Да, это действительно накладные расходы. Используйте javascript на стороне клиента. – Lol4t0

ответ

0

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

Выполнение этой задачи с помощью javascript's setInterval легко устраняет любые проблемы. Что-то вроде следующего должно выполнить свою работу.

body() -> 
    [ 
    #panel { id=placeholder }, 
    <<" 
    <script> 
     var my_counter = 1; 
     function update_counter() { 
     objs('placeholder').html(my_counter); 
     my_counter++; 
     } 
     setInterval(update_counter, 1000); 
    </script> 
    ">> 
    ]. 

 Смежные вопросы

  • Нет связанных вопросов^_^