13. ZooKeeper最佳实践

Posted 尽信书不如无书

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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)可用于监视虚拟内存统计信息,并根据应用程序的需要决定所需内存的最佳大小。无论如何,应该避免交换。

以上是关于13. ZooKeeper最佳实践的主要内容,如果未能解决你的问题,请参考以下文章

在片段和活动之间进行通信 - 最佳实践

EOSPlatform+Dubbo+Zookeeper最佳实践

android片段-数据传递-最佳实践[重复]

在另一个活动托管的片段之间传递数据的最佳实践

Zookeeper详细使用解析!分布式架构中的协调服务框架最佳选型实践

在android中使用底部导航的最佳实践:活动与片段