python - sqlalchemy 中的并发

标签 python concurrency sqlalchemy

我目前正在开发一个使用 sqlalchemy 连接到数据库的应用程序。这个想法包括让应用程序的多个实例在使用相同数据库的不同计算机上运行。一旦提交,我希望能够在应用程序的所有实例中看到数据库中的更改。我目前正在使用 sqlalchemy 事件接口(interface),但是当我有多个并发的应用程序实例时它不起作用。我在其中一个实例中更改了某些内容,但在其他实例中没有发出任何信号。

最佳答案

你说了,你用的是SQLAlchemy的事件接口(interface),它不是RDBMS中的一个,SQLAlchemy不与连接到那个DB的其他实例通信。

SQLAlchemy 的事件系统在您自己的进程中调用一个函数。由您决定是否让此功能通过网络(或它们已连接)向其余部分发送信号。只要涉及到 SQLAlchemy,它就不知道连接到您的数据库的其他实例。

因此,您可能希望在运行数据库的机器上启动另一个服务器,并让所有其他服务器监听它,并采取相应的行动。

希望对您有所帮助。

关于python - sqlalchemy 中的并发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10601947/

相关文章:

python - 如何从 Azure Python SDK 读取 HTTP 响应

go - 如何有效地将 channel 链接在一起?

Python:无法连接到 Postgresql 数据库

python - 使用 PySide 从 KDE 剪贴板获取 HTML 源代码或 Markdown 文本

Python:如何从字典列表中创建一个 csv 字符串(无文件)?

c# - ConcurrentBag - 添加多个项目?

python - 在 sqlalchemy 中使用 postgresql JSON 类型的列表

python - 使用 Python 客户端在 SQL Server 中执行存储过程

python - 当我尝试使用 asyncpg 的 executemany 方法时,出现神秘的 KeyError

google-app-engine - 使用 Golang channel 处理 HTTP 请求