Skip to content
jinleileiking edited this page Jan 9, 2017 · 16 revisions

1. qconf 安装过程中遇到的 missing aclocal-1.14 的问题

  • 问题现象:

在 32-bits 的机器上安装qconf的时候,会出现这样的 aclocal 版本要需要为1.14 的问题

  • 问题分析:

该问题是在32-bits 机器上存在,而在 64-bits 的机器上是不存在该问题;

问题原因是qconf为了解决用户使用源码安装需要安装各种依赖包,就将当前已经稳定的依赖包源码直接包含到 deps目录下,然后在qconf源码安装的时候,就会自动将这些依赖包给安装了;但是在安装过程中,其中的一个包gdbm-1.11 的安装在 32-bits 需要aclocal 即 automake 为 1.14;

  • 问题处理:

1) 使用64-bits 的机器安装

2) 在32-bits 的机器上上,可以去官网下载 automake-1.14,地址:http://ftp.gnu.org/gnu/automake/automake-1.14.tar.gzhttp://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz

2. 使用qconf需要调整共享内存限制

  • 通过 sysctl -a | grep shm 查看当前的共享内存上限的大小,如果不足2G,则进行如下操作:

修改共享内存上限,使当前正在运行的系统生效,

Mac 执行:

   sysctl kern.sysv.shmmax=2048000000
   sysctl kern.sysv.shmall=4294967296

修改共享内存上限,使机器重启时生效,需要在 /etc/sysctl.conf 添加:

   kern.sysv.shmmax=2048000000
   kern.sysv.shmall=4294967296

linux 执行

   sysctl kernel.shmmax=2048000000
   sysctl kernel.shmall=4294967296

3. 编译时会遇到的问题 .../deps/gdb/build-aux/missing: line 81:

  • 问题
3.1) aclocal-1.14: command not found
3.2) automake-1.14: command not found
3.3) makeinfo: Command not found
  • 解决
    这个问题应该是由于源码编译时指定了automake的版本导致的,如果OS上找不到aclocal automake等命令可以通过yum安装一下,然后做一下软链:
ln -s /usr/bin/aclocal /usr/bin/aclocal-1.14
ln -s /usr/bin/automake /usr/bin/automake-1.14
第三个问题执行一下即可 yum install texinfo

4. QConf在cygwin下面编译

360奇虎的QConf在cygwin下面编译的心得

设计相关

采用多个znode还是一个znode放很多data?

不必担心连接数问题,多个znode会导致watcher增加,但连接数是不变的。

需要考虑的是,每个znode底下的data,必须要小,建议<1m.

zk server watcher数 = client * znode数

线上数据:单台zk机器有近二十万的,一个session没多少,最多几百吧

Q群聊天记录

lk  16:51:06
get_conf 不支持 /zknode/aaa/* 这种统配吧。 zk默认没这功能。
王康@360  17:57:53
恩,不支持
lk  18:01:26
get 一个不存在的znode
lk  18:01:50
每次都会向zk server发get命令么?
王康@360  18:02:18
是的
lk  18:02:50
哦,这种情况要是qps大,就不好玩了
lk  18:03:15
qconf没缓存,就只能靠zk了
王康@360  18:06:36
get请求最终是agent发起的,客户端接口只是丢任务给agent,这个过程会去重,所以应该比qps小一些
lk  18:08:59

lk  18:10:41
如果一个session初次调用10000个zonde的get(此时qconf还没缓存),会不会有压力?
lk  18:10:57
不同znode
王康@360  18:15:48


王康@360  18:16:35
这个是zk的性能
油菜田  18:17:47
曲线的意思是 增加zk集群中的节点数量,整个zk集群性能越牛逼吗?
油菜田  18:18:12
还是咋滴?
lk  18:21:38
多谢多谢,好人啊
王康@360  18:33:04
随节点增加,读性能因为分摊更好,写性能因为一致性写更差

Clone this wiki locally