Подскажите пожалуйста, есть ли возможность, используя веб технологии реализовать счетчик на сайте, который будет просто увеличиваться на 1 каждую секунду (1, 2, 3, ... ) на серверной стороне, а клиентская часть будет всего лишь получать эти значения и без перезагрузки страницы их автоматически отображать.
Тоесть попадая на сайт, например: my-site.com, мы будем видеть текущее значение счетчика и так же отслеживать его увеличение, не перезагружая страницу.
P.S. Я взял счетчик для примера. Интересует именно понимание, есть ли такая возможность, если есть, то какой стек технологий можно применить, и как это правильно организовать.
Сталкивался с такой задачей на практике. Необходимо было строить график на сервере, сохранять значения точек в базу и отправлять каждую точку сразу после генерации всем посетителям в реальном времени.
В моем случае сервер был на node js. На сервере был запущен элементарный скрипт, внутри которого лежал setInterval с вызовом функции генерации и отправки точки.
Отвечая на вопрос про "стек технологий": node js + setInterval + socket io
При заходе на сайт в скрипт вставляется время счетчика с сервера, дальше работает скрипт.
Если перезагрузить браузер, то счетчик снова возьмется с сервера.
Таким образом 2 счетчика дублируют друг друга, при этом полная экономия трафика и нагрузки на сервер.
истинного реального времени не получить. Всегда будет рандомная задержка. Но более-менее приближенное реализовать можно. Например делать реквесты на сервер каждые N-секунд и проверять значение. Либо делать лонг-пуллинг, либо открывать сокет.