我最近一直在看Zookeeper,并想知道当前是否有人使用它以及它们是专门用于存储的.
最常见的用例是配置信息,但是您存储的数据类型和数据量是多少?
我一般在过去使用数据库序列实现序列号生成.
例如,使用Postgres SERIAL类型http://www.neilconway.org/docs/sequences/
我很好奇,因为如何为没有数据库的大型分布式系统生成序列号.对于多个客户端,是否有任何经验或建议以线程安全的方式生成序列号生成的最佳实践?
有没有办法在每次运行之前删除主题中的所有数据或删除主题?
我可以修改KafkaConfig.scala文件来更改logRetentionHours属性吗?一旦消费者阅读消息,是否有消息被删除的方式?
我正在使用生产者从某个地方获取数据并将数据发送到消费者消费的特定主题,我可以在每次运行时删除该主题中的所有数据吗?我只想在主题中每次都有新数据.有没有办法以某种方式重新初始化该主题?
我面对的一个问题是,当我有一个命令反过来产生另一个进程时,supervisord无法杀死它.
例如,我有一个java进程,当正常运行时就像
$ zkServer.sh start-foreground
$ ps -eaf | grep zk
user 30404 28280 0 09:21 pts/2 00:00:00 bash zkServer.sh start-foreground
user 30413 30404 76 09:21 pts/2 00:00:10 java -Dzookeeper.something..something
Run Code Online (Sandbox Code Playgroud)
supervisord配置文件如下所示:
[program:zookeeper]
command=zkServer.sh start-foreground
autorestart=true
stopsignal=KILL
Run Code Online (Sandbox Code Playgroud)
当涉及到阻止它们时,这些具有多个孩子的过程在监督下不能很好地处理supervisorctl.因此,当我从supervisord运行它并尝试从supervisorctl停止它时,只有顶级进程被杀死但不是实际的java进程.
我正在使用zookeeper从kafka获取数据.在这里,我总是从最后一个偏移点获取数据.有没有办法指定偏移时间来获取旧数据?
有一个选项autooffset.reset.它接受最小或最大.有人可以解释什么是最小和最大的.autooffset.reset可以帮助从旧的偏移点而不是最新的偏移点获取数据吗?
Reliability:
A single ZooKeeper server (standalone) is essentially a coordinator with
no reliability (a single serving node failure brings down the ZK service).
A 3 server ensemble (you need to jump to 3 and not 2 because ZK works
based on simple majority voting) allows for a single server to fail and
the service will still be available.
So if you want reliability go with at least 3. We typically recommend
having 5 servers in "online" …Run Code Online (Sandbox Code Playgroud) 我打算为Zookeeper使用Python kazoo库.这一切都是关于Python问题,而不是zookeeper,我想这意味着如何正确使用Python kazoo ..
我对python完全不熟悉所以我不知道如何开始以及如何使用kazoo与zookeeper连接.
这是我开始使用kazoo为Zookeeper阅读的文档.
http://kazoo.readthedocs.org/en/latest/install.html
在那个wiki中,他们要求安装kazoo.他们正在使用一些pip命令?
pip在这做什么?我目前正在使用Windows,所以我安装了cygwin并安装了python.我使用的是Python 2.7.3
host@D-SJC-00542612 ~
$ python
Python 2.7.3 (default, Dec 18 2012, 13:50:09)
[GCC 4.5.3] on cygwin
Run Code Online (Sandbox Code Playgroud)
现在我所做的是 - 我完全按照上面的网站复制了这个命令 - pip install kazoo并在我的cygwin命令提示符下运行它.
host@D-SJC-00542612 ~
$ pip install kazoo
Downloading/unpacking kazoo
Running setup.py egg_info for package kazoo
warning: no previously-included files found matching '.gitignore'
warning: no previously-included files found matching '.travis.yml'
warning: no previously-included files found matching 'Makefile'
warning: no previously-included files found matching 'run_failure.py'
warning: no previously-included files matching …Run Code Online (Sandbox Code Playgroud) 我正在尝试运算符重载,发现了一些我无法解释的东西:
WeekDays.h
using namespace std;
enum DAYS
{
MON,
TUE,
WED,
THU,
FRY,
SAT,
SUN
};
DAYS operator+(DAYS&a,DAYS &b)
{
printf("Binary+ called\n");
return (DAYS)(((unsigned int)a+(unsigned int)b)%7);
}
//Increment 3
DAYS operator+(DAYS&a)
{
printf("Unary+ called\n");
return (DAYS)(((unsigned int)a+3)%7);
}
ostream& operator<<(ostream&o, DAYS &a)
{
switch(a){
case MON: o<<"MON"; break;
case TUE: o<<"TUE"; break;
case WED: o<<"WED"; break;
case THU: o<<"THU"; break;
case FRY: o<<"FRY"; break;
case SAT: o<<"SAT"; break;
case SUN: o<<"SUN"; break;
}
return o;
};
Run Code Online (Sandbox Code Playgroud)
Main.cpp的
#include <iostream>
#include …Run Code Online (Sandbox Code Playgroud) 使用动态资源分配:
当执行程序空闲超过 spark.dynamicAllocation.executorIdleTimeout 秒时,Spark 应用程序会删除执行程序。
当我按如下方式设置执行程序空闲超时属性时spark.dynamicAllocation.executorIdleTimeout= 300,它会抛出以下警告:
spark.ExecutorAllocationManager: Removing executor 0 because it has been idle for 300 seconds (new desired total will be 2)
Run Code Online (Sandbox Code Playgroud)
“空闲”是什么意思?这是否意味着工人不使用 CPU?对数据库的阻塞调用算作空闲吗?
我想使用kazoo客户端在Python的节点的所有子节点上添加监视,但ChildrenWatch只监视子级添加或删除不用于任何子节点的数据更新.我正在寻找一个完成这项任务的简单食谱.
示例代码将是这样的
from kazoo.client import KazooClient
zk = KazooClient(hosts='127.0.0.1:2181')
zk.start()
@zk.SomeRecipe("/root")
def watch_children_update(event):
print("Updated child at path:%s data:%s stat:%s" % event.path, event.data, event.stat)
Run Code Online (Sandbox Code Playgroud) apache-kafka ×2
java ×2
kazoo ×2
python ×2
zookeeper ×2
apache-spark ×1
bash ×1
c++ ×1
distributed ×1
offset ×1
sequences ×1
supervisord ×1
ubuntu-11.04 ×1