1

我希望能够用事务包装将任务排入 AppEngine 推送队列的代码,以便如果该事务中的任何代码失败,则不会将任务提交到队列中。我正在使用 PHP,但在文档中找不到这样的功能。

我使用 Propel2 作为我的 ORM,所以理想情况下我想将它们与 Propel2 事务相关联。

与此相反,Python 和 Java 似乎有这种支持:https ://cloud.google.com/appengine/docs/java/taskqueue/push/creating-tasks#enqueuing_tasks_in_cloud_datastore_transactions

有没有人这样做过或可以提出想法?

谢谢。

4

1 回答 1

0

您不能将此功能与 PHP SDK 一起使用的根本原因是它没有对 Cloud Datastore 的内置支持。Java 和 Python 都在 Datastore 之上提供了此功能。我不是 PHP 专家,但 Propel2依赖 PDO来提供事务支持,这似乎很难与任务队列 API 保持一致。如果没有为 PHP 找到一个通用的事务管理器,这似乎不太可能,您可能会发现很难做您想做的事。也许值得重新审视你的方法;抱歉,我不能提供更多帮助。

于 2016-10-07T22:54:52.383 回答