2013-01-11 43 views
1

我有一個symfony2(php框架)應用程序,我已經編寫了一個可以從命令行調用的命令。該命令只是檢查數據庫中的某個表的任務,然後執行該任務。我需要的是一個守護進程的生物,只要將一行插入到這個(mysql)數據庫表中,就可以使該命令在後臺運行。我不能使用cron作業來完成這項工作,因爲所需的任務需要儘快完成,而且通常需要並行執行。Symfony的簡單守護進程

我看着這一切都錯了嗎?

服務器:Ubuntu的11.10 PHP:5.3 的Symfony:2.1 MySQL的:66年5月1日

+0

我曾經遇到過的場景是帶有xp_cmdshell的SQL Server觸發器。插入很多行時存在巨大的問題(即批量插入)。我遵循投票的方式,有時候會用一個普通的舊cronjob,有時候會有一個python守護進程,允許我每分鐘更頻繁地進行輪詢。 –

+2

數據庫觸發器在你的情況下工作嗎? https://dev.mysql.com/doc/refman/5.1/en/create-trigger.html – halfer

回答

1

我會假設你正在使用某種形式的持久性的ORM的。我將隨後可能在Doctrine一個新的對象

或postPersist()的插入之後執行Propel

postInsert()的代碼使用像postInsert()的鉤。

postPersist - postPersist事件發生在實體被創建>持久化後。它將在數據庫插入操作之後被調用。生成的主要關鍵值在postPersist事件中可用。

這裏是lifecycle events一些更多的信息。