Повышение производительности за счет сжатия файлов в Azure CDNImprove performance by compressing files in Azure CDN

Сжатие файлов — это простой и эффективный способ, который позволяет повысить скорость передачи файлов и увеличить производительность загрузки страницы за счет уменьшения размера файлов перед их отправкой с сервера.File compression is a simple and effective method to improve file transfer speed and increase page-load performance by reducing a file's size before it is sent from the server. Этот способ позволяет снизить потребление пропускной способности и обеспечивает более высокую скорость работы для пользователей.File compression can reduce bandwidth costs and provide a more responsive experience for your users.

Сжатие файлов можно активировать двумя способами.There are two ways to enable file compression:

  • Включить сжатие на сервере-источнике.Enable compression on your origin server. В этом случае сеть доставки содержимого Azure проходит по сжатым файлам и доставляет их клиентам, которые запросили эти файлы.In this case, Azure CDN passes along the compressed files and delivers them to clients that request them.
  • Включить сжатие непосредственно на серверах POP сети CDN (сжатие в режиме реального времени).Enable compression directly on the CDN POP servers (compression on the fly). В таком случае CDN сжимает файлы и доставляет их пользователям, даже если эти файлы не были сжаты на сервере-источнике.In this case, the CDN compresses the files and serves them to the end users, even if they were not compressed by the origin server.

Важно!

Применение изменений конфигурации Azure CDN по сети может занять некоторое время.Azure CDN configuration changes can take some time to propagate through the network:

  • Для профилей Azure CDN категории "Стандартный" от Майкрософт распространение обычно выполняется в течение 10 минут.For Azure CDN Standard from Microsoft profiles, propagation usually completes in 10 minutes.
  • Для профилей Azure CDN уровня "Стандартный" от Akamai распространение обычно завершается в течение одной минуты.For Azure CDN Standard from Akamai profiles, propagation usually completes within one minute.
  • Для профилей Azure CDN уровня "Стандартный" от Verizon и Azure CDN уровня "Премиум" от Verizon распространение обычно выполняется в течение 10 минут.For Azure CDN Standard from Verizon and Azure CDN Premium from Verizon profiles, propagation usually completes in 10 minutes.

Если сжатие для конечной точки CDN задается впервые, перед устранением неполадок следует подождать 1–2 часа, чтобы настройки сжатия гарантированно распространились на серверы POP.If you're setting up compression for the first time for your CDN endpoint, consider waiting 1-2 hours before you troubleshoot to ensure the compression settings have propagated to the POPs.

Включение сжатияEnabling compression

Уровни CDN "Стандартный" и "Премиум" предоставляют одинаковые возможности сжатия, но разные пользовательские интерфейсы.The standard and premium CDN tiers provide the same compression functionality, but the user interface differs. Дополнительные сведения о различиях между уровнями CDN "Стандартный" и "Премиум" см. в разделе Обзор Azure CDN.For more information about the differences between standard and premium CDN tiers, see Azure CDN Overview.

Профили CDN уровня "Стандартный"Standard CDN profiles

Примечание

Сведения в этом разделе относятся к профилям Azure CDN уровня "Стандартный" от Майкрософт, Azure CDN уровня "Стандартный" от Verizon и Azure CDN уровня "Стандартный" от Akamai.This section applies to Azure CDN Standard from Microsoft, Azure CDN Standard from Verizon, and Azure CDN Standard from Akamai profiles.

  1. На странице профиля CDN выберите конечную точку CDN, которой вы хотите управлять.From the CDN profile page, select the CDN endpoint you want to manage.

    Конечные точки профиля CDN

    Откроется страница конечной точки CDN.The CDN endpoint page opens.

  2. Выберите Сжатие.Select Compression.

    Выбор сжатия CDN

    Откроется страница сжатия.The compression page opens.

  3. Чтобы включить сжатие, выберите значение Вкл.Select On to turn on compression.

    Параметры сжатия файла CDN

  4. Используйте типы MIME по умолчанию либо измените список, удалив или добавив типы MIME.Use the default MIME types, or modify the list by adding or removing MIME types.

    Совет

    Хотя это и возможно, не рекомендуем применять сжатие для сжатых форматов.Although it is possible, it is not recommended to apply compression to compressed formats. Например, ZIP, MP3, MP4 или JPG.For example, ZIP, MP3, MP4, or JPG.

    Примечание

    Изменение стандартного списка по умолчанию типов MIME в настоящее время не поддерживается в Azure CDN уровня "Стандартный" от корпорации Майкрософт.Modifying the default list of MIME types is currently not supported in Azure CDN Standard from Microsoft.

  5. После внесения изменений выберите Сохранить.After making your changes, select Save.

Профили CDN уровня "Премиум"Premium CDN profiles

Примечание

Сведения в этом разделе относятся только к профилям Azure CDN уровня "Премиум" от Verizon.This section applies only to Azure CDN Premium from Verizon profiles.

  1. На странице профиля CDN выберите Управление.From the CDN profile page, select Manage.

    Выбор управления CDN

    Откроется портал управления CDN.The CDN management portal opens.

  2. Наведите указатель мыши на вкладку HTTP Large (Большая платформа HTTP), а затем наведите указатель мыши на всплывающий элемент Параметры кэша.Hover over the HTTP Large tab, then hover over the Cache Settings flyout. Выберите Сжатие.Select Compression.

    Выбор сжатия CDN

    Отобразятся параметры сжатия.The compression options are displayed.

    Параметры сжатия файла CDN

  3. Включите сжатие, выбрав параметр Включить сжатие.Enable compression by selecting Compression Enabled. Введите типы MIME для сжатия в виде списка с разделителями-запятыми (без пробелов) в текстовом поле Типы файлов.Enter the MIME types you want to compress as a comma-delimited list (no spaces) in the File Types box.

    Совет

    Хотя это и возможно, не рекомендуем применять сжатие для сжатых форматов.Although it is possible, it is not recommended to apply compression to compressed formats. Например, ZIP, MP3, MP4 или JPG.For example, ZIP, MP3, MP4, or JPG.

  4. После внесения изменений выберите Обновить.After making your changes, select Update.

Правила сжатияCompression rules

Профили Azure CDN уровня "Стандартный" от МайкрософтAzure CDN Standard from Microsoft profiles

Для профилей Azure CDN уровня "Стандартный" от Майкрософт сжимаются только соответствующие файлы.For Azure CDN Standard from Microsoft profiles, only eligible files are compressed. Сжатие допускается для следующих файлов:To be eligible for compression, a file must:

Эти профили поддерживают следующие алгоритмы сжатия:These profiles support the following compression encodings:

  • gzip (GNU zip)gzip (GNU zip)
  • brotlibrotli

Если запрос поддерживает несколько типов сжатия, приоритет имеет сжатие brotli.If the request supports more than one compression type, brotli compression takes precedence.

Если в запросе ресурса указано сжатие gzip и запрос приводит к сбросу кэша, Azure CDN выполняет сжатие gzip прямо на сервере POP.When a request for an asset specifies gzip compression and the request results in a cache miss, Azure CDN performs gzip compression of the asset directly on the POP server. После этого сжатый файл используется из кэша.Afterward, the compressed file is served from the cache.

Профили Azure CDN от VerizonAzure CDN from Verizon profiles

Для профилей Azure CDN уровня "Стандартный" от Verizon и Azure CDN уровня "Премиум" от Verizon будут сжаты только подходящие файлы.For Azure CDN Standard from Verizon and Azure CDN Premium from Verizon profiles, only eligible files are compressed. Сжатие допускается для следующих файлов:To be eligible for compression, a file must:

  • более 128 байт;Be larger than 128 bytes
  • Менее 3 МБBe smaller than 3 MB

Эти профили поддерживают следующие алгоритмы сжатия:These profiles support the following compression encodings:

  • gzip (GNU zip)gzip (GNU zip)
  • DEFLATEDEFLATE
  • bzip2bzip2
  • brotlibrotli

Если запрос поддерживает несколько типов сжатия, эти типы сжатия обладают приоритетом над сжатием brotli.If the request supports more than one compression type, those compression types take precedence over brotli compression.

Если в запросе ресурса указано сжатие brotli (заголовок HTTP Accept-Encoding: br) и запрос приводит к сбросу кэша, Azure CDN выполняет сжатие brotli непосредственно на сервере POP.When a request for an asset specifies brotli compression (HTTP header is Accept-Encoding: br) and the request results in a cache miss, Azure CDN performs brotli compression of the asset directly on the POP server. После этого сжатый файл используется из кэша.Afterward, the compressed file is served from the cache.

Профили Azure CDN уровня "Стандартный" от AkamaiAzure CDN Standard from Akamai profiles

Для профилей Azure CDN уровня "Стандартный" от Akamai сжатие допускается для всех файлов.For Azure CDN Standard from Akamai profiles, all files are eligible for compression. Но должен использоваться файл типа MIME, для которого в настройках разрешено сжатие.However, a file must be of a MIME type that has been configured for compression.

Эти профили поддерживают только алгоритм сжатия gzip.These profiles support gzip compression encoding only. Когда конечная точка профиля запрашивает файл в формате gzip, он всегда запрашивается с сервера-источника, независимо от запроса клиента.When a profile endpoint requests a gzip-encoded file, it is always requested from the origin, regardless of the client request.

Варианты использования сжатияCompression behavior tables

В приведенных ниже таблицах описан принцип работы сжатия CDN Azure для всех сценариев.The following tables describe Azure CDN compression behavior for every scenario:

Сжатие отключено или для файла сжатие недопустимоCompression is disabled or file is ineligible for compression

Запрошенный клиентом формат (через заголовок Accept-Encoding)Client-requested format (via Accept-Encoding header) Формат кэшированного файлаCached-file format Ответ CDN клиентуThe CDN response to the client Примечания                                                           Notes                                                           
сжатые;Compressed сжатые;Compressed сжатые;Compressed
сжатые;Compressed Без сжатияUncompressed Без сжатияUncompressed
сжатые;Compressed Не кэшированNot cached Сжатый или несжатыйCompressed or Uncompressed Ответ источника определяет, будет ли CDN выполнять сжатие.The origin response determines whether CDN performs a compression.
Без сжатияUncompressed сжатые;Compressed Без сжатияUncompressed
Без сжатияUncompressed Без сжатияUncompressed Без сжатияUncompressed
Без сжатияUncompressed Не кэшированNot cached Без сжатияUncompressed

Сжатие включено и для файла допускается сжатиеCompression is enabled and file is eligible for compression

Запрошенный клиентом формат (через заголовок Accept-Encoding)Client-requested format (via Accept-Encoding header) Формат кэшированного файлаCached-file format Ответ CDN клиентуCDN response to the client ПримечанияNotes
сжатые;Compressed сжатые;Compressed сжатые;Compressed CDN перекодирует из одного поддерживаемого формата в другой.CDN transcodes between supported formats.
сжатые;Compressed Без сжатияUncompressed сжатые;Compressed CDN выполняет сжатие.CDN performs a compression.
сжатые;Compressed Не кэшированNot cached сжатые;Compressed CDN выполняет сжатие, если источник возвращает несжатый файл.CDN performs a compression if the origin returns an uncompressed file.
Azure CDN от Verizon передает несжатый файл при первом запросе, а затем сжимает файл и помещает его в кэш для последующих запросов.Azure CDN from Verizon passes the uncompressed file on the first request and then compresses and caches the file for subsequent requests.
Файлы с заголовком Cache-Control: no-cache никогда не сжимаются.Files with the Cache-Control: no-cache header are never compressed.
Без сжатияUncompressed сжатые;Compressed Без сжатияUncompressed CDN проводит распаковку.CDN performs a decompression.
Без сжатияUncompressed Без сжатияUncompressed Без сжатияUncompressed
Без сжатияUncompressed Не кэшированNot cached Без сжатияUncompressed

Сжатие CDN для служб мультимедиаMedia Services CDN Compression

Для конечных точек с включенной потоковой передачей CDN служб мультимедиа по умолчанию включено сжатие для следующих типов MIME:For endpoints enabled for Media Services CDN streaming, compression is enabled by default for the following MIME types:

  • application/vnd.ms-sstr+xml;application/vnd.ms-sstr+xml
  • application/dash+xml;application/dash+xml
  • application/vnd.apple.mpegurl;application/vnd.apple.mpegurl
  • application/f4m+xmlapplication/f4m+xml

См. такжеSee also