我可以从postgres触发器执行cURL调用吗?

Phi*_*ord 2 php database postgresql triggers database-trigger

我必须在db字段上创建一个特定状态的进程调用.我听说你可以使用数据库触发器执行cURL调用,但谷歌不太友好地返回我可以使用的任何东西.

所以我想我的问题分为三个部分:

  1. 可以这样做吗?
  2. 参考?
  3. 替代方案?

工作流程:

db字段用状态更新,需要启动脚本/请求/进程,运行我的工作流程中的下一步(这是一个PHP脚本),它将拉入记录在数据库中并处理另一步,然后更新数据库结果.

Tom*_*zky 6

您不应该使用触发器,因为触发器阻止事务,因此它会使您的数据库非常慢.你还需要在Postgres上安装不安全的语言 - pl/sh,pl/perl,pl/python或其他.

这个问题有2个更好的解决方案:

  • 有一个连接到数据库和LISTEN的进程,用于触发器生成的NOTIFY事件 - 这将立即生效;

  • 例如,使用cron脚本定期检查新数据 - 这将延迟工作.