
Geavanceerde instellingen voor materiaalcaching op de Mac
Je kunt geavanceerde configuratieparameters gebruiken om materiaalcaching af te stemmen op de netwerkconfiguratie.
Je kunt geavanceerde configuratieparameters voor de materiaalcache opgeven vanaf de commandoregel of door de waarde van sleutels te wijzigen in het bestand '/Bibliotheek/Preferences/com.apple.AssetCache.plist'. Sommige wijzigingen worden pas van kracht nadat je materiaalcaching hebt gestopt en vervolgens opnieuw hebt gestart.
Geavanceerde instellingen opgeven
Je kunt bepaalde geavanceerde instellingen configureren voor de materiaalcachingvoorziening via Systeeminstellingen (macOS 13 of nieuwer) of Systeemvoorkeuren (macOS 12.0.1 of ouder) onder 'Delen' > 'Materiaalcaching'. Houd vervolgens de Option-toets ingedrukt en selecteer 'Geavanceerde opties'.
Als je meer geavanceerde instellingen wilt configureren, kan dit met de Terminal-app op je Mac. Gebruik hiervoor het commando defaults gevolgd door het commando sudo AssetCacheManagerUtil reloadSettings. Met het commando AssetCacheManagerUtil settings kun je de gewone (niet-geavanceerde) instellingen weergeven.
Je kunt zowel eenvoudige als complexe sleutels instellen met het commando defaults.
Als je bijvoorbeeld poortnummer 50000 als niet-dynamisch poortnummer wilt vastleggen (het poortnummer moet een nummer zijn tussen 49192 en 65535), voer je dit commando uit als beheerder:
$ sudo -u _assetcache defaults write /Library/Preferences/com.apple.AssetCache.plist Port -int 50000ListenRanges is een complexe sleutel die een array van woordenboeken accepteert. Je kunt dit commando bijvoorbeeld als beheerder uitvoeren om twee IP-adresbereiken voor de ListenRanges-sleutel in te stellen:
$ 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; } )'Vergeet niet om na het gebruik van het commando defaults het volgende commando uit te voeren om de instellingen van de materiaalcache opnieuw te laden:
$ sudo AssetCacheManagerUtil reloadSettingsplist-sleutels en -waarden voor de configuratie van caching
Belangrijk: Wijzig in het bestand 'com.apple.AssetCache.plist' geen andere instellingen dan de instellingen die in de onderstaande tabel worden beschreven.
Voor sommige sleutels geldt een minimale waarde en een maximale waarde. De sleutelwaarde kan elk getal zijn tussen de minimale waarde en de maximale waarde. Als een waarde wordt opgegeven die lager is dan de minimale waarde, wordt de minimale waarde gebruikt. Als een waarde wordt opgegeven die hoger is dan de maximale waarde, wordt de maximale waarde gebruikt. PeerDownloadTimeout accepteert bijvoorbeeld een waarde tussen 5 en 300. Als de waarde wordt ingesteld op 301 of 1000, wordt de waarde automatisch gewijzigd in 300. Als de waarde wordt ingesteld op 4 of -10, wordt de waarde automatisch gewijzigd in 5.
Sommige wijzigingen worden pas van kracht nadat je AssetCacheManagerUtil reloadSettings uitvoert; voor andere moet je materiaalcaching stoppen en opnieuw opstarten. De enige sleutels die reloadSettings ondersteunen, zijn de sleutels die ook kunnen worden ingesteld in het paneel 'Materiaalcaching' in Systeemvoorkeuren (weergegeven in de onderstaande tabel). Waarden instellen in het voorkeurenpaneel 'Materiaalcaching':
macOS 13 of nieuwer: Kies Apple-menu > 'Systeeminstellingen' > 'Algemeen' > 'Delen' > 'Materiaalcaching'.
macOS 12.0.1 of ouder: Kies Apple-menu > 'Systeemvoorkeuren' > 'Delen' > 'Materiaalcaching'.
Sleutel | Beschrijving | Standaardwaarde | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
AgeForLowSpaceAlert | Wanneer materiaal uit de materiaalcache wordt verwijderd omdat er te weinig opslagruimte is, en het verwijderde materiaal minder dan dit aantal dagen geleden aan de materiaalcache is toegevoegd, zie je een waarschuwing over onvoldoende opslagruimte. | 30 (dagen) | |||||||||
AllowCacheDelete | Hiermee sta je toe dat materiaal automatisch uit de cache wordt verwijderd wanneer op de computer opslagruimte nodig is voor andere apps. Schakel deze instelling uit voor een optimale effectiviteit van materiaalcaching. | Ja | |||||||||
AllowImports | Hiermee sta je importverzoeken (uploadverzoeken) toe. | Ja | |||||||||
AllowPersonalCaching | iCloud-gegevens van gebruikers mogen in de cache worden geplaatst. Minimaal één van de sleutels Je kunt deze waarde ook instellen in het paneel 'Materiaalcaching' in Systeeminstellingen. | Ja | |||||||||
AllowSharedCaching | Deze sleutel bepaalt de caching van niet-iCloud-inhoud, zoals apps en software-updates. Minimaal één van de sleutels | Ja | |||||||||
AllowWirelessPortable | Hiermee sta je toe dat Mac-laptops met alleen een wifinetwerkverbinding materiaalcaching kunnen uitvoeren. | Ja | |||||||||
CacheLimit | De maximale hoeveelheid opslagruimte (in bytes) die voor de materiaalcache wordt gebruikt. Je kunt deze waarde ook instellen in het paneel 'Materiaalcaching' in Systeeminstellingen. | 0 (onbeperkt) | |||||||||
DatabaseUpdateInterval | Hiermee stel je in hoe vaak wijzigingen door de materiaalcache in de opslagdatabase worden bewaard. Als je een hogere waarde opgeeft, is er meer kans dat er bij een stroomstoring materiaal in de cache verloren gaat. De maximale waarde is 3600 seconden (1 uur). Bij een interval van '0' wordt de database altijd meteen, zonder vertraging, bijgewerkt. Dit is echter wel nadelig voor de prestaties. | 5 (seconden) | |||||||||
DataPath | Hiermee stel je het pad in naar de map waarin cachemateriaal wordt opgeslagen. Wanneer deze instelling handmatig wordt gewijzigd, wordt daarmee niet automatisch het cachemateriaal van de oude naar de nieuwe locatie verplaatst. Als je materiaal automatisch wilt verplaatsen, kun je dit instellen in het paneel 'Materiaalcaching' in Systeeminstellingen. Je kunt deze waarde ook instellen in het paneel 'Materiaalcaching' in Systeeminstellingen. | /Bibliotheek/Application Support/Apple/AssetCache/Data | |||||||||
DisplayAlerts | Hiermee geef je meldingen weer bij waarschuwingen over materiaalcaching. Schakel deze instelling in voor een zo doeltreffend mogelijke materiaalcaching. | Nee | |||||||||
DownloadMinRate | Hiermee stel je de minimale snelheid (het minimale aantal bytes per seconde) in waarmee clients materiaal uit de materiaalcache moeten downloaden. Het downloaden van materiaal in de materiaalcache wordt afgebroken als deze snelheid niet wordt gehaald. De minimumwaarde is 1000 bytes per seconde. | 8000 (bytes per seconde) | |||||||||
DownloadTimeout | Hiermee stel je het aantal seconden in dat een download naar een client inactief mag zijn voordat de bewerking wordt afgebroken. De minimumwaarde is 10 seconden. | 180 (seconden) | |||||||||
ImportMaxRate | Hiermee stel je het maximale aantal bytes per seconde in waarmee de materiaalcache gegevens van elke client ontvangt. Bij de waarde 0 kan de voorziening een onbeperkt aantal bytes per seconde ontvangen. | 0 (bytes per seconde) | |||||||||
ImportMinRate | Hiermee stel je de minimale snelheid (het minimale aantal bytes per seconde) in waarmee clients materiaal moeten importeren (uploaden). Importbewerkingen worden afgebroken als deze snelheid niet wordt gehaald. De minimumsnelheid is 100 bytes per seconde. | 2000 (bytes per seconde) | |||||||||
ImportRateAttenuation | Hiermee stel je het verminderingspercentage in dat bij de uploadtijd wordt opgeteld. De minimumwaarde is 0% vermindering. Bij een te hoge waarde wordt de ImportTimeout overschreden, wat tot fouten kan leiden. | ,20 (percentage) | |||||||||
ImportTimeout | Hiermee stel je het aantal seconden in dat een importbewerking (upload) van een client inactief mag zijn voordat de bewerking wordt afgebroken. De minimumwaarde is 10 seconden. | 300 (seconden) | |||||||||
Interface | Hiermee stel je de BSD-naam van een netwerkinterface in die door de materiaalcache moet worden gebruikt. Bijvoorbeeld: en0. Er wordt ook altijd geluisterd op de loopback-interface (localhost). | Luisteren op de geselecteerde interface | |||||||||
KeepAwake | De computer wordt niet in de sluimerstand gezet als materiaalcaching is ingeschakeld. Schakel deze instelling in voor een optimale beschikbaarheid van materiaalcaching. Selecteer in 'Energie' in Systeeminstellingen het aankruisvak 'Schakel sluimerstand niet automatisch in als het beeldscherm is uitgeschakeld'. | Nee | |||||||||
ListenRanges | Een array van woordenboeken waarmee het bereik van IP-adressen van de te bedienen clients wordt beschreven. Hieronder zie je een voorbeeld met de sleutel Dit type subsleutel is niet langer nodig en wordt genegeerd indien aanwezig. Je kunt deze waarde ook instellen in het paneel 'Materiaalcaching' in Systeeminstellingen. | geen | |||||||||
ListenRangesOnly | Als Als je de sleutel Je kunt deze waarde ook instellen in het paneel 'Materiaalcaching' in Systeeminstellingen. | Nee | |||||||||
ListenWithPeersAndParents | Geeft aan of materiaalcaching wordt geregistreerd bij de samengevoegde sleutels voor Denk eraan dat | De standaardwaarde is afhankelijk van de geschiedenis van de computer:
| |||||||||
LocalSubnetsOnly | Hiermee bepaal je of de materiaalcache alleen materiaal moet aanbieden aan clients in hetzelfde lokale netwerk als de materiaalcache of aan clients in alle lokale netwerken die voor de materiaalcache bereikbaar zijn. Je kunt deze waarde ook instellen in het paneel 'Materiaalcaching' in Systeeminstellingen. | Ja | |||||||||
LogClientIdentity | Hiermee geef je op of het IP-adres en het poortnummer moeten worden geregistreerd van de clients die om materiaal vragen. | Nee | |||||||||
MaxConcurrentClients | Hiermee stel je het maximale aantal clients in dat door een materiaalcache kan worden ondersteund. Apple kan niet garanderen dat een materiaalcache 3400 clients tegelijk kan bedienen. | 3400 | |||||||||
MaxParentDepth | Hiermee stel je het maximale aantal keren in dat een onderliggende materiaalcache een specifiek verzoek naar een bovenliggende materiaalcache doorstuurt. Verzoeken die te diep zijn (een te lange doorstuurketen hebben), worden naar de plaats van herkomst teruggestuurd in plaats van naar een bovenliggende materiaalcache. | 8 | |||||||||
MaxPeersToQuery | Hiermee stel je het maximale aantal peermateriaalcaches in waaraan om materiaal kan worden gevraagd. | 0 (onbeperkt) | |||||||||
MetricsInterval | Hiermee stel je in om de hoeveel seconden er een rij meetwaarden moet worden toegevoegd aan de meetwaardendatabase in /Bibliotheek/Application Support/Apple/AssetCache/Metrics/Metrics.db.
De waarde kan minimaal 1 en maximaal 60 seconden zijn. Je kunt deze meetwaarden bekijken in het paneel 'Cache' in Activiteitenweergave. | 60 (seconden) | |||||||||
MetricsMaxAge | Meetwaarden die ouder zijn dan dit aantal dagen worden eens per dag uit de meetwaardendatabase verwijderd. De minimumwaarde is 30 dagen. | 30 (dagen) | |||||||||
OriginDownloadTimeout | Hiermee stel je het aantal seconden in dat een download vanaf de servers van Apple inactief mag zijn voordat het downloaden wordt afgebroken (en mogelijk opnieuw wordt gestart). De waarde kan minimaal 5 en maximaal 300 seconden zijn. | 60 | |||||||||
OriginUploadTimeout | Hiermee stel je het aantal seconden in dat een upload naar een originele server inactief mag zijn voordat de bewerking wordt afgebroken. De waarde kan minimaal 5 en maximaal 3600 seconden zijn. | 600 | |||||||||
ParentDownloadTimeout | Hiermee stel je het aantal seconden in dat een download vanuit een bovenliggende materiaalcache inactief mag zijn voordat het downloaden wordt afgebroken (en mogelijk opnieuw wordt gestart). Geef een waarde tussen 5 en 300 seconden op. | 60 | |||||||||
ParentRetryInterval | Hiermee stel je het aantal seconden in dat bovenliggende materiaalcaches worden genegeerd nadat er vijf opeenvolgende netwerkfouten of serverfouten zijn gemeld. Geef een waarde tussen 30 en 3600 seconden op. | 900 | |||||||||
Parents | Een lijst met de lokale IP-adressen van andere materiaalcaches die deze cache moeten gebruiken voor het downloaden of uploaden van materiaal in plaats van het materiaal rechtstreeks te downloaden van of te uploaden naar Apple. Ongeldige adressen en adressen van computers die geen materiaalcache zijn, worden genegeerd. Bovenliggende caches die niet meer beschikbaar zijn, worden overgeslagen volgens het Als geen van de bovenliggende materiaalcaches beschikbaar zijn, wordt het materiaal rechtstreeks van een Apple website gedownload of daarnaartoe geüpload totdat er weer een bovenliggende materiaalcache beschikbaar is. Je kunt deze waarde ook instellen in het paneel 'Materiaalcaching' in Systeeminstellingen. | geen | |||||||||
ParentSelectionPolicy | Het beleid dat wordt gebruikt wanneer er uit meerdere geconfigureerde bovenliggende materiaalcaches moet worden gekozen. Bij elk beleid worden bovenliggende caches die tijdelijk niet beschikbaar zijn overgeslagen. De beleidsopties zijn:
Je kunt deze waarde ook instellen in het paneel 'Materiaalcaching' in Systeeminstellingen. | round-robin | |||||||||
ParentUploadTimeout | Hiermee stel je het aantal seconden in dat een upload naar een bovenliggende materiaalcache inactief mag zijn voordat de bewerking wordt afgebroken. Geef een waarde tussen 5 en 3600 seconden op. | 600 | |||||||||
PeerDownloadTimeout | Hiermee stel je het aantal seconden in dat een download vanuit een peermateriaalcache inactief mag zijn voordat het downloaden wordt afgebroken (en mogelijk opnieuw wordt gestart). De waarde kan minimaal 5 en maximaal 300 seconden zijn. | 30 | |||||||||
PeerFilterRanges | Als De materiaalcache stuurt alleen verzoeken naar peers in de bereiken die zijn opgegeven met Als Als Als
Dit type subsleutel is niet langer nodig en wordt genegeerd indien aanwezig. Je kunt deze waarde ook instellen in het paneel 'Materiaalcaching' in Systeeminstellingen. | geen | |||||||||
PeerListenRanges | Als Als Als Als Met Als een materiaalcache met een foutmelding reageert op een cacheverzoek, wordt de betrokken materiaalcache als 'onvriendelijk' gemarkeerd. Er worden pas weer cacheverzoeken naartoe gestuurd wanneer de Dit type subsleutel is niet langer nodig en wordt genegeerd indien aanwezig. Je kunt deze waarde ook instellen in het paneel 'Materiaalcaching' in Systeeminstellingen. | geen | |||||||||
PeerLocalSubnetsOnly | Hiermee bepaal je of de materiaalcache alleen een peerrelatie mag hebben met andere materiaalcaches in hetzelfde lokale netwerk, of ook met materiaalcaches die hetzelfde publieke IP-adres als deze computer gebruiken. Als Als Als Als Je kunt deze waarde ook instellen in het paneel 'Materiaalcaching' in Systeeminstellingen. | Ja | |||||||||
PeerNotifyTimeout | Hiermee stel je het aantal seconden in dat wordt gewacht op een reactie van peermateriaalcaches wanneer deze bij het opstarten worden gepingd. De waarde kan minimaal 5 en maximaal 300 seconden zijn. | 30 | |||||||||
PeerQueryTimeout | Hiermee stel je het aantal seconden in dat wordt gewacht op een reactie van peermateriaalcaches wanneer deze een verzoek krijgen voor materiaal dat in hun cache aanwezig is. De waarde kan minimaal 1 en maximaal 60 seconden zijn. | 5 | |||||||||
PeerRetryInterval | Hiermee stel je het aantal seconden in dat peermateriaalcaches worden genegeerd nadat er drie opeenvolgende meldings- of queryfouten hebben plaatsgevonden. Nadat dit interval is verstreken, worden de peermateriaalcaches weer opgenomen in de lijst met peers die naar materiaal worden bevraagd. De waarde kan minimaal 30 en maximaal 3600 seconden zijn. | 900 (seconden) | |||||||||
PersonalCacheLimit | Hiermee stel je de maximale hoeveelheid opslagruimte (in bytes) in die voor iCloud-gegevens in de materiaalcache kan worden gebruikt. De waarde voor | 0 (onbeperkt) | |||||||||
Port | Hiermee stel je het nummer van de TCP-poort in waarop de materiaalcache upload- of downloadverzoeken accepteert. | 0 (willekeurige poort gebruiken) | |||||||||
PruneAffinitiesAge | Gebruikersaffiniteiten ouder dan dit aantal dagen worden automatisch uit de cache met affiniteiten verwijderd. Gebruikersaffiniteiten geven clients hints over de locatie van hun materiaal in de cache, om zo de prestaties te verbeteren. Het verwijderen van gebruikersaffiniteiten heeft geen effect op het materiaal in de cache. De minimumwaarde is zeven dagen. | 30 (dagen) | |||||||||
PruneAffinitiesInterval | Hiermee stel je in om de hoeveel dagen de materiaalcache naar gebruikersaffiniteiten moet zoeken die ouder zijn dan | 7 (dagen) | |||||||||
PruneAssetsAge | Materiaal dat gedurende dit aantal dagen niet is opgevraagd, wordt automatisch uit de materiaalcache verwijderd. De minimumwaarde is zeven dagen. | 120 (dagen) | |||||||||
PruneAssetsInterval | Hiermee stel je in om de hoeveel dagen de materiaalcache naar materiaal moet zoeken dat ouder is dan | 7 (dagen) | |||||||||
PublicRanges | Hiermee stel je de bereikwaarden voor publieke IP-adressen in die cloudservers moeten gebruiken voor het koppelen van clients aan materiaalcaches. Je kunt deze waarde ook instellen in het paneel 'Materiaalcaching' in Systeeminstellingen. | geen standaardinstelling | |||||||||
ReservedVolumeSpace | Hiermee stel je de minimale hoeveelheid vrije opslagruimte (in bytes) in die wordt gebruikt voor het volume waarop het materiaal in de cache wordt bewaard. | 2000000000 (2 GB) | |||||||||
TerminationTimeout | De tijd in seconden dat de voorziening voor materiaalcaching moet proberen de registratie van de voorziening in te trekken op het moment dat de voorziening wordt gestopt. Door de registratie in te trekken, weten clients dat de materiaalcache niet meer beschikbaar is en zullen ze deze materiaalcache niet meer proberen te gebruiken (of pas weer nadat de materiaalcache opnieuw is gestart). De waarde kan minimaal 1 en maximaal 60 seconden zijn. | 10 (seconden) | |||||||||
Verbose | Als Met het commando Bijvoorbeeld: Je kunt ook de Console-app gebruiken om de logs te bekijken. | Nee | |||||||||
Voorbeeld van de sleutel 'ListenRanges'
Met de sleutel ListenRanges kun je voorkeursmateriaalcaches opgeven voor geavanceerde netwerktopologieën waarin meerdere materiaalcaches met hetzelfde publieke IP-adres worden gebruikt.
Bijvoorbeeld:
caching1.melardclothing.com gebruikt de sleutel
ListenRangesom een bereik van 10.0.0.1 tot en met 10.0.0.254 en een bereik van 10.1.0.1 tot en met 10.1.0.254 op te geven en stelt de sleutelListenRangesOnlyin op 'No'.caching2.melardclothing.com gebruikt de sleutel
ListenRangesom een bereik van 10.1.0.1 tot en met 10.1.0.39 op te geven (dit bereik overlapt met het tweede bereik van caching1) en stelt de sleutelListenRangesOnlyin op 'No'.Als een client met het IP-adres 10.0.0.10 materiaal opvraagt, gaat dit verzoek naar caching1.
Als een client met het IP-adres 10.1.0.10 materiaal opvraagt, wordt het verzoek willekeurig naar caching1 of caching2 gestuurd.
Als een client met het IP-adres 10.2.0.10 materiaal opvraagt, wordt het verzoek willekeurig naar caching1 of caching2 gestuurd.
Als caching1 is uitgeschakeld of geen stroom krijgt, maar caching2 wel beschikbaar is, worden alle clients omgeleid naar caching2.
Voorbeeld van .plist-bestand
Het volgende is een voorbeeldbestand van '/Bibliotheek/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>