python - 如何使用 Python kazoo 库?

标签 python apache-zookeeper kazoo

我打算为 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

现在我所做的是 - 我从上面的网站完全复制了这个命令 - 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 '*' found under directory 'sw'
    warning: no previously-included files matching '*pyc' found anywhere in distribution
    warning: no previously-included files matching '*pyo' found anywhere in distribution
Downloading/unpacking zope.interface>=3.8.0 (from kazoo)
  Running setup.py egg_info for package zope.interface

    warning: no previously-included files matching '*.dll' found anywhere in distribution
    warning: no previously-included files matching '*.pyc' found anywhere in distribution
    warning: no previously-included files matching '*.pyo' found anywhere in distribution
    warning: no previously-included files matching '*.so' found anywhere in distribution
Requirement already satisfied (use --upgrade to upgrade): distribute in c:\python27\lib\site-packages (from zope.interface>=3.8.0->kazoo)
Installing collected packages: kazoo, zope.interface
  Running setup.py install for 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 '*' found under directory 'sw'
    warning: no previously-included files matching '*pyc' found anywhere in distribution
    warning: no previously-included files matching '*pyo' found anywhere in distribution
  Running setup.py install for zope.interface

    warning: no previously-included files matching '*.dll' found anywhere in distribution
    warning: no previously-included files matching '*.pyc' found anywhere in distribution
    warning: no previously-included files matching '*.pyo' found anywhere in distribution
    warning: no previously-included files matching '*.so' found anywhere in distribution
    building 'zope.interface._zope_interface_coptimizations' extension
    ********************************************************************************
    WARNING:

            An optional code optimization (C extension) could not be compiled.

            Optimizations for this package will not be available!
    ()
    Unable to find vcvarsall.bat
    ********************************************************************************
    Skipping installation of C:\Python27\Lib\site-packages\zope\__init__.py (namespace package)
    Installing C:\Python27\Lib\site-packages\zope.interface-4.0.5-py2.7-nspkg.pth
Successfully installed kazoo zope.interface
Cleaning up...

是否安装正确?现在我可以开始用 python 编写代码来连接 zookeeper 了吗?

很抱歉问了所有这些愚蠢的问题,因为我没有任何 python 背景,所以在这里学习一点......

我猜这里全是关于 Python 的问题,而不是 zookeeper..

最佳答案

pip 是安装包的常用方法。它从 pypi 查询并下载包. Kazoo 已根据日志语句安装。试试看。

你应该能够在 where python is installed\lib\site-packages\kazoo 找到这个包。

您应该尝试无错误地加载(导入)包:

from kazoo.client import KazooClient

启动动物园管理员之后。您的 zookeeper 配置将包含客户端端口详细信息。

tickTime=2000
dataDir=...../zookeeperdata/cluster/server1/data
clientPort=2181
initLimit=5

使用它来连接到 zookeeper。

# Create a client and start it
zk = KazooClient(hosts='127.0.0.1:2181')
zk.start()

# Now you can do the regular zookepper API calls
# Ensure some paths are created required by your application
zk.ensure_path("/app/someservice") 

# In the end, stop it
zk.stop()

关于python - 如何使用 Python kazoo 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20057800/

相关文章:

python - 如何使用kazoo客户端进行leader选举?

python - 使用 Tesseract OCR 从扫描的 pdf 文件夹中提取文本

javascript - JS深度优先遍历预序

tomcat - 如何使用 Tomcat + 3 个外部 ZooKeeper 在 3 个不同的 VM 上部署 Solr 和 SolrCloud?

linux - YCSB 不适用于 HBase

python - 'kazoo.exceptions.ConnectionLoss' 可能出现多少次?

python - django View 中查询字符串比较失败。为什么?

python - "canonical"使用 Python 断言日志记录的方法

linux - 更改 zookeeper 中的 Kafka 主机名条目并在 Storm 拓扑重新启动时保持它

centos - 当我查看 freeswitch 日志时,会看到以下错误