python - 如何在 Pylons 应用程序中连接到 Cassandra?

标签 python pylons cassandra

我创建了一个新的 Pylons 项目,并想使用 Cassandra 作为我的数据库服务器。我计划使用 Pycassa 来使用 cassandra 0.7beta。 不幸的是,我不知道在哪里实例化连接以使其在我的应用程序中可用。

目标是:

  • 在应用程序启动时创建一个池
  • 为每个请求从池中获取一个连接,并使其可供我的 Controller 和库使用(在请求的上下文中)。最好的办法是“懒惰地”从池中获取连接,即仅在需要时
  • 如果连接已被使用,则在处理完请求后释放它

此外,有什么重要的事情我应该知道吗?当我看到一些评论,如“在使用带有 use_threadlocal=True 的 QueuePool 时要小心,尤其是在启用重试的情况下。可能需要同步以防止连接在另一个线程正在使用它时发生变化。”,这到底是什么意思?

谢谢。

-- 皮埃尔

最佳答案

嗯。我工作了一点。事实上,使用连接管理器可能不是一个好主意,因为这应该 是模板上下文。此外,为每个线程打开一个连接并不是什么大问题。每个请求打开一个连接。

我最终在 app_globals 中得到了 pycassa.connect_thread_local(),然后我开始了。

关于python - 如何在 Pylons 应用程序中连接到 Cassandra?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3671535/

相关文章:

python - Eclipse/PyDev 运行 Pyramid development.ini 问题 "pkg_resources.DistributionNotFound:"

Cassandra Batch语句-多表

cassandra - 如何在gremlin titan图数据库和java中的valueMap()中获取边和顶点属性

python - 在 groupby 之后填充组中缺失的行

python - 对象没有属性 'encode'

pylons - 使用 pylons 和 psycopg2 连接到远程 postgres 数据库

python - 如何在 Python 或 Pylons 中确定 HTTP 请求是否异步

python - 将 pycassa 与 uwsgi 一起使用时的问题

python - 如何通过索引将数组插入到现有的多维数组中? [Python]

python - 使用 mod-python 使 HTTP 身份验证成为可选