【问题标题】:Connection pooling using perl DBI with postgresql使用 perl DBI 和 postgresql 的连接池
【发布时间】:2012-06-19 18:02:07
【问题描述】:

我正在使用 perl 脚本,它每 5 分钟将记录插入数据库。现在,当有大量可用数据时,与数据库建立的连接数量可能会增加,从而浪费我宝贵的资源。所以我希望连接池机制与 perl 一起工作。我使用 postgresql 作为我的数据库。我用谷歌搜索了一些解决方案,例如i found such solutions but they didnot work for me

谁能告诉我如何在 perl 中实现连接池?

提前致谢。

【问题讨论】:

  • 如果经常使用也可以保持长连接。
  • 您发布的链接中的内容仅在您使用 mod_perl 时才有效。如果使用cronjob(假设)每5分钟插入一次数据,为什么连接数会增加?有这么多数据,5 分钟还不够吗?如果是这样,请考虑只要脚本仍在运行就不要启动它。让它完成第一批,然后开始下一批。
  • @vjshah :这就是我要问的。我不知道该怎么做。
  • @simbabque :我没有将它作为 cronjob 执行。我称之为我的愿望。每次调用脚本时都会创建连接并在执行后将其释放但可能一次有数百个脚本实例同时运行所以我想实现一个有效的连接池机制来限制连接数制作到数据库中。
  • 我很确定您不能在不同进程之间共享 DBI 实例/dbh。不过,您也许可以用叉子实现它。看看stackoverflow.com/questions/874434/…。仍然很有趣,它需要这么长时间。也许有办法优化它,让它运行得更快?

标签: perl postgresql connection-pooling dbi


【解决方案1】:

我不确定我是否会限制自己使用 perl 解决方案。只需安装 pgbouncer 并将其提供给您需要的任何客户。

【讨论】:

  • MySQL 怎么样?
  • 问题不在于 MySQL
猜你喜欢
  • 1970-01-01
  • 2014-12-15
  • 2013-10-12
  • 2016-06-03
  • 2023-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-22
相关资源
最近更新 更多