OS X Server (Mountain Lion):缓存服务的高级配置

如果您运行的是 OS X Server (Mountain Lion),请阅读下文以了解您可以用于缓存服务的高级设置。

如果您运行的是 OS X Server (Mavericks),请参阅“OS X Server 高级管理指南”的“配置高级缓存设置”部分,以了解有关缓存服务的高级设置的信息。

有关缓存服务的更多信息,请运行 Server app,并从帮助菜单中选取 Server 帮助


您可以使用命令行或编辑“/资源库/Server/Caching/Config/Config.plist”来指定缓存服务的高级配置设置。以下列出了各个值的键和描述。

注:不得更改下文中未列出的“Config.plist”文件中的设置。

默认 描述
CacheLimit 0(无限) 用于缓存资源的磁盘空间的最大字节数。可使用 Server app 进行设置。
DataPath /资源库/Server/Caching/Data 用于存储缓存资源的目录路径。可使用 Server app 进行设置。
Interface 侦听所有接口 缓存服务要使用的网络接口的 BSD 名称。
ListenRanges 用于指定给定网络上的客户端需要哪些缓存服务器的字典阵列。有关更多详细信息,请参阅下文
ListenRangesOnly False 如果 ListenRangesOnly 设为“true”,则会造成服务器仅向 ListenRanges 键指定范围内的客户端提供资源。您必须指定 ListenRanges 键,以便使用 ListenRangesOnly 键。
LogLevel info 记录时所用的详细级别。您可以将此键设为以下任一项:
  • off
  • error
  • warn
  • info
  • verbose
注:在产品系统上,您应将记录级别置于默认设置;提高级别可能会影响性能。如果您将记录级别提高至默认级别以上,则额外记录会存储至“/资源库/Server/Caching/Logs/Debug.log”,且不会显示在 Server app 中的“日志”部分下。
MaxConcurrentClients 0(不限制客户端数量) 允许同时进行的客户端请求的最大数量。
Port 0(使用任何端口) 缓存服务在其上接受下载请求的 TCP 端口数量。
ReservedVolumeSpace 25000000000 为存储缓存资源的宗卷保留的可用磁盘空间的最小字节数。

ListenRanges 键

ListenRanges 键可以用于指定高级网络拓扑(其中在同一公共 IP 地址后使用了多个缓存服务器)中的首选缓存服务器。例如:

  • caching1.example.com 使用 ListenRanges 键来指定 10.0.0.1 至 10.0.0.254 的范围以及 10.1.0.1 至 10.1.0.254 的范围。
  • caching2.example.com 使用 ListenRanges 键来指定 10.1.0.1 至 10.1.0.39 的范围(注意与 caching1 的第二个范围重叠)。
  • 如果 IP 地址为 10.0.0.10 的客户端请求资源,则会指向 caching1。
  • 如果 IP 地址为 10.1.0.10 的客户端请求资源,则会指向 caching1 或 caching2。将会随机选择服务器。
  • 如果 IP 地址为 10.2.0.10 的客户端请求资源,则会指向 caching1 或 caching2。将会随机选择服务器。
  • 如果 caching1 已关闭或无法使用,但 caching2 仍然可用,则所有客户端都会指向 caching2。

为键设定值

要为键设定一个简单值,您可以使用 serveradmin(8) 命令。例如,要将 Interface 键设为“en1”,您可以管理员身份执行以下命令:

sudo serveradmin settings caching:Interface = en1

ListenRanges 键有一个复杂值,简化了“/资源库/Server/Caching/Config/Config.plist”的编辑从而方便对其进行设置。如果您手动编辑此文件,请务必先停止缓存服务并退出 Server app。编辑完文件后,请先将用户和群组所有权设为 _assetcache,然后再使用以下命令启动缓存服务:

sudo chown _assetcache:_assetcache /Library/Server/Caching/Config/Config.plist

以下为示例 Config.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/BigDisk/Caching/Data</string>
   <key>Interface</key>
   <string>en1</string>
   <key>ListenRanges</key>
   <array>
     <dict>
       <key>type</key>
       <string>IPv4</string>
       <key>first</key>
       <string>10.0.0.1</string>
       <key>last</key>
       <string>10.0.0.254</string>
     </dict>
     <dict>
       <key>type</key>
       <string>IPv4</string>
       <key>first</key>
       <string>10.1.0.1</string>
       <key>last</key>
       <string>10.1.0.254</string>
     </dict>
   </array>
   <key>ListenRangesOnly</key>
   <true/>
   <key>LogLevel</key>
   <string>info</string>
   <key>MaxConcurrentClients</key>
   <integer>100</integer>
   <key>Port</key>
   <integer>12345</integer>
   <key>ReservedVolumeSpace</key>
   <!-- Set the ReservedVolumeSpace to 1 GB -->
   <integer>1000000000</integer>
 </dict>
</plist>
发布日期: