【问题标题】:Getting postgresql connection object back from the string从字符串中获取 postgresql 连接对象
【发布时间】:2021-09-15 10:53:40
【问题描述】:

我正在使用来自 Google 云平台的 PostgreSQL 连接。我正在编写一个 pub/sub 函数来建立 PostgreSQL 连接并完成任务。由于 GCP 最多仅提供 25 个连接,因此每当请求数量过大(如 20,000 左右)时,它就会失败。所以我想出了一个通过 post API 调用发送连接对象的想法。但我不能直接发送连接对象。所以我将它转换为字符串。但现在我想将它转换回 Connection 对象。 我该怎么做?

string_conn=str(conn)
json_data={
    'con':string_conn
}

response=requests.post(url,json=json_data)
print(response.status_code)

这是从 对象转换为字符串的代码。

【问题讨论】:

    标签: python database string postgresql google-cloud-platform


    【解决方案1】:

    你不能在不同的进程之间共享这样的连接。

    您也不能将对象转换为字符串表示形式并像那样共享它们,您可以使用pickle:https://docs.python.org/3/library/pickle.html 或者对于更简单的对象,您可以使用文本序列化格式,例如json。

    在我看来,您的选择是:

    • 使用具有更多内存的数据库,从而允许更多连接
    • 将并行函数的数量限制为 25 个
    • 使用更适合您需要的不同类型的数据库

    【讨论】:

      猜你喜欢
      • 2021-03-10
      • 2013-11-09
      • 1970-01-01
      • 2011-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-01
      相关资源
      最近更新 更多