【问题标题】:Sharing transaction between processes MySQLMySQL进程间共享事务
【发布时间】:2021-05-25 19:46:55
【问题描述】:

我有一个 python 脚本,它通过与 MySQL 数据库连接的事务来运行数据迁移脚本。我正在将此脚本移至可通过 API 端点访问的 NodeJS。

我遇到的问题是,由于我的 Python 数据迁移包含在事务中,因此我的 Node 进程无法与新数据交互。

我已经开始在我的 Python 脚本中收集相关信息,然后暂时通过 POST 正文发送到我的 Node 脚本,但是这种策略有它自己的复杂性,即保持数据同步,然后用我的新信息进行响应需要确保重新插入到我的 Python 进程中。

有没有更好的方法可以在我的 Python 和我的 Node 进程之间共享事务数据?

谢谢

【问题讨论】:

    标签: python mysql node.js api


    【解决方案1】:

    这里有一些想法:

    • 将数据存储在 Python 应用程序和 Node.js 应用程序都可以访问的缓存服务器中。流行的软件是 Memcached 或 Redis。

    • 使用消息队列在应用程序之间来回发送数据。一些例子是 RabbitMQ 或 ActiveMQ。

    • 使用您的 Python 应用程序提交数据库中的数据。然后向 Node.js 应用发出 http POST 请求,向 Node.js 应用发出数据准备就绪的信号(POST 请求不需要包含数据)。 Node.js 应用程序会在发送 http 响应之前对数据进行处理。所以 Python 应用知道一旦它收到响应,数据已经被 Node.js 更新了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-12
      • 2012-09-27
      • 1970-01-01
      • 2010-12-13
      • 2012-07-22
      相关资源
      最近更新 更多