【发布时间】:2011-07-02 05:47:12
【问题描述】:
Rails 模型上的观察者和回调在同一个线程上运行并阻塞请求,直到它们返回。
例如,如果我有一个照片模型,并且我在 after_create 回调或观察者中排队了一个调整大小的作业,则请求不会完成,直到在队列中输入一个条目(如果我使用亚马逊,这有时会很慢SQS 用于排队)。
Callbacks on Rails 控制器也是如此。如果我必须运行缓存管理或存储分析等维护,则请求在回调结束之前不会完成。
是否有 Rails 方法可以在回调(模型或控制器)或不同线程中的观察者中运行代码,以免请求停止?
【问题讨论】:
标签: ruby-on-rails callback observer-pattern