Делаю движок. Картинки разного масштаба - как лучше?

12
PA
На сайте с 12.02.2016
Offline
24
#11
Chukcha:
Ресайзить по мере поступления запроса и кешировать

if (file_exist($img . $widh . - . $heght) {
вывели
} else {
ресайз
вывели
}

пхп с file_exist можно лишний раз и не дергать, это лишнее.

в апаче есть RewriteCond %{REQUEST_FILENAME} -f

в nginx есть try_files

если используется vds или сервер, то лучше настроить собственный кеш nginx-а для хранения картинок.

у меня режутся картинки на лету и сохраняются в кеше nginx-a на 365 дней. если нужно, то можно дернуть любую картинку/тумбу с "волшебным" параметром и она принудительно пересоздастся из исходника.

данное решение хорошо масштабируется, можно резать на нескольких бекендах одновременно. я запускал на трех - работает быстро и красиво.

. . .
C
На сайте с 04.02.2005
Offline
291
#12
ps axf:
пхп с file_exist можно лишний раз и не дергать, это лишнее.
в апаче есть RewriteCond %{REQUEST_FILENAME} -f
в nginx есть try_files


если используется vds или сервер, то лучше настроить собственный кеш nginx-а для хранения картинок.
у меня режутся картинки на лету и сохраняются в кеше nginx-a на 365 дней. если нужно, то можно дернуть любую картинку/тумбу с "волшебным" параметром и она принудительно пересоздастся из исходника.
данное решение хорошо масштабируется, можно резать на нескольких бекендах одновременно. я запускал на трех - работает быстро и красиво.

Причем здесь apache, ngnix?

Речь идет о времени генерации, а не о времени доступа.

file_exist - прям такая задерганная, а то что она кешируемая, не?

eklips007
На сайте с 02.02.2010
Offline
64
#13
Chukcha:
а для 10-ти в час.. ЛЮБОЙ сервак выдержит

Для 10-тив час можно делать все что угодно - любой шаред выдержит "пик" даже в 50 человек. Даже кешировать нет смысла.

LinkBoss.net - Трастовые ссылки для увеличения трафика в 10 раз! (http://linkboss.net/)
C
На сайте с 04.02.2005
Offline
291
#14
eklips007:
Для 10-тив час можно делать все что угодно - любой шаред выдержит "пик" даже в 50 человек. Даже кешировать нет смысла.

Но сервер пожалеть надо, он же не железный )

И на шаред нужно уважать соседа..

PA
На сайте с 12.02.2016
Offline
24
#15
Chukcha:
Причем здесь apache, ngnix?
Речь идет о времени генерации, а не о времени доступа.
file_exist - прям такая задерганная, а то что она кешируемая, не?

1. веб сервер (апач/нгикс) принимает запрос

2. запускает отдельный процесс пхп, который интерпретирует пхп файл

3. тут file_exist

вопрос в бессмысленном втором пункте и по нагрузке именно этого пункта на сервер.

во что превратиться открытие одной страницы с 20 картинками? - как минимум в запуск 21-го интерпретатора пхп.

а прилетит одновременно десяток хитов? - будет практически 210 одновременных запусков интерпретатора пхп и вопли хозяна сайта: помогите ДДОСЯТ, шаред-хостер мне вырубил аккаунт, хостер - плохой и т.д.

понятно, что типичный веб-программист о таких мелочах даже не задумывается и он скажет: да, ддосят, нужен более мощный хостинг, анти-ддос защита, клаудфаре и т.д.

кстати, недавно видел подобное: отдача файлов из пхп (файлы по 5-200мег) - отдельный сервер, т.к. на шареде такое бездумное использование пхп терпеть не будут, ну и клаудфаре т.к. типа их же "ддосят"... (куча висящих процесов пхп, потребление памяти)

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий