Значения Thread.current [] и атрибуты уровня класса безопасны для использования в рельсах?

У меня есть особая проблема, которую я пытаюсь решить в приложении rails 3, и два общих решения, которые я вижу, следующие:

Thread.current[:something] = value

и

class Foo
  cattr_accessor :bar
end

Foo.bar = value

Являются ли эти методы хранения данных (и соответствующего поиска) безопасными для нескольких пользователей, отправляющих запрос в мое приложение rails, в то же время?

Я беспокоюсь о Thread.current, потому что веб-сервер может использовать один поток для подачи нескольких запросов, не так ли? Или есть что-то в том, как рельсы обрабатывают потоки, чтобы предотвратить проблемы при использовании Thread.current? Я вижу Acts As Current использует Thread.current для хранения текущего пользователя, так что это дает мне надежду... но я хочу получить достоверное подтверждение.

Я также обеспокоен атрибутами уровня класса в рабочей среде, потому что я ожидал бы, что рельсы будут кэшировать объекты класса в памяти по соображениям производительности. Является ли атрибут уровня класса повторно использоваться в разных запросах? или это безопасно из-за того, что рельсы делают для обработки атрибутов класса по запросам? опять же, я бы хотел получить достоверное подтверждение этого.

... это приложение использует Ruby [email protected], с Rails 3.0.9