Dmitry Dedukhin | 1 Apr 06:05
Picon

Re: Re[5]: Отдача больших файлов

Как вариант эффективной раздачи больших файлов
можно использовать схему 
бэкенд(хранилище, рэйд-массив)+фронтенд(сервер, с
которым "общается" 
пользователь).
После загрузки на фронтенд каждый файл разбивается
на небольшие куски 
(2-5МБ), каждый кусок кладется на случайно выбранный
бэкенд, идентификатором 
файла является его хэш (md5 например). Информация о
расположении кусков 
хранится в простейшем случае в центральной базе (для
высоконагруженного 
проекта имеет смысл использовать распределенную БД
или её аналог).
При скачивании файла nginx запрашивает информацию о
расположении всех кусков 
(или части в случае запроса с заголовком Range) и
начинает отдавать файл, 
запрашивая каждый кусок с демона, висящего на каждом бэкенде.

----- Original Message ----- 
From: "shaman" <shaman712@...>
To: "Михаил Монашёв" <nginx-ru@...>
Sent: Tuesday, March 31, 2009 10:44 PM
Subject: Re[5]: Отдача больших файлов

> Здравствуйте.
>
>> У  них или у HP вроде и 512Гигов есть 4U сервера. Пётр Зайцев
(Continue reading)

Igor Sysoev | 1 Apr 07:24
Picon

Re: Re[5]: Отдача больших файлов

On Wed, Apr 01, 2009 at 08:05:18AM +0400, Dmitry Dedukhin wrote:

> Как вариант эффективной раздачи больших файлов
можно использовать схему 
> бэкенд(хранилище, рэйд-массив)+фронтенд(сервер, с
которым "общается" 
> пользователь).
> После загрузки на фронтенд каждый файл разбивается
на небольшие куски 
> (2-5МБ), каждый кусок кладется на случайно выбранный
бэкенд, 
> идентификатором файла является его хэш (md5
например). Информация о 
> расположении кусков хранится в простейшем случае в
центральной базе (для 
> высоконагруженного проекта имеет смысл
использовать распределенную БД или 
> её аналог).
> При скачивании файла nginx запрашивает информацию о
расположении всех 
> кусков (или части в случае запроса с заголовком Range) и
начинает отдавать 
> файл, запрашивая каждый кусок с демона, висящего на
каждом бэкенде.

А зачем файл разбивать ?

--

-- 
Игорь Сысоев
http://sysoev.ru
(Continue reading)

Igor Sysoev | 1 Apr 07:29
Picon

Re: Не работает server_name_in_redirect

On Tue, Mar 31, 2009 at 11:22:49PM +0400, Dmitry wrote:

> Здравствуйте, nginx-ru.
> 
> Обновился с nginx 0.6.35 на 0.7.46 и обнаружил для себя неприятную
> вещь:
> 
> директива optimize_server_names упразднена -> вместо неё ->
> server_name_in_redirect .
> 
> однако в nginx 0.7.x она не работает.
> 
> конфиг такой:
> 
> ....
> 
>  server {
>     listen ip:80 default;
>     server_name localhost.localhost;
>     server_name_in_redirect off;
>     set $path /var/www;
> 
> ....
> 
>  location /
>     {
> 
> ....
> 
>     root $path;
(Continue reading)

Dmitry Dedukhin | 1 Apr 08:26
Picon

Re: Re[5]: Отдача больших файлов

1. Для того, чтобы один файл отдавался более чем одним
бэкендом-хранилищем 
(особенно в случае нескольких супер-популярных файлов).
2. Для того, чтобы запросы с Range'ем с большей
вероятностью использовали 
разные бэкенды (т.е. в случае многопоточного
скачивания скорость будет 
выше).

Понятно, что для небольших файлов (меньше размера
одного чанка) он всё равно 
будет лежать на одном хранилище.

----- Original Message ----- 
From: "Igor Sysoev" <is@...>
To: <nginx-ru@...>
Sent: Wednesday, April 01, 2009 9:24 AM
Subject: Re: Re[5]: Отдача больших файлов

On Wed, Apr 01, 2009 at 08:05:18AM +0400, Dmitry Dedukhin wrote:

> Как вариант эффективной раздачи больших файлов
можно использовать схему
> бэкенд(хранилище, рэйд-массив)+фронтенд(сервер, с
которым "общается"
> пользователь).
> После загрузки на фронтенд каждый файл разбивается
на небольшие куски
> (2-5МБ), каждый кусок кладется на случайно выбранный бэкенд,
> идентификатором файла является его хэш (md5
(Continue reading)

Lin | 1 Apr 09:01
Picon

Конфликт apache и nginx

Nginx и apache работают вместе. На нескольких IP nginx работает
как фронд-энд к apache, а на одом apache работает один, т.е. без фронд-энда.
Так вот, если процесс nginx-а выключен, то сайт (который
работает без nginx-а) просто летает. А если включить nginx,
буквально через несколько минут сайт начинает
очень тормозить, может вообще по минуте отдавать
странички. Временами даже пинги не доходят до
сервера. Если вырубить nginx, то все сразу же становится
на свои места.
не подскажете, в чем может быть проблема?

Igor Sysoev | 1 Apr 09:16
Picon

Re: Re[5]: Отдача больших файлов

On Wed, Apr 01, 2009 at 10:26:15AM +0400, Dmitry Dedukhin wrote:

> 1. Для того, чтобы один файл отдавался более чем одним
бэкендом-хранилищем 
> (особенно в случае нескольких супер-популярных файлов).
> 2. Для того, чтобы запросы с Range'ем с большей
вероятностью использовали 
> разные бэкенды (т.е. в случае многопоточного
скачивания скорость будет 
> выше).
> 
> Понятно, что для небольших файлов (меньше размера
одного чанка) он всё 
> равно будет лежать на одном хранилище.

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

> ----- Original Message ----- 
> From: "Igor Sysoev" <is@...>
> To: <nginx-ru@...>
> Sent: Wednesday, April 01, 2009 9:24 AM
> Subject: Re: Re[5]: Отдача больших файлов
> 
> 
> On Wed, Apr 01, 2009 at 08:05:18AM +0400, Dmitry Dedukhin wrote:
> 
> >Как вариант эффективной раздачи больших файлов
(Continue reading)

Dmitry Dedukhin | 1 Apr 10:36
Picon

Re: Re[5]: Отдача больших файлов

Ну хорошо, а если сравнить с вариантом, когда каждый
файл целиком лежит на 
одном диске?

----- Original Message ----- 
From: "Igor Sysoev" <is@...>
To: <nginx-ru@...>
Sent: Wednesday, April 01, 2009 11:16 AM
Subject: Re: Re[5]: Отдача больших файлов

On Wed, Apr 01, 2009 at 10:26:15AM +0400, Dmitry Dedukhin wrote:

> 1. Для того, чтобы один файл отдавался более чем одним бэкендом-хранилищем
> (особенно в случае нескольких супер-популярных файлов).
> 2. Для того, чтобы запросы с Range'ем с большей
вероятностью использовали
> разные бэкенды (т.е. в случае многопоточного
скачивания скорость будет
> выше).
>
> Понятно, что для небольших файлов (меньше размера
одного чанка) он всё
> равно будет лежать на одном хранилище.

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

> ----- Original Message ----- 
(Continue reading)

Vladimir Fursin | 1 Apr 10:57
Picon

Re[3]: циклический ресет при закачке файлов

Tuesday, March 31, 2009, 3:48:18 PM, you wrote:
> Это не дебаг - это у вас обычный error.log

> Вам надо
> - собрать nginx с опцией --with-debug
> - добавить в конфиг волшебное слово
>    debug_connection XX.XX.XX.XX.bmc-ea;
>    (возможно, понадобится ручками разрешить имя и
вписать адрес)

09:52:33.684545 IP 183-44.static.example.com.57560 > mass.example.com.http: S
1943448155:1943448155(0) win 8192 <mss 1452,nop,nop,sackOK>
E..03.@.}.C     M..,.......Ps..[....p. .............
09:52:33.684568 IP mass.example.com.http > 183-44.static.example.com.57560: S
301706704:301706704(0) ack 1943448156 win 5840 <mss 1460,nop,nop,sackOK>
E..0..@.@.......M..,.P......s..\p...%...........
09:52:33.711450 IP 183-44.static.example.com.57560 > mass.example.com.http: . ack 1 win 65340
E..(3.@.}.C     M..,.......Ps..\....P..<jJ........
09:52:33.792055 IP 183-44.static.example.com.57560 > mass.example.com.http: P 1:741(740) ack 1 win 65340
E...3.@.}.@.M..,.......Ps..\....P..<....GET /fetch/mp3/oGFr0z8SWUcyOXuRb-AMNP4LA6D
09:52:33.792072 IP mass.example.com.http > 183-44.static.example.com.57560: . ack 741 win 6660
E..(!.@.@.......M..,.P......s..@P...L...
09:52:33.797301 IP mass.example.com.http > 183-44.static.example.com.57560: P 1:231(230) ack 741
win 6660
E...!.@.@.......M..,.P......s..@P....%..HTTP/1.1 200 OK
Server: nginx/0.6.35
Dat
09:52:33.797342 IP mass.example.com.http > 183-44.static.example.com.57560: . 231:1683(1452) ack
741 win 6660
E...!.@.@../....M..,.P......s..@P.......ID3.....        .TPE2............ ........TPE1...
(Continue reading)

Picon
Gravatar

Re: Конфликт apache и nginx

что в лог-файлах access и error в обоих севрерах во время
одновременной работы?

--
Best regards, Alexey Bobok
Igor Sysoev | 1 Apr 11:19
Picon

Re: Re[5]: Отдача больших файлов

On Wed, Apr 01, 2009 at 12:36:50PM +0400, Dmitry Dedukhin wrote:

> Ну хорошо, а если сравнить с вариантом, когда каждый
файл целиком лежит на 
> одном диске?

Тоже будет плохо. Но не будет лишних телодвижений.

> ----- Original Message ----- 
> From: "Igor Sysoev" <is@...>
> To: <nginx-ru@...>
> Sent: Wednesday, April 01, 2009 11:16 AM
> Subject: Re: Re[5]: Отдача больших файлов
> 
> 
> On Wed, Apr 01, 2009 at 10:26:15AM +0400, Dmitry Dedukhin wrote:
> 
> >1. Для того, чтобы один файл отдавался более чем одним бэкендом-хранилищем
> >(особенно в случае нескольких супер-популярных файлов).
> >2. Для того, чтобы запросы с Range'ем с большей
вероятностью использовали
> >разные бэкенды (т.е. в случае многопоточного
скачивания скорость будет
> >выше).
> >
> >Понятно, что для небольших файлов (меньше размера
одного чанка) он всё
> >равно будет лежать на одном хранилище.
> 
> По идее, это должно работать, если бэкенды заняты
(Continue reading)


Gmane