Почему Twitter (twimg.com) использует суффикс для размера (например, ": большой") вместо параметра запроса
Почему Twitter (twimg.com) использует суффикс для размера (например, ": большой") вместо параметра запроса?
Пример:
https://pbs.twimg.com/media/CrhajQHXgAEQ2US.jpg:large
С архитектурной точки зрения я нахожу это интересным, и мне интересно, если я что-то упустил.
Делают ли они это, потому что некоторые прокси / клиенты не кэшируют URL с параметрами запроса?
Может кто-нибудь пролить некоторый свет на это?
2 ответа
Я не уверен, что это связано с некоторыми проблемами с кэшированием, но есть семантическая точка зрения. URL https://pbs.twimg.com/media/CrhajQHXgAEQ2US.jpg:large
указывает на определенный ресурс. И этот ресурс CrhajQHXgAEQ2US.jpg:large
, Это не CrhajQHXgAEQ2US.jpg
как это может быть в случае со строкой запроса.
Согласно https://developer.twitter.com/en/docs/twitter-api/v1/data-dictionary/object-model/entities#photo_format , использование суффикса является устаревшим форматом, и они были перемещены (начиная с 2015 г., но полное внутреннее использование к 2017 г.) до версии параметра запроса. Причина в том, что:
Использование современного формата приведет к лучшему показателю попадания в CDN для вызывающего абонента, тем самым уменьшив задержки загрузки за счет меньшей вероятности создания и загрузки мультимедиа из центра обработки данных.
(На этой странице "современный" предпочтительный URL-адрес будет
https://pbs.twimg.com/media/CrhajQHXgAEQ2US?format=jpg&name=large
.)
Итак, мое предположение - акцент на моем и предположении - заключается в том, что либо в первые дни они решили использовать формат суффикса, не задумываясь о том, что было бы проще кэшировать, либо что вы правы, но кеширование догнало запрос параметры в середине 2010-х гг.