Зависит от того, как вы его кодируете.Обычный способ сделать это - отправлять javascripted ajax-запрос каждые 1-3 секунды или около того и опрашивать ход выполнения с сервера.
Это приведет к промежуточному закрытию соединения и будет более щадящим для сервера.Если вы используете постоянное соединение (WebSockets также попадают в эту категорию), вы будете держать сервер занятым.Кроме того, «сон» заставляет процессор быть занятым, чего я бы старался избегать на вашем месте.С другой стороны, если у вас есть ресурсы для этого ...
Я могу только повториться: это зависит от того, как вы его кодируете, и что вы ожидаете от него в конце.
Если вы хотите, чтобы клиент выполнял больше работы и относился к серверу осторожно, выберите 1-й вариант, и, если вы считаете, что ваш сервер справится с этим, выберите 2-й вариант и перейдите к «постоянному» и даже используйте WebSockets (которыйпредставляют постоянные соединения с вашим сервером - помните, что они еще не широко поддерживаются клиентами веб-браузера).
Хотя я думаю, что в конце концов - компромисс простого прогресса по сравнению с загрузкой ЦП вашего сервера с постоянным сном и некоторыми постоянными соединениями поверх этого заставит вас выбрать свой 1-й вариант: опроситьсерверный скрипт для значения прогресса каждые х секунд со стороны клиента.Кстати, это то, что делает Twitter, и их серверы сохранились до сегодняшнего дня!;)