Rails 中的威胁安全测试

Testing for Threat Safety in Rails

既然 Puma 是 Heroku 上 Rails 的推荐网络服务器,他们警告使用非线程安全代码的危险。

如何测试 Rails 应用的线程安全性?

您通常通过分配和验证变量的值来测试线程安全。在 rspec:

  • 分叉 2 个进程
  • 第一个进程会为变量赋值
  • 第一个进程会暂停一秒钟
  • 第二个进程会为同一个变量分配不同的值

预期:两个变量具有不同的值