13. ZooKeeper最佳實踐

如下列舉了運行和管理ZooKeeper ensemble的一些最佳實踐:服務器

  1. ZooKeeper數據目錄包含快照和事務日誌文件。若是autopurge選項未啓用,按期清理目錄是一個好習慣。另外,管理員可能但願保留這些文件的備份,具體取決於應用程序的須要。可是,因爲ZooKeeper是一個複製服務,咱們只須要備份整個ensemble中一臺服務器的數據便可。
  2. ZooKeeper使用Apache log4j做爲其日誌記錄基礎設施。隨着日誌文件的規模愈來愈大,建議使用內置的log4j特性來設置日誌文件的auto-rollover功能。
  3. 客戶端在其鏈接字符串中使用的ZooKeeper服務器列表必須與每一個ZooKeeper服務器所擁有的ZooKeeper服務器列表相匹配。若是列表不匹配,可能會出現奇怪的行爲。
  4. 每一個Zookeeper服務器配置文件中的服務器列表應該與ensemble的其餘成員一致。
  5. 如前所述,ZooKeeper事務日誌必須在專用設備中進行配置。這對於從ZooKeeper得到最佳性能很是重要。
  6. 應該謹慎選擇Java堆大小。在ZooKeeper服務器中不該該容許交換(swapping)。若是ZooKeeper服務器擁有至關高的內存(RAM),狀況會更好。
  7. 系統監視工具(如vmstat)可用於監視虛擬內存統計信息,並根據應用程序的須要決定所需內存的最佳大小。不管如何,應該避免交換。
相關文章
相關標籤/搜索