99% не нагрузки, а запросов да. жой же чисто контентный ресурс.
ну соотношение картинка - md5 можно кранить и в редисе. Оно сожрет пару гигов оперативы. Использовать тупо кеш типа

если не найдено в redis, то запустить пхп который поищет в базе и воткнет в редис для следущего раза.

ну и ключи с ttl в недельку чтобы не хранить в там ничего старого и ненужного.

Переписать немного. Но имеет смысл только если на машинах запаса нет по мощности, конечно.

Хотя учитывая что 99% нагрузки это отдача статики -- я бы переживал что приходитьс яна каждую картинку дергать пхп.
а тут хуяк и як
А вот всё же.

1) Ты хранишь как оригинал картинки, так и картинку с ватермарком. То есть ты не генеришь картинку с ватермарком на лету.

2) Ты определяешь какую картинку надо показывать через php и , значит ,на каждый запрос на хранилище ты дергаешь пхп, правильно?

Если всё так, то проверку на то какую картинку отдавать надо делать в nignx. А ещё лучше в varnish.

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

Если ты определяешь хотлинк ли это через сессии, то можно закостылить что-нибудь типа такого:

1) вытащить из куки в нгинксе id сессии
2) вытащит ьи мемкеша/редиса хотлинк ли это
3) показать нужную картинку

Ну я не скажу что порядок именно такой, но nginx будет вечно держать коннекшен на редис/мемкеш и работать будет быстро и надёжно.

Костыли лютые, канеш, но ты сэкономишь несколько процессора и времени на реквест если не будешь пускать пхп.
ну космический челнок такими темпами никак.

я мечтаю хотя бы о том чтобы лет через 20 можено было поменять половину конечность на кибоговые.
Ну ты крутой тогда. Извини что наехал :).
https://github.com/intaro/nginx-image-filter-watermark

вообще вот что-нибудь типа такого. Хотя если ты просто при аплоаде генеришь такую же картиинку с ватермарком , а не делаешь на лету -- смысла в общем-то нет. Что-то я зря запаниковал.
скажи, а ты каждый раз на лету генеришь картинку с ватермаркой или ты её кешируешь на 100500 лет и хранишь рядом с оригиналом?
О, спасибо братишь. Порадовал.

Лапута, наверное, второй наилюбимейший мультик после Навсикаи.
Кока, я не могу заснуть и всё думаю об это проблеме.

Ты же это условие не пхп писал, а в nginx rule, ведь правда? Ты же не отдаёшь картинки через пхп?!