Стриминг в Rails 4

d3924f6a00b44b9d716e68a652d0eb94.jpgЧто такое стриминг? Стриминг крутился около Rails начиная с версии 3.2, но он был ограничен исключительно стримингом шаблонов. Rails 4 же вышел с более зрелым функционалом стриминга в реальном времени. По сути это значит что Rails сейчас способен нативно обрабатывать I/O объекты и посылать данные клиенту в риалтайме. Streaming и Live — два отдельных модуля, реализованных внутри ActionController’а. Streaming включен по умолчанию, в то время как Live должен быть явно определен непосредственно в контроллере. Основной api стриминга использует класс Fiber (доступен с версии ruby 1.9.2). Файберы предоставляют инструментарий для потоко-подобного параллелизма в ruby. Fiber дает возможность потокам приостанавливаться и возобновлять работу по желанию программиста, а не быть по сути упреждающими.Читать дальше →

© Habrahabr.ru