在我的RoR应用中,我正在编写一个API,需要在其中调用多个上游API,因此我计划并行调用它们以保存时间。在ruby-on-rails应用中实现多线程逻辑时,我希望遵循最佳实践。
RoR指南明确指出我们需要 Package 我们的代码,但它没有解释为什么它很重要。
从ruby-on-rails指南:
每个线程都应该在运行应用程序代码之前进行 Package ,因此如果应用程序手动将工作委托给其他线程(例如通过Thread.new或使用线程池的Concurrent Ruby特性),则应该立即 Package 该块
- 我的应用运行Rails版本4。
- 单个请求中的上游API调用数为3到30
- 我检查了这个类似的SO post,但它没有提到任何关于
wrapping
线程化代码的内容。
1条答案
按热度按时间liwlm1x91#
在执行器上 Package 线程可以确保卸载的常量不会出现任何问题......您不会看到如下错误