python - Shared Cassandra Session 失去连接,应用必须重启

标签 python cassandra

我正在开发一个使用 Cassandra 作为数据存储的 Flask 网络服务。

Web 服务设置为使用 Cassandra 的共享 session ,据我所知,它会自动处理连接池。

当我部署应用程序时,在一段时间内一切正常,但在一定时间后 session 会丢失集群中的所有 C* 主机并拒绝尝试重新连接。它只是出错并显示消息:无法完成对任何主机的操作

我该怎么做才能让 session 自动尝试重新连接到集群或检测到 session 已中断以便我可以将其关闭并创建一个新 session ?

最佳答案

您不需要创建新 session 。假设您使用的是 datastax python-driver ,驱动程序维护订阅节点上/下事件的“控制连接”。如果控制连接丢失,它将重新连接到集群中的另一台主机。这对 turn on debug logging 很有用,这将揭示集群中的节点被标记为关闭的原因。

关于python - Shared Cassandra Session 失去连接,应用必须重启,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28797497/

相关文章:

python - Django 模板(App Engine)- None 和 False 之间的区别

cassandra - 将批处理RDD中的结果与Apache Spark中的流式RDD合并

cassandra - DynamoDB 和 Cassandra 的数据模型怎么称呼?

java - 如何连接到在 Docker 中运行的远程 Cassandra 实例以使用 Java 检索数据?

python - 无法使用 python 连接到 Cassandra,但可以通过 cqlsh 连接到 Cassandra

python - 对包含 3 个模型对象的列表进行排序

python - 在 Python 中返回没有特定元素的列表的快速方法

python - setup.py install 和 setup.py develop 的区别

python - makemessages 命令导致 html.py 文件和 UnicodeDecodeError

nosql - 在 Cassandra 中使用非常宽的行时的 I/O 影响