【发布时间】:2010-10-30 02:12:36
【问题描述】:
我有一个 PHP CLI 脚本,它处理一个 csv 文件,将它的内容插入到 Postgresql 数据库中的一个表中。这是在 Ubuntu 服务器上。我使用 schedtool 来控制整个脚本的亲和力。 Schedtool 用于使用 -e 选项启动脚本本身。不幸的是,使用 htop 我看到数据库线程是作为一个完全不同的线程生成的,并且不受关联选项的影响。
是否有可能以某种方式使数据库进程从 spawner PHP 脚本继承所有关联选项?
我刚刚找到了答案——因为我正在阅读一些 Ruby 的 Postgresql 示例文件:)。
我最好的选择是通过 NOTIFY - LISTEN 获取运行当前脚本的 Postgresql 线程的准确 PID。
正如 [depesz] 所说,Postgres 仅使用 1 个核心。使用schedtool,我仍然可以控制它在哪个内核上运行,而使用cpulimit,我可以进一步控制它。
【问题讨论】:
标签: php linux postgresql command-line ubuntu