Mac의 고급 콘텐츠 캐싱 설정
고급 구성 매개변수를 사용하여 콘텐츠 캐싱의 세부 네트워크 구성을 변경할 수 있습니다.
터미널에서 명령어 라인을 사용하거나 /Library/Preferences/com.apple.AssetCache.plist 파일에 있는 키 값을 수정하여 고급 구성 매개변수를 변경할 수 있습니다. 일부 변경 사항을 적용하려면, 콘텐츠 캐싱을 중단하고 재시동해야 합니다.
고급 설정
시스템 설정(macOS 13 이상) 또는 시스템 환경설정(macOS 12.0.1 또는 이전 버전)의 공유 > 콘텐츠 캐싱으로 이동하여 콘텐츠 캐싱 서비스의 고급 설정을 구성할 수 있습니다. 그런 다음 Option 키를 길게 누르고 고급 옵션을 선택하십시오.
기본
명령을 사용한 다음 sudo AssetCacheManagerUtil reloadSettings
명령어를 입력하여 Mac용 터미널 앱의 더 많은 고급 설정을 구성할 수 있습니다. 고급 설정이 아닌 일반 설정을 보려면 AssetCacheManagerUtil settings
명령어를 사용하십시오.
defaults
명령어로 간단하고 복잡한 키를 모두 설정할 수 있습니다.
예를 들어, 포트 번호(50000)를 비동적 포트 번호로 하드 코딩하려면 포트 번호는 49192에서 65535 사이의 숫자여야 다음 명령어를 관리자로 실행할 수 있습니다.
$ sudo -u _assetcache defaults write /Library/Preferences/com.apple.AssetCache.plist Port -int 50000
ListenRanges
는 사전 배열 방식의 복잡한 키입니다. 예를 들어 ListenRanges 키에 2개의 IP 주소 범위를 설정하려면, 관리자 권한으로 다음 명령어를 실행하십시오.
$ sudo -u _assetcache defaults write /Library/Preferences/com.apple.AssetCache.plist ListenRanges '( { first = 10.0.0.1; last = 10.0.0.254; }, { first = 10.1.0.1; last = 10.1.0.254; } )'
기본 명령어를 사용한 후, 콘텐츠 캐시 설정을 다시 로드하기 위해 다음 명령어를 실행하십시오.
$ sudo AssetCacheManagerUtil reloadSettings
캐싱 구성 plist 키 및 값
중요사항: 아래 표에서 설명한 파일이 아닌 com.apple.AssetCache.plist 파일에서 설정값을 변경하지 마십시오.
키는 두 값 사이에 포함된 값을 가질 수 있습니다. 키 값은 낮은 값과 높은 값 사이의 어떤 숫자든 가능합니다. 값이 하한 값보다 낮게 설정되면 하한 값이 사용됩니다. 값이 상한 값보다 높게 설정되면 상한 값이 사용됩니다. 예를 들어 PeerDownloadTimeout은 5에서 300 사이로 고정되어 있습니다. 값을 301 또는 1000으로 설정하면, 300으로 설정됩니다. 값을 4 또는 -10으로 설정하면 5로 설정됩니다.
일부 변경사항은 AssetCacheManagerUtil reloadSettings
명령어를 실행한 다음 적용되며, 다른 변경사항은 콘텐츠 캐싱을 중단하고 재시동해야 합니다. reloadSettings을 지원하는 키인 경우에만 콘텐츠 캐싱 환경설정에서 설정이 가능합니다(아래 표에 설명되어 있음). 콘텐츠 캐싱 환경설정에서 값을 설정하려면 다음과 같이 하십시오.
macOS 13 이상: Apple 메뉴 > 시스템 설정 > 일반 > 공유 > 콘텐츠 캐싱을 선택하십시오.
macOS 12.0.1 또는 이전 버전: Apple 메뉴 > 시스템 환경설정 > 일반 > 공유 > 콘텐츠 캐싱을 선택하십시오.
키 | 설명 | 기본값 | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
AgeForLowSpaceAlert | 저장 공간이 부족하여 콘텐츠 캐시에서 콘텐츠가 제거되었고 제거된 콘텐츠가 이 기간보다 적은 날짜 전에 콘텐츠 캐시에 추가된 경우, 공간 부족 경고가 나타납니다. | 30(일) | |||||||||
AllowCacheDelete | 컴퓨터의 다른 앱에서 저장 공간이 필요한 경우, 자동으로 캐시에서 콘텐츠를 제거하도록 허용합니다. 콘텐츠 캐싱이 최대의 효율을 내도록 하려면 이 설정을 끄십시오. | 예 | |||||||||
AllowImports | 가져오기(업로드) 요청을 허용합니다. | 예 | |||||||||
AllowPersonalCaching | 사용자의 iCloud 데이터 캐싱을 허용합니다. AllowPersonalCaching 또는 AllowSharedCaching 키 중 최소 하나는 ‘예’여야 합니다. 콘텐츠 캐싱 설정에서도 이 값을 설정할 수 있습니다. | 예 | |||||||||
AllowSharedCaching | 앱과 소프트웨어 업데이트와 같은 iCloud 콘텐츠가 아닌 콘텐츠를 제어합니다. AllowPersonalCaching 또는 AllowSharedCaching 키 중 최소 하나는 ‘예’여야 합니다. | 예 | |||||||||
AllowWirelessPortable | Wi-Fi로만 네트워크에 연결된 Mac 노트북 컴퓨터에서 콘텐츠 캐싱을 실행할 수 있도록 허용합니다. | 예 | |||||||||
CacheLimit | 콘텐츠 캐시에 사용하는 저장 공간의 최대 바이트 수를 지정합니다. 콘텐츠 캐싱 설정에서도 이 값을 설정할 수 있습니다. | 0(무제한) | |||||||||
DatabaseUpdateInterval | 콘텐츠 캐시가 변경 사항을 저장 공간에 기록된 데이터베이스에 저장하는 빈도를 지정합니다. 간격을 늘리면 정전시 캐시된 콘텐츠가 유실될 위험이 증가합니다. 최대 간격은 3600초(1시간)입니다. 간격을 0으로 설정하면 지연 없이 항상 데이터 베이스를 바로 업데이트하며 성능이 떨어집니다. | 5(초) | |||||||||
DataPath | 캐시된 콘텐츠를 저장하는 데 사용되는 디렉토리 경로를 지정합니다. 이 설정을 수동으로 변경해도 캐시된 콘텐츠를 자동으로 이전 위치에서 새로운 위치로 이동하지 않습니다. 콘텐츠를 자동으로 이동하려면 콘텐츠 캐싱 설정을 사용하십시오. 콘텐츠 캐싱 설정에서도 이 값을 설정할 수 있습니다. | /Library/Application Support/Apple/AssetCache/Data | |||||||||
DisplayAlerts | 콘텐츠 캐싱 경고에 대한 알림을 표시합니다. 콘텐츠 캐싱이 최대의 효율을 내도록 하려면 이 설정을 켜십시오. | 아니요 | |||||||||
DownloadMinRate | 콘텐츠 캐시에서 콘텐츠를 다운로드하는 동안 클라이언트가 유지해야 하는 초당 최소 바이트 수를 지정합니다. 데이터를 전송하는 속도가 이 속도보다 느린 경우 콘텐츠 캐시는 다운로드를 중단합니다. 고정된 최소 값은 초당 1000바이트입니다. | 초당 8000(바이트) | |||||||||
DownloadTimeout | 클라이언트로 다운로드를 중단하기 전까지 허용하는 대기 시간(초 단위)을 지정합니다. 고정된 최소 시간은 10초입니다. | 180(초) | |||||||||
ImportMaxRate | 콘텐츠 캐시가 각 클라이언트에서 데이터를 받는 최대 값(초당 바이트)을 지정합니다. 값을 0으로 설정하면 초당 바이트가 무제한으로 설정됩니다. | 초당 0(바이트) | |||||||||
ImportMinRate | 클라이언트가 콘텐츠를 가져오는(업로드하는) 동안 유지해야 하는 초당 최소 바이트 수를 지정합니다. 데이터를 전송하는 속도가 이 속도보다 느린 경우 콘텐츠 캐시는 가져오기를 중단합니다. 최소 속도는 초당 100바이트입니다. | 초당 2000(바이트) | |||||||||
ImportRateAttenuation | 업로드 시간에 추가되는 감쇠율을 지정합니다. 고정된 최소 값은 0%입니다. 값이 너무 크면 ImportTimeout을 초과하여 실패를 일으킵니다. | .20(퍼센트) | |||||||||
ImportTimeout | 클라이언트로부터 가져오기(업로드)를 중단하기 전까지 허용하는 대기 시간(초 단위)을 지정합니다. 최소 시간은 10초입니다. | 300(초) | |||||||||
Interface | 콘텐츠 캐시에서 사용될 네트워크 인터페이스의 BSD 이름을 지정합니다. 예: en0. 또한 루프백 인터페이스(localhost)에서 항상 대기합니다. | 선택된 인터페이스에서 대기 | |||||||||
KeepAwake | 콘텐츠 캐싱이 켜져 있을 때 컴퓨터가 깨어 있는 상태를 유지합니다. 콘텐츠 캐싱을 최대로 사용하려면 이 설정을 켜십시오. 시스템 설정(macOS 13 이상) 또는 시스템 환경설정(macOS 12.0.1 또는 이전 버전)의 에너지 절약에서 ‘디스플레이가 꺼졌을 때 컴퓨터를 자동으로 잠자지 않게 하기’ 체크상자를 선택하십시오. | 아니요 | |||||||||
ListenRanges | 제공할 IP 주소의 클라이언트 범위를 설명하는 사전 배열입니다. ListenRanges 키 사용에 관한 예제를 보려면 아래를 참조하십시오. 하위 키 유형은 더 이상 필요하지 않으며 있는 경우 무시합니다. 콘텐츠 캐싱 설정에서도 이 값을 설정할 수 있습니다. | 없음 | |||||||||
ListenRangesOnly | ListenRangesOnly가 true로 설정되면, 콘텐츠 캐시는 ListenRanges 키에서 지정한 범위의 클라이언트에만 콘텐츠를 제공합니다. ListenRangesOnly 키를 사용하려면 ListenRanges 키도 지정해야 합니다. 콘텐츠 캐싱 설정에서도 이 값을 설정할 수 있습니다. | 아니요 | |||||||||
ListenWithPeers AndParents | 콘텐츠 캐싱이 ListenRanges, PeerListenRanges, 및 Parents 키 집합에 등록됐는지 ListenRanges 키에만 등록됐는지 표시합니다. ListenRanges는 LocalSubnetsOnly에서 자동으로 생성될 수 있고 PeerListenRanges는 PeerLocalSubnetsOnly에서 자동으로 생성될 수 있다는 점을 참고하십시오. | 기본값은 컴퓨터의 기록에 따라 다릅니다.
| |||||||||
LocalSubnetsOnly | 콘텐츠 캐시가 접근할 수 있는 모든 로컬 네트워크에 있는 클라이언트가 아닌 콘텐츠 캐시와 동일한 로컬 네트워크에 있는 클라이언트에만 콘텐츠를 제공할지 여부를 표시합니다. 콘텐츠 캐싱 설정에서도 이 값을 설정할 수 있습니다. | 예 | |||||||||
LogClientIdentity | 콘텐츠 캐시가 콘텐츠를 요청하는 클라이언트의 IP 주소와 포트 번호를 로그에 기록할지 여부를 결정합니다. | 아니요 | |||||||||
MaxConcurrentClients | 콘텐츠 캐시가 지원할 수 있는 클라이언트의 최대 수를 지정합니다. Apple은 콘텐츠 캐시의 3400개의 동시 클라이언트 획득을 보장하지 않습니다. | 3400 | |||||||||
MaxParentDepth | 하위 콘텐츠 캐시가 단일 요청을 상위 콘텐츠 캐시로 전달하는 최대 횟수를 지정합니다. 요청 해석이 어려운 경우(전송 체인이 너무 긴 경우) 상위 캐시가 아닌 요청을 보낸 곳으로 강제로 보냅니다. | 8 | |||||||||
MaxPeersToQuery | 콘텐츠를 요청하는 피어 콘텐츠 캐시의 최대 수를 지정합니다. | 0(무제한) | |||||||||
MetricsInterval | 메트릭스 데이터베이스(/Library/Application Support/Apple/AssetCache/Metrics/Metrics.db)에 새로운 행의 메트릭스를 추가하는 간격을 초 단위로 지정합니다.
1초에서 60초로 고정되어 있습니다. 활성 상태 보기의 캐시 패널에서 이 메트릭스를 볼 수 있습니다. | 60(초) | |||||||||
MetricsMaxAge | 설정된 값보다 오래된 메트릭스는 메트릭스 데이터베이스에서 제거됩니다. 제거는 하루에 한 번씩 수행합니다. 고정된 최소 값은 30일입니다. | 30(일) | |||||||||
OriginDownloadTimeout | 취소하기 전에 Apple 서버에서 다운로드할 수 있는 시간(다운로드를 다시 할 수 있는 시간)을 지정합니다. 5~300초 사이에 포함됩니다. | 60 | |||||||||
OriginUploadTimeout | 원본 서버로 가져오기(업로드)를 중단하기 전까지 허용하는 대기 시간(초 단위)을 지정합니다. 5~3600초 사이에 포함됩니다. | 600 | |||||||||
ParentDownloadTimeout | 중단하기 전에(다시 다운로드를 시도하기 전) 상위 콘텐츠 캐시에서 다운로드가 대기할 수 있는 시간(초)을 지정합니다. 5초에서 300초로 고정되어 있습니다. | 60 | |||||||||
ParentRetryInterval | 연속 5번 네트워크 문제 또는 서버 오류가 발생한 후 상위 콘텐츠 캐시를 무시하는 시간(초)을 지정합니다. 30초에서 3600초로 고정되어 있습니다. | 900 | |||||||||
Parents | 이 캐시가 Apple에서 직접 다운로드 또는 업로드하는 대신 콘텐츠를 다운로드 또는 업로드해야 하는 대상 콘텐츠 캐시의 IP 주소의 목록입니다. 올바르지 않은 주소와 콘텐츠 캐시가 아닌 컴퓨터의 주소는 무시됩니다. 사용할 수 없는 상위 캐시는 ParentRetryInterval에 따라 건너 뜁니다. 모든 상위 콘텐츠 캐시를 사용할 수 없게 될 경우, 콘텐츠 캐시는 상위 콘텐츠 캐시를 다시 사용할 수 있을 때까지 Apple에서 직접 다운로드 또는 업로드합니다. 콘텐츠 캐싱 설정에서도 이 값을 설정할 수 있습니다. | 없음 | |||||||||
ParentSelectionPolicy | 둘 이상의 구성된 상위 콘텐츠 캐시 중에서 선택할 때 사용하는 정책입니다. 모든 정책에서, 일시적으로 사용할 수 없는 상위 캐시는 건너뜁니다. 정책 목록:
콘텐츠 캐싱 설정에서도 이 값을 설정할 수 있습니다. | round-robin | |||||||||
ParentUploadTimeout | 상위 콘텐츠 캐시로 업로드를 중단하기 전까지 허용하는 대기 시간(초 단위)을 지정합니다. 5초에서 3600초로 고정되어 있습니다. | 600 | |||||||||
PeerDownloadTimeout | 중단하기 전에(다시 다운로드를 시도하기 전) 피어 콘텐츠 캐시에서 다운로드가 대기할 수 있는 시간(초)을 지정합니다. 5~300초 사이에 포함됩니다. | 30 | |||||||||
PeerFilterRanges | PeerFilterRanges가 배열(ListenRanges와 같은 항목의),이면 배열 범위에 따라 콘텐츠 캐시가 피어 목록을 필터링하고 정렬합니다. 콘텐츠 캐시는 PeerFilterRanges에 있는 피어만 쿼리합니다. MaxPeersToQuery 항목(해당 설정이 표시된 경우)에서 피어 목록을 자르기 전에 필터링과 정렬이 적용됩니다. PeerFilterRanges가 빈 배열일 때 콘텐츠 캐시는 어떠한 피어에게도 쿼리하지 않습니다. PeerFilterRanges가 불리언 참일 때 콘텐츠 캐시는 위와 같지만 PeerFilterRanges 값 대신 ListenRanges를 사용합니다. PeerFilterRanges가 다른 유형이거나 값이 유실되면 콘텐츠 캐시는 MaxPeersToQuery 항목에서 목록을 자르기 전에 피어의 목록을 필터링하거나 정렬하지 않습니다. PeerFilterRanges는 이 콘텐츠 캐시가 콘텐츠 및 다운로드에 대해 쿼리한 다른 콘텐츠 캐시 목록에만 영향을 줍니다. 다른 콘텐츠 캐시의 들어오는 콘텐츠 요청에는 영향을 주지 않습니다. 하위 키 유형은 더 이상 필요하지 않으며 있는 경우 무시합니다. 콘텐츠 캐싱 설정에서도 이 값을 설정할 수 있습니다. | 없음 | |||||||||
PeerListenRanges | PeerListenRanges가 사전 배열이며 각 사전은 IP 주소 범위를 의미할 때, 해당 콘텐츠 캐시만 이 범위 배열에 있는 IP 주소를 가진 콘텐츠 캐시의 피어 캐시 쿼리에 성공적으로 응답합니다. PeerListenRanges가 빈 배열일 때, 콘텐츠 캐시는 다른 콘텐츠 캐시의 캐시 쿼리에 오류로 응답합니다. PeerListenRanges가 불리언 참일 때, 콘텐츠 캐시는 PeerListenRanges 값 대신 ListenRanges 값을 사용하여 캐시 쿼리에 성공적으로 응답하는 다른 콘텐츠 캐시를 결정합니다. PeerListenRanges가 다른 유형이거나 값이 유실되었을 때, 콘텐츠 캐시는 다른 모든 콘텐츠 캐시의 캐시 쿼리에 성공적으로 응답합니다. PeerListenRanges는 이 콘텐츠 캐시가 성공적으로 응답하는 캐시 쿼리를 보낸 콘텐츠 캐시에만 영향을 줍니다. 이 콘텐츠 캐시가 콘텐츠에 대해 쿼리하고 콘텐츠를 다운로드하는 피어 목록에는 영향을 주지 않습니다. 콘텐츠 캐시가 캐시 쿼리에 대해 오류로 응답하는 경우, 쿼리 콘텐츠 캐시는 응답하는 콘텐츠 캐시를 비우호적인 콘텐츠 캐시로 표시하고 PeerRetryInterval이 경과할 때까지 다시 해당 콘텐츠 캐시에 쿼리하지 않습니다. 하위 키 유형은 더 이상 필요하지 않으며 있는 경우 무시합니다. 콘텐츠 캐싱 설정에서도 이 값을 설정할 수 있습니다. | 없음 | |||||||||
PeerLocalSubnetsOnly | 콘텐츠 캐시가 이 컴퓨터와 동일한 공용 IP 주소를 사용하는 콘텐츠 캐시가 아닌 동일한 로컬 네트워크에 있는 다른 콘텐츠 캐시와만 피어로 연결할지 여부를 표시합니다. PeerLocalSubnetsOnly가 참일 때 콘텐츠 캐시는 쿼리만 가능하며 동일한 로컬 네트워크에 있는 콘텐츠 캐시의 피어 쿼리에 성공적으로 응답합니다. PeerLocalSubnetsOnly가 true일 때 PeerFilterRanges 및 PeerListenRanges의 구성을 덮어씁니다. PeerLocalSubnetsOnly가 false일 때, 콘텐츠 캐시는 피어 제한을 구성하는 데 PeerFilterRanges 및 PeerListenRanges를 따릅니다. PeerLocalSubnetsOnly가 참인 상태에서 네트워크가 변경되면, 로컬 네트워크에 대한 피어 제한이 적절하게 업데이트됩니다. 콘텐츠 캐싱 설정에서도 이 값을 설정할 수 있습니다. | 예 | |||||||||
PeerNotifyTimeout | 시동 시 Ping을 하면, 피어 콘텐츠 캐시의 응답을 대기하는 시간(초)을 지정합니다. 5~300초 사이에 포함됩니다. | 30 | |||||||||
PeerQueryTimeout | 캐시에서 콘텐츠에 대해 요청하면 피어 콘텐츠 캐시의 응답을 기다리는 시간(초)을 지정합니다. 1~60초 사이에 포함됩니다. | 5 | |||||||||
PeerRetryInterval | 세 번 연속으로 알림이나 쿼리가 실패한 후 피어 콘텐츠 캐시를 무시하는 시간(초)을 지정합니다. 재시도 간격이 지난 후, 피어 콘텐츠 캐시는 콘텐츠를 쿼리하는 피어 목록으로 복원됩니다. 30~3600초 사이에 포함됩니다. | 900(초) | |||||||||
PersonalCacheLimit | 콘텐츠 캐시가 캐시된 iCloud 데이터에 사용하는 저장 공간(바이트 단위)을 제한하는 크기입니다. PersonalCacheLimit는 CacheLimit을 초과할 수 없습니다. | 0(무제한) | |||||||||
Port | 콘텐츠 캐싱이 업로드 또는 다운로드 요청을 승인하는 TCP 포트 번호를 지정합니다. | 0(임의 포트로 사용) | |||||||||
PruneAffinitiesAge | 이 기간보다 오래된 사용자 연관성은 연관성 캐시에서 자동으로 제거됩니다. 사용자 연관성은 성능 향상을 위해 사용자의 콘텐츠가 캐시되는 위치에 대한 힌트를 제공합니다. 사용자 연관성을 제거해도 캐시된 콘텐츠에 영향을 주지 않습니다. 고정된 최소 값은 7일입니다. | 30(일) | |||||||||
PruneAffinitiesInterval | 콘텐츠 캐시가 스캔하고 PruneAffinitiesAge 날짜보다 오래된 사용자 연관성을 제거하는 간격(날짜 단위)을 지정합니다. iCloud에서만 사용되는 사용자 연관성이며 성능 향상을 위해 사용자의 콘텐츠가 캐시되는 위치에 대한 힌트를 제공합니다. 사용자 연관성을 제거해도 캐시된 콘텐츠에 영향을 주지 않습니다. 고정된 최소 값은 1일입니다. | 7(일) | |||||||||
PruneAssetsAge | 해당 기간 동안 요청되지 않은 콘텐츠는 자동으로 콘텐츠 캐시에서 삭제됩니다. 고정된 최소 값은 7일입니다. | 120(일) | |||||||||
PruneAssetsInterval | 콘텐츠 캐시가 스캔하고 PruneAssetsAge 날짜보다 오래된 사용자 콘텐츠를 제거하는 간격(날짜 단위)을 지정합니다. 고정된 최소 값은 1일입니다. | 7(일) | |||||||||
PublicRanges | 클라우드 서버가 클라이언트와 콘텐츠 캐시를 연결하는 데 사용하는 공용 IP 주소 범위를 지정합니다. 콘텐츠 캐싱 설정에서도 이 값을 설정할 수 있습니다. | 기본값 없음 | |||||||||
ReservedVolumeSpace | 캐시된 콘텐츠를 저장하는 볼륨에서 유지해야 하는 저장 공간의 최소 여유 공간을 지정합니다. | 2000000000(2GB) | |||||||||
TerminationTimeout | 콘텐츠 캐시가 중단되었을 때, 콘텐츠 캐시가 등록 해제를 시도하는 시간(초 단위)을 지정합니다. 등록 해제하면 클라이언트에게 해당 콘텐츠 캐시를 더 이상 사용할 수 없기 때문에 더 이상(또는 해당 콘텐츠 캐시가 다시 시작되기 전까지) 해당 콘텐츠 캐시를 사용하지 않는다고 알립니다. 1~60초 사이에 포함됩니다. | 10(초) | |||||||||
Verbose | 상세가 참인 경우, 콘텐츠 캐시는 활동에 대해 더 많은 정보를 로그로 기록합니다. 로그 기록이 증가하면 성능이 저하될 수 있습니다. 이 설정은 장기간 사용에는 권장되지 않습니다. 콘텐츠 캐싱 로그를 보려면 터미널 앱에서 예시는 다음과 같습니다. 콘솔 앱을 사용하여 로그를 볼 수도 있습니다. | 아니요 |
ListenRanges 키 예제
다중 콘텐츠 캐시가 동일한 공용 IP 주소 뒤에서 사용되는 고급 네트워크 토폴로지에서 ListenRanges 키를 사용하여 선호하는 콘텐츠 캐시를 지정할 수 있습니다.
예시는 다음과 같습니다.
caching1.betterbag.com은 ListenRanges 키를 사용하여 10.0.0.1 ~ 10.0.0.254 및 10.1.0.1 ~ 10.1.0.254의 범위를 지정하고 ListenRangesOnly 키를 불가능으로 설정합니다.
caching2.betterbag.com은 ListenRanges 키를 사용하여 10.1.0.1 ~ 10.1.0.39의 범위를 지정하고(caching1의 시간(초) 범위와 겹침) ListenRangesOnly 키를 불가능으로 설정합니다.
IP 주소가 10.0.0.10인 클라이언트가 콘텐츠를 요청한 경우, 요청은 caching1로 전송됩니다.
IP 주소가 10.1.0.10인 클라이언트가 콘텐츠를 요청한 경우, 요청은 임의로 선택된 caching1과 caching2 중 하나로 전송됩니다.
IP 주소가 10.2.0.10인 클라이언트가 콘텐츠를 요청한 경우, 요청은 임의로 선택된 caching1과 caching2 중 하나로 전송됩니다.
caching1이 종료되거나 전원 공급이 중단되지만 caching2을 사용할 수 있는 경우, 모든 클라이언트는 caching2로 이동합니다.
예제 plist 파일
다음은 예제 /Library/Preferences/com.apple.AssetCache.plist 파일입니다.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CacheLimit</key>
<!-- Set a CacheLimit of 200 GB -->
<integer>200000000000</integer>
<key>DataPath</key>
<string>/Volumes/BigVolume/Library/Application Support/Apple/AssetCache/Data</string>
<key>Interface</key>
<string>en1</string>
<key>ListenRanges</key>
<array>
<dict>
<key>type</key>
<string>IPv4</string>
<key>first</key>
<string>10.1.2.1</string>
<key>last</key>
<string>10.1.2.254</string>
</dict>
<dict>
<key>type</key>
<string>IPv6</string>
<key>first</key>
<string>2001:500:88:200::1</string>
<key>last</key>
<string>2001:500:88:200::99</string>
</dict>
</array>
<key>LogClientIdentity</key>
<string>true</string>
<key>Port</key>
<integer>12345</integer>
<key>ReservedVolumeSpace</key>
<!-- Set the ReservedVolumeSpace to 1 GB -->
<integer>1000000000</integer>
</dict>
</plist>