我之前用 java 开发了一个发送验证码的模块,采用的异步任务,发送验证码时,开启另一个线程异步处理,在 rails 中怎么实现呢?
验证码是放在 redis 中的,rails 是怎么操作 redis 的呢?请大神赐教,rails 刚学不久
@kikyous 好的,谢谢。我去看了 sidekiq 发现挺复杂了,您有收藏的教程么,或者有其他轻量的推荐吗,我就实现异步发短信验证码这一个简单的功能。
@kikyous 我现在出现了这个错误
Asset filtered out and will not be served: add Rails.application.config.assets.precompile += %w( bus_account.js )
to config/initializers/assets.rb
and restart your server 这是什么引起的呢,每个 js css 都要加到 assets.rb 里面吗
sidekiq 是自己开好的另一个线程帮我们做异步队列的事情,还是需要我们手动开一个线程去做?然后把队列放在新开的线程下面跑,该怎么实现呢?
Sidekiq 有自己的线程池,如果占满了,队列里的任务就会等待。如果你像自己控制,可以看看 ruby 的 concurrent 包。添加 gem 'concurrent-ruby'。github 的项目里有介绍,可以找到 thread pool 的使用方法。