【发布时间】:2017-01-25 21:36:04
【问题描述】:
在我的 Rails 控制器操作中,我有一个方法可以执行大量 Shopify API 调用。像:
ShopifyAPI::Product.all()
ShopifyAPI::Product.find(:all, params: {title: title})
ShopifyAPI::Product.create(title: title, body_html: description, images: images, tags: tags, product_type: product_type)
所有这些都符合我的要求...非常整洁。
问题是我要上传一个 CSV 文件并使用这个控制器方法。如果我有 8 个订单项,那很好,但很快它就会变慢。所以,我想,让我们将其移至后台工作人员。
我正在使用 Redis/Resque 让一切正常运行并使用一些虚拟输出(即puts 'Hi there champ!')我已经确认后台工作程序配置正确并在何时何地执行。整洁。
然后我将我的控制器动作的点点滴滴放入并输出。在我点击 Shopify API 调用之前,这一切都有效。我可以在任何对象上调用.new,但是当我尝试.find、.all 或.create 任何有效对象(在我将其抽象到后台作业之前有效)时,它有点死了.超级描述!我尝试通过logger 和puts 输出正在发生的事情,但我似乎无法生成正在发生的事情的太多输出,但我已将其隔离到 Shopify API 工作.我认为,即使我有一个指定我的密码、站点、API 密钥、机密等的初始化程序,我可能需要按照their setup docs here 重新初始化我的 Shopify 会话。我要么做错了,要么确实解决了问题。
在这一点上,我确定我只是在文档中遗漏了一些东西,但我无法从我的后台工作中找出如何进行这些必要的 API 调用。关于我可能做的明显错误的任何想法可以解决这个问题吗?有人处理过类似的事情吗?
【问题讨论】:
标签: ruby-on-rails shopify background-process