0

环境

  • 我正在AirbrakeHerokuWebRuby应用程序(不是 Rails)安装。

  • 因此Airbrake#notify,对于Airbrake版本 5,forRuby异步发送通知。

  • 我担心的是,如果我不使用Sidekiqworker + Redis,那么调用Airbrake#notify可能仍然会减慢应用程序的响应时间,具体取决于它的使用方式(无论是在类似 Rails 的控制器中还是在应用程序的其他部分中) .

  • 除了克服上面提到的潜在问题之外,我能想到的使用Sidekiqworker +Redis调用的另一个优点是它有几个持久化策略,所以如果应用程序崩溃,我可以回溯并查看队列 中备份的错误通知。Airbrake#notifyRedisSidekiq

  • 而如果我不使用Sidekiq+Redis并且应用程序崩溃,那么将没有备份数据....

问题

  • 这是否意味着我不需要使用Sidekiq+ Redis(或其他等效数据库)?

  • 我是否正确理解了这个问题?我对“池连接”和异步处理没有非常完整的理解,所以这使得理解在这里做什么有点挑战。

4

1 回答 1

1

这是发送异步通知的类https://github.com/airbrake/airbrake-ruby/blob/master/lib/airbrake-ruby/async_sender.rb

它使用标准 ruby​​ 线程来发送消息,因此不需要后台服务

于 2016-01-09T08:04:15.280 回答