OvenMediaEngine Enterprise
한국어
한국어
  • About
    • Introduction
    • Release Notes
      • 0.18.2
      • 0.18.1
      • 0.18.0
      • 0.17.3
      • 0.17.2
      • 0.17.1
      • 0.17.0
      • 0.16.8
      • 0.16.7
      • 0.16.6
      • 0.16.5
      • 0.16.4
  • Installation
    • Getting Started
      • Getting Started with Ubuntu
      • Getting Started with RHEL
      • Getting Started with Docker
    • Configuration Structure Overview
  • Web Console
    • Getting Started with Web Console
    • Web Console Overview
      • Sign In
      • Change Password
      • Web Console Home
      • Stream List
        • Managed and Instant Streams
        • Scheduled Channels | 0.16.4.0+
        • Multiplex Channels | 0.16.5.0+
      • Event Monitoring | 0.18.1.0+
        • Event Configuration
        • Event Specification
      • Web Console Publishing | 0.18.1.2+
      • Logs
      • Configuration Files
      • Restart
  • Web Console Settings
    • Server Settings
    • Live Sources (Ingress Protocols) Settings
    • ABR and Transcoding Settings
    • Streaming (Egress Protocols) Settings
    • TLS Encryption Settings | 0.14.0.0+
    • Access Control Settings
    • Thumbnail Settings | 0.15.7.0+
    • Recording Settings | 0.16.5.0+
    • Push Publishing Settings | 0.15.14.0+
    • REST API Settings | 0.11.0.0+
    • Alert Settings | 0.15.11.0+
  • CDN Compatibility
    • Origin Server Redundancy
    • Origin Cache Control
  • Protection
    • RTMP Authentication | 0.17.2.0+
    • Proxy Protocol Integration | 0.16.6.2+
    • Digital Rights Management (DRM)
      • OvenMediaEngine Configuration for DRM | 0.16.0.0+
      • PallyCon DRM Configuration | 0.16.4.0+
  • Performance
    • Hardware-Accelerated Video Encoding | 0.16.4.0+
  • Event Insertion
    • Insert SEI into H.264 (AVC) Streams | v0.18.0.0+
    • Insert AMF0 messages in RTMP Push Publisher | 0.17.3.0+
  • Monetization
    • Insert Ad Markers (EXT-X-CUE-OUT/EXT-X-CUE-IN) | v0.17.3.0+
    • Insert onCuePoint messages into YouTube Live | 0.17.3.0+
  • Advanced Management
    • Generate Audio PTS | 0.17.2.3+
    • API Storage | 0.17.0.0+
    • Restart Application | 0.17.0.0+
    • Record Delivery | 0.16.5.0+
    • Add Delay to the Stream
    • Control Default Playlist Creation
  • REST API
    • v2
      • Statistics
        • Current
Powered by GitBook
On this page
  1. CDN Compatibility

Origin Cache Control

LL-HLS Origin Server Cache 제어하기

HTTP Response에 Cache-Control Header를 추가하여 Edge Server 또는 CDN Cache Server에서 콘텐츠를 Cache에 보관하는 시간을 지정 할 수 있습니다.

다음과 같이 Server.xml의 <Publishers><LLHLS><CacheControl>에서 설정 할 수 있습니다:

<?xml version="1.0" encoding="UTF-8"?>
<Server version="8">
  ...
  <VirtualHosts>
    <VirtualHost>
      <Applications>
        <Application>
          <Publishers>
            ...
            <LLHLS>
              <OriginMode>true</OriginMode>
              <CacheControl>
                <MasterPlaylistMaxAge>0</MasterPlaylistMaxAge>
                <ChunklistMaxAge>0</ChunklistMaxAge>
                <ChunklistWithDirectivesMaxAge>60</ChunklistWithDirectivesMaxAge>
                <SegmentMaxAge>-1</SegmentMaxAge>
                <PartialSegmentMaxAge>-1</PartialSegmentMaxAge>
              </CacheControl>
            </LLHLS>
          </Publishers>
        </Application>
      </Applications>
    </VirtualHost>
  </VirtualHosts>
</Server>
Element
Description

MasterPlaylistMaxAge

Master Playlist의 max-age를 지정합니다. 이것은 Stream이 생성되어 있는 동안 변경되지 않습니다.

ChunklistMaxAge

Media Playlist의 max-age를 지정합니다. 이것은 항상 최신 상태의 Media Playlist를 응답해야 하는 URL이며 LL-HLS의 Delivery Directives가 없습니다. 따라서 이것은 가능한 짧게 Cache하거나 또는 Cache하지 않아야 합니다.

ChunklistWithDirectivesMaxAge

SegmentMaxAge

Segment File의 max-age를 지정합니다. Segment File의 URL은 Stream이 생성되어 있는 동안 유일하며, 같은 URL의 콘텐츠는 변경되지 않기 때문에 오랜 시간 Cache할 수 있습니다.

PartialSegmentMaxAge

Partial Segment File의 max-age를 지정합니다. Partial Segment File의 URL은 Stream이 생성되어 있는 동안 유일하며, 같은 URL의 콘텐츠는 변경되지 않기 때문에 오랜 시간 Cache할 수 있습니다.

<CacheControl> Element의 의미

Element
Description

0

CacheControl: no-cache, no-store

콘텐츠를 절대 캐시하지 말 것을 지시하여 매 요청마다 새로운 데이터를 Server에서 받아옵니다.

양수 (0 초과)

CacheControl: max-age=<seconds>

지정된 시간 동안 Cache가 유효하도록 지시합니다.

-1

CacheControl 헤더 미포함

Origin에서 명시적인 Cache Header를 보내지 않도록 지시합니다. 이 값을 통해 Cache를 사용하지 않거나, CDN이나 Cache 서버의 자체 정책을 적용하거나, Client나 Browser의 기본 Cache 동작을 따를 수 있습니다.

<CacheControl>에 0 값 사용 시 서버 부하가 증가할 수 있고, -1 값 사용 시 예상치 못한 캐싱 동작이 발생할 수 있으므로 테스트가 필요합니다.

PreviousOrigin Server RedundancyNextRTMP Authentication | 0.17.2.0+

가 포함 된 Media Playlist의 max-age를 지정합니다. 현재 지원되는 Delivery Directives는 _HLS_msn과 _HLS_part입니다. 이것은 Segment 번호와 Partial Segment 번호가 지정된 Playlist이며, 이 URL은 Stream이 생성되어 있는 동안 유일하며, 같은 URL의 콘텐츠는 변경되지 않기 때문에 오랜 시간 Cache할 수 있습니다.

Low-Latency HLS Delivery Directives