Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Можно ли уменьшить потребляемую память при выполнении этого скрипта?
Форумы портала PHP.SU » » Вопросы новичков » Можно ли уменьшить потребляемую память при выполнении этого скрипта?

Страниц (1): [1]
 

1. x-miller-x - 17 Февраля, 2017 - 10:55:34 - перейти к сообщению
Есть скрипт который выводит xml файл

PHP:
скопировать код в буфер обмена
  1.  
  2. header( "content-type: application/xml; charset=utf-8" );
  3.                 $data = file_get_contents('./content/feed.xml');
  4.                 echo $data;
  5.  


Файл feed.xml весит 400+мб
а сам скрипт употребляет для выдачи больше 930мб

Есть ли варианты уменьшить память ?
2. Мелкий - 17 Февраля, 2017 - 11:02:49 - перейти к сообщению
0) выкинуть вообще php, попросить отдавать файл напрямую nginx.
1) readfile
3. x-miller-x - 17 Февраля, 2017 - 11:40:24 - перейти к сообщению
Мелкий про вариант 0 , тут такое дело, все агрегаторы и прочие сервисы уже скачивают по заданному урлу, а через nginx если делать , придется всем писать, и не все могут сразу изменить(

1) Посмотрим сколько памяти будет упортреблять readfile
4. Мелкий - 17 Февраля, 2017 - 12:23:11 - перейти к сообщению
x-miller-x пишет:
придется всем писать

Зачем? Завернуть известный урл на другой обработчик - элементарно выполняется без изменения публичного урла. Хоть проксировать на физически другую машину.

 

Powered by ExBB FM 1.0 RC1