Зарегистрировался на Rackspace. Rackspace использует сетку Akamai для раздачи контента. Её же вроде использует Facebook.
Настройка CDN - всё очень быстро и понятно, минут за 15 можно все сделать. Но увы не заработало сразу, сервер в Германии. Открываю контент напрямую 100мсек, открываю через Raskspace - 150мсек. Расстроился, стал думать, что здесь всё также плохо у Amazon, на всякий случай написал в саппорт. Оказалось, что мой ресурс не кешировался, Akamai шел за CSS файлом на мой сервер каждый раз.
Причиной тому http header, добавляемый Nginx - Vary https://support.rackspace.com/how-to/rackspace-cdn-object-is-not-being-cached/. Несмотря на то, что у них в документации написано, что они закеширует ресурс, если присутвуют оба хидера Vary: Accept-Encoding и Content-Encoding: gzip, в моем случае этого не произошло. Как только убрал Vary совсем, всё заработало.
Саппорт кстати довольно грамотный отвечал аж на выходных в течении 30-40 минут. Чтобы понять произошел hit или miss по кешу, можно использовать эту команду
curl -L -s -o /dev/null -D - -H "Pragma: akamai-x-get-request-id, akamai-x-cache-on, akamai-x-cache-remote-on, akamai-x-check-cacheable, akamai-x-get-cache-key, akamai-x-get-extracted-values, akamai-x-get-true-cache-key" https://yourdomain,scdn2.secure.raxcdn.com/main.css
Обратить внимание на хидеры - X-Cache: TCP_MISS или TCP_HIT + X-Check-Cacheable: NO
Тестируя из разных регионов, обнаружилось, что Amazon даже рядом не стоит с Akamai.
Комментариев нет:
Отправить комментарий