Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   loader, обмен данными (http://www.flasher.ru/forum/showthread.php?t=202387)

Esigns 12.07.2013 16:45

loader, обмен данными
 
При обмене данными флеша и пхп узкое место не запрос и не скорость обработки данных во флеше, а промежуток времени между echo $xmldata и событием loader Event.COMPLETE. Причем этот промежуток может достигать до 3-5 секунд. Может кто-то знает с чем это связанно? Спасибо, привожу код ниже:
Код AS3:

var url:String = main.host + "search.php?action=getcatfirms&catid=" + curCatId + "&sessid=" + new Date().getTime();
var request:URLRequest = new URLRequest(url);
var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE, catFirmsLoaded);
loader.addEventListener(IOErrorEvent.IO_ERROR, IOerror);
loader.load(request);

На пхп выполняется запрос и формируется xml, который идет в echo:
PHP код:

while ($row = mysql_fetch_array($res)) {
        
$xmldata .= "<firm id='".$row['id'];
        
$xmldata .= "' name='".htmlspecialchars($row['name'], ENT_QUOTES);
        
$xmldata .= "' info='".htmlspecialchars($row['info']);
        
$xmldata .= "' />";
}
header('Content-Type: text/xml; charset=utf-8'); 
echo 
$xmldata."</firms>"; 


chamele0n 12.07.2013 17:11

узкое место скорее всего является твоя медленная база данных или сервер, а вообще для этих случаев придумали
Код AS3:

getTimer

, проставляй и анализируй

caseyryan 12.07.2013 17:15

как выглядит сам запрос к базе?

Esigns 12.07.2013 18:38

Примерно так select * from firms where catid = 1;
ПХП отрабатывает за 0.013-0.2 секунды в зависимости от размера selectа.

Добавлено через 2 минуты
После запроса пишу в переменную все данные из запроса и флеш рисует все почти моментально, т.е если есть данные все хорошо работает, но ждать от 3 до 30 сек пока будет ответ от сервера никто не захочет.

AlexCooper 12.07.2013 18:49

Может у Вас проблемы с самим хостингом? Попробуйте для начала в посмотреть результаты через браузер

Esigns 12.07.2013 19:12

Проблема оказалось была в криво сделанной загрузке картинок фирм.
Т.е если нужно показать 80 фирм определенной категории мы получим 80 лоадеров которые будут пробовать загрузить картинку.
Итого 80 запросов и сервак начинает тормозить и появляются задержки в "ответах" сервера. Как я понял после загрузки картинки лоадер ее хранит в памяти, так как другого объяснения почему данные отображались во флеше из переменной практически мгновенно не я знаю.
Проблема исчезла как убрал код загрузки картинок. Спасибо всем отписавшимся.


Часовой пояс GMT +4, время: 10:15.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.