Скорость работы location

Андрей Василишин a.vasilishin на kpi.ua
Вт Дек 6 13:42:11 UTC 2011


Что будет быстрее работать куча location video1, video2 ...
                 location /video1 {
                         location ~ \.flv$ {
                                 root /var/www;
                                 try_files
                                         /video-1.site.com-st8$uri
                                         /video-1.site.com-st7$uri
                                         /video-1.site.com-st3$uri
                                         /video-1.site.com-st4$uri
                                         /video-1.site.com-st5$uri
                                         /video-1.site.com-st6$uri
                                         /video-1.site.com-st1$uri
                                         /video-1.site.com-st2$uri
                                         =404;
                                 internal;
                                 flv;
                         }
                         location ~ \.mp4$ {
                                 root /var/www;
                                 try_files
                                         /video-1.site.com-st8$uri
                                         /video-1.site.com-st7$uri
                                         /video-1.site.com-st3$uri
                                         /video-1.site.com-st4$uri
                                         /video-1.site.com-st5$uri
                                         /video-1.site.com-st6$uri
                                         /video-1.site.com-st1$uri
                                         /video-1.site.com-st2$uri
                                         =404;
                                 internal;
                                 mp4;
                                 mp4_buffer_size    1m;    # default 512k
                                 mp4_max_buffer_size  10m;   # default 5m
                         }


или один

                 location ^ /(video1|video2|video3) {
                         location ~ \.flv$ {
                                 root /var/www;
                                 try_files
                                         /video-1.site.com-st8$uri
                                         /video-1.site.com-st7$uri
                                         /video-1.site.com-st3$uri
                                         /video-1.site.com-st4$uri
                                         /video-1.site.com-st5$uri
                                         /video-1.site.com-st6$uri
                                         /video-1.site.com-st1$uri
                                         /video-1.site.com-st2$uri
                                         =404;
                                 internal;
                                 flv;
                         }
                         location ~ \.mp4$ {
                                 root /var/www;
                                 try_files
                                         /video-1.site.com-st8$uri
                                         /video-1.site.com-st7$uri
                                         /video-1.site.com-st3$uri
                                         /video-1.site.com-st4$uri
                                         /video-1.site.com-st5$uri
                                         /video-1.site.com-st6$uri
                                         /video-1.site.com-st1$uri
                                         /video-1.site.com-st2$uri
                                         =404;
                                 internal;
                                 mp4;
                                 mp4_buffer_size    1m;    # default 512k
                                 mp4_max_buffer_size  10m;   # default 5m
                         }

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

-- 
WBR, Andrey Vasilishin CDIG1-UANIC, CDIG1-RIPE



Подробная информация о списке рассылки nginx-ru