首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

修改 ArcGIS Server Cache 默認目錄:避免 C 盤爆滿的最佳實踐

     編輯:Java 相關知識

為什麼要遷移 Cache 目錄?

  • C 盤空間有限:切片緩存動輒數十 GB 至 TB 級,佔滿系統盤導致服務器宕機
  • I/O 性能:系統盤通常為單盤或 RAID 1,專用數據盤 (RAID 5/10/SSD) 讀寫性能更強
  • 災備隔離:系統備份不需包含海量切片,縮小備份窗口;數據盤可獨立快照/異地同步
  • 權限管理:獨立目錄便於設置專用服務賬號權限,減少攻擊面

標準遷移流程 (ArcGIS Server Manager / Manager 操作)

步驟 1:創建新的 Cache 目錄註冊

  1. 登入 ArcGIS Server Manager (默認 https://server:6443/arcgis/manager)
  2. 左側菜單:Site (站點) → Server Configuration (服務器配置) → Directories (目錄)
  3. 點擊 Add Directory (添加目錄):
    • Name:自定義名稱 (如 Cache_D_Drive)
    • Path:物理路徑 (如 D:\arcgiscache 或網絡共享 \\Storage\arcgiscache)
    • Directory Type:Cache Directory (關鍵!)
    • Description:備註用途
  4. 點擊 Create,系統自動驗證路徑可寫權限

步驟 2:停止目標服務

  • Manager 左側:Services (服務) → 找到目標 Map/Image Service
  • 勾選服務 → 點擊工具欄 Stop (停止),等待狀態變為 Stopped
  • 原因:服務運行時鎖定舊緩存目錄,熱修改會導致切片讀寫失敗

步驟 3:修改服務緩存目錄指向

  1. 服務列表中右鍵目標服務 → Edit (編輯) / Service Properties (服務屬性)
  2. 切換到 Parameters (參數) 選項卡
  3. 找到 Cache Directory (緩存目錄) 區域:
    • 取消勾選 Use default cache directory
    • 勾選 Specify cache directory
    • 下拉選單選擇步驟 1 創建的目錄名 (如 Cache_D_Drive)
  4. 點擊 Save and Restart (保存並重啟) 或先 Save 再手動 Start

步驟 4:驗證與重新切片

  • 服務啟動後,訪問服務 REST 端點:.../MapServer → Tile Info 確認新路徑
  • 如需重新生成切片:服務編輯頁 → Caching (緩存) 選項卡 → Manage Tiles (管理切片) → Recreate All Tiles (重建所有切片)
  • 大範圍切片建議分級、分區域提交任務,監控磁盤 I/O 與 CPU

進階配置與優化

1. 網絡共享存儲 (NAS/SAN) 注意事項

  • 路徑使用 UNC 格式:\\StorageServer\Share\arcgiscache
  • ArcGIS Server 服務運行賬號 (默認 arcgis) 必須對共享具有 讀寫修改權限
  • 網絡延遲 < 1ms,帶寬 > 1Gbps,否則切片響應超時
  • 啟用 SMB 3.0+ 多通道、連續可用性共享

2. 多機集群環境

  • 所有 Server 節點必須能訪問同一緩存目錄 (共享存儲或各節點本地同步)
  • 推薦:共享存儲 + 所有節點註冊相同目錄路徑
  • 不推薦:各節點本地目錄 + 文件同步工具 (延遲、衝突風險高)

3. 緩存目錄結構說明

D:\arcgiscache\
├── _ags__/  # 服務級緩存根目錄
│   ├── L00/ L01/ ... L19/               # 級別目錄
│   │   ├── R00000/ R00001/ ...          # 行目錄 (16進制)
│   │   │   ├── C00000.bundle            # 切片包文件 (多切片合並)
│   │   │   └── C00001.bundle
│   ├── conf.xml                         # 緩存配置元數據
│   └── status.gdb                       # 狀態追踪數據庫
└── arcgisjobs/                          # GP 服務輸出緩存 (另一目錄類型)

4. 磁盤配額與監控

  • Windows:文件服務器資源管理器 (FSRM) 設置配額、閾值郵件告警
  • Linux:quota + cron 監控腳本
  • ArcGIS Server 內建:Server Directory Cleanup 任務可自動清理過期 GP 輸出,但不清理地圖服務切片

常見問題排查

現象原因解決
服務啟動失敗 / 切片 404新目錄權限不足檢查服務賬號對目錄的完全控制權限
修改後仍寫入舊目錄未停止服務就修改 / 未重啟服務Stop → Modify → Start
集群節點切片不一致未使用共享存儲配置共享目錄或啟用分佈式緩存 (需企業級授權)
C 盤仍增長日誌/臨時文件/系統頁面文件遷移 Server 日誌目錄、設置專用臨時目錄、調整虛擬內存

總結

遷移 ArcGIS Server Cache 目錄是生產環境部署必做項。核心口訣:註冊目錄 → 停服務 → 改指向 → 重啟服務 → 重切片。配合專用存儲、權限隔離、監控告警,可徹底消除 C 盤爆滿風險,保障地圖服務長期穩定運行。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved