Задать вопрос
@justed_ss
ewf

Как исправить утечки памяти rails faye thin?

Rails 4.1.4 ruby 2.2
Faye контроллер выглядит вот так
class RealAppointmentsController < FayeRails::Controller
end

Монтируется вот так
config.middleware.delete Rack::Lock
config.middleware.use FayeRails::Middleware, mount: '/faye', :timeout => 25 do
   map '/appointments' => RealAppointmentsController
   map :default => :block
end


Используется как SSE, т.к. все реализации SSE на rails выглядят как горы костылей.
Вызывается из методов стандартных контроллеров вот так
RealAppointmentsController.publish('/appointments', @appointment.to_json)


По возможности, в нужных местах делается отмена подписки на клиенте через
subscription.cancel();

И тем не менее сервер отъедает на каждого клиента по 5-15мб из системы. Даже с учетом того что ruby не возвращает занятую память в систему он рано или поздно должен переставать забирать память из системы, а этого не происходит. Т.е. в девелопменте с одним клиентом и кучей обновлений страницы планомерно съедает всю память.
  • Вопрос задан
  • 223 просмотра
Подписаться 1 Оценить 5 комментариев
Помогут разобраться в теме Все курсы
  • Thinknetica
    Профессиональная разработка на Ruby on Rails
    9 месяцев
    Далее
  • Хороший программист
    Интенсив по Ruby on Rails
    5 месяцев
    Далее
  • Thinknetica
    Оптимизация Ruby/Rails-приложений
    9 недель
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы