Вернуться   Форум SAPE.RU > Общие вопросы > Разработка и сопровождение сайтов

-->
Ответ
 
Опции темы
Старый 17.01.2010, 03:27   #1
Специалист
 
Аватар для kibergex
 
Регистрация: 08.06.2009
Адрес: Саудовская Аравия
Сообщений: 168
Вес репутации: 0
kibergex не любят в этих краяхkibergex не любят в этих краяхkibergex не любят в этих краях
По умолчанию apache + nginx и отдача файла на php

Ситуация: Стоит на сервере apache + nginx. Nginx отдает контент пользователю.

Вопрос: Если apache выполняет скрипт php в котором используется readfile() (считыет файл размером 10 мб), отдаст ли apache сразу контент nginx'у или apache будет выдавать nginx файл кусочками (если медленный канал у пользователя).

Примечание: создается впечатление, что apache по кускам считывает файл nginx, и при этом apache и nginx вдвоем обслуживают одного пользователя.
kibergex вне форума   Ответить с цитированием
Старый 17.01.2010, 03:34   #2
Специалист
 
Аватар для Dromok
 
Регистрация: 19.06.2009
Сообщений: 494
Вес репутации: 200
Dromok - за этого человека можно гордитсяDromok - за этого человека можно гордитсяDromok - за этого человека можно гордитсяDromok - за этого человека можно гордитсяDromok - за этого человека можно гордитсяDromok - за этого человека можно гордитсяDromok - за этого человека можно гордитсяDromok - за этого человека можно гордится
По умолчанию

nginx как бекенд работает? ну так они на разных портах работают в таком случае. nginx отвечает только за статику, он же ее и отдает. А апач отдает всё динамическое(php). То есть в такой конфигурации апачу совершенно фиалетово какие настройки у nginx, так как он РНР автономно обрабатывает.

Добавлено через 1 минуту
а вот чтобы апач обрабатывал РНР и зачем-то его отдавал nginx'у я о таком даже не слышал. Зачем? получается лишний расход процессорного времени и оперативной памяти туда сюда данные гонять...

Последний раз редактировалось Dromok; 17.01.2010 в 03:35. Причина: Добавлено сообщение
Dromok вне форума   Ответить с цитированием
Старый 17.01.2010, 12:44   #3
Эксперт
 
Аватар для seocore
 
Регистрация: 18.06.2007
Адрес: Картофель
Сообщений: 2,417
Вес репутации: 356
seocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущее
По умолчанию

Цитата:
Сообщение от kibergex Посмотреть сообщение
Ситуация: Стоит на сервере apache + nginx. Nginx отдает контент пользователю.
Вопрос: Если apache выполняет скрипт php в котором используется readfile() (считыет файл размером 10 мб), отдаст ли apache сразу контент nginx'у или apache будет выдавать nginx файл кусочками (если медленный канал у пользователя).
отдаст ровно столько, на сколько настроены буферы proxy в nginx'е

Цитата:
Сообщение от kibergex Посмотреть сообщение
Примечание: создается впечатление, что apache по кускам считывает файл nginx, и при этом apache и nginx вдвоем обслуживают одного пользователя.
отключите на уровне Apache сам HTTP/1.1, также выключите Keep-Alive, а на уровне nginx'а увеличить надо объем буферов проксирования...

и еще - отдавать скриптами 10Мб файлики - это вверх программерского безобразия, начинайте оптимизировать скрипты, кто вам мешает сложить эти 10Мб в /cache/, после чего сделать на него header("Location: /cache/".$file);
seocore вне форума   Ответить с цитированием
Старый 17.01.2010, 21:41   #4
Вредина
 
Аватар для Jooz
 
Регистрация: 03.07.2007
Адрес: д.Коноплянка
Сообщений: 3,535
Вес репутации: 432
Jooz - прекрасное будущееJooz - прекрасное будущееJooz - прекрасное будущееJooz - прекрасное будущееJooz - прекрасное будущееJooz - прекрасное будущееJooz - прекрасное будущееJooz - прекрасное будущееJooz - прекрасное будущееJooz - прекрасное будущееJooz - прекрасное будущее
По умолчанию

Я вообще практикую nginx ни как не связывать с апачем, кидаю его на нужный порт, например 8008 и все статику, которую нужно раздаваться через nginx так и кидаю site.ru:8008/my_stat_file.zip, разумеется пробрасываю скриптами.
__________________
Чтобы произошло чудо нужно обязательно дунуть. Если не дунуть - чуда не произойдет!
Jooz вне форума   Ответить с цитированием
Старый 17.01.2010, 21:45   #5
Мастер
 
Регистрация: 17.03.2008
Сообщений: 638
Вес репутации: 237
ahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущее
По умолчанию

Цитата:
Сообщение от seocore Посмотреть сообщение
и еще - отдавать скриптами 10Мб файлики - это вверх программерского безобразия, начинайте оптимизировать скрипты, кто вам мешает сложить эти 10Мб в /cache/, после чего сделать на него header("Location: /cache/".$file);
А как отдает этот форум вложения?
ahsinis вне форума   Ответить с цитированием
Старый 18.01.2010, 12:28   #6
Эксперт
 
Аватар для seocore
 
Регистрация: 18.06.2007
Адрес: Картофель
Сообщений: 2,417
Вес репутации: 356
seocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущее
По умолчанию

Цитата:
Сообщение от ahsinis Посмотреть сообщение
А как отдает этот форум вложения?
упс, я не вкурсе как вобла отдает аттачи, но если аттач отдают через php то это конкретное безобразие, ибо держать в памяти 32Мб процесс вместо 400Кбайтного - это как раз показывает программерские оплошности при разработке
seocore вне форума   Ответить с цитированием
Старый 18.01.2010, 13:37   #7
Мастер
 
Регистрация: 17.03.2008
Сообщений: 638
Вес репутации: 237
ahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущееahsinis - прекрасное будущее
По умолчанию

а почему процесс должен быть большим? функция flush выплевывает контент сразу в http поток, можно не считывать весь файл в память

хотя тут я не знаток, может все таки файл читается операционкой в буфер, хотя это сомнительно.

ЗЫ На счет кеша: я бы лучше делал символические ссылки, это и пямять экономит и быстрее, т.к. нет копирования
ahsinis вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PHP CGI и PHP модуль Apache. Тем кто хорошо знает. lbmoney Вопросы от новичков 13 16.05.2009 11:14
Нужна консультация по phpbb3, wp, apache. djmonax Вопросы от новичков 0 04.04.2009 15:36
Контекст. Кто поставил - хорошая отдача? sni Курилка 8 16.04.2008 21:36
Сервер windows Apache+php какие права на раздел ставить integral9 Вопросы по работе системы 8 21.09.2007 16:19
Какова отдача? Помогите определиться. lay Вопросы по работе системы 24 15.08.2007 19:07


Часовой пояс GMT +3, время: 00:48.