Russian Qt Forum
Ноябрь 26, 2024, 02:18 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: qwebview периодически подвисает при загрузке страницы  (Прочитано 3367 раз)
alfox84
Гость
« : Сентябрь 10, 2014, 08:32 »

День Добрый,

Использую: Qt 4.8.5

qwebview периодически подвисает при загрузке страницы приблизительно в 5% случаев (за день страница открывается примерно 4-5 тысяч раз)
Подвисает на время от нескольких секунд до нескольких минут.

Подскажите, пожалуйста, куда копать.

Записан
Fregloin
Супер
******
Offline Offline

Сообщений: 1025


Просмотр профиля
« Ответ #1 : Сентябрь 10, 2014, 12:28 »

возможно подвисает изза того что сервер не все отдает за короткое время (возможно на сервере идут какие то другие тяжелые процессы, которые подтормаживают генерацию страницы).. ну и поичтайте про кеширование,должно помочь поидее
Записан
Bepec
Гость
« Ответ #2 : Сентябрь 10, 2014, 12:36 »

WebView отрабатывает в основном потоке все операции. Если на странице есть java операции, то тем более тормозить будет. К сожалению решения не предвидится.
Записан
alfox84
Гость
« Ответ #3 : Сентябрь 10, 2014, 12:44 »

возможно подвисает изза того что сервер не все отдает за короткое время (возможно на сервере идут какие то другие тяжелые процессы, которые подтормаживают генерацию страницы).. ну и поичтайте про кеширование,должно помочь поидее

С сервера снимаем логи, при возникновении ситуаций - на стороне сервера все чисто, в mysql slow-query на те моменты нет ничего, память свободная есть, iowait'ов нет, нагрузки на сети нет.
Кеширование - стоит QWebSettings::setMaximumPagesInCache(50), пробовал играться с этим значением, но проблема все равно появляется периодически.
Записан
alfox84
Гость
« Ответ #4 : Сентябрь 10, 2014, 12:48 »

WebView отрабатывает в основном потоке все операции. Если на странице есть java операции, то тем более тормозить будет. К сожалению решения не предвидится.

Забыл уточнить, что тормозит не сама страница, а процесс загрузки страницы. Загрузка страницы идет и приостанавливается часто на 10%, 30%, 90% на время от нескольких секунд до  нескольких минут. На сервере в этот момент никакой нагрузки нет. Если работать с сайтом в обычном браузере, например в хроме, но проблемы не наблюдается.
Записан
Bepec
Гость
« Ответ #5 : Сентябрь 10, 2014, 12:50 »

Хром на лету в потоке создаёт страницу. WebView же подгружает часть и, видимо, пытается отрисовать.

PS а почему бы вам не использовать QNAM вместо WebView?
Записан
alfox84
Гость
« Ответ #6 : Сентябрь 10, 2014, 12:57 »

Хром на лету в потоке создаёт страницу. WebView же подгружает часть и, видимо, пытается отрисовать.

PS а почему бы вам не использовать QNAM вместо WebView?

Приложение - софтфон, в котором работает оператор контакт центра.
QNAM - это как я понимаю QNetworkAccessManager, через него я могу получить страницу, но мне ее еще нужно показать оператору, а без WevView тут уже как мне кажется не обойтись.
Записан
Bepec
Гость
« Ответ #7 : Сентябрь 10, 2014, 13:01 »

Ну можно подставить некрасивый костыль. Типа получить страницу QNAM'мом и, распарсив, представить оператору.

PS но тут уже надо пробовать и смотреть. На мой взгляд выигрыш в скорости будет афигенным. К примеру страница аутентификации одного сайта.
QWebView - секунд 10.
QNAM - секунду, мб и меньше.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.237 секунд. Запросов: 23.