2015-02-09 1 views
1

Я занимаюсь созданием веб-приложения с использованием Rails, который отображает твиты из API потоковой передачи Twitter на карту mapbox. Он использует Puma как сервер и ActionController: Live, чтобы создать http-соединение с клиентом, чтобы продвигать новые твиты. Стрит Twitter открывается через «рабочий» и публикует твиты для redis, а затем на моем «поточном» контроллере у меня есть подписка redis, которая прослушивает твиты и затем отправляет их клиенту.Heroku-Puma-ActionController: Live не разрешает несколько запросов

Мое приложение в настоящее время отлично работает локально, я могу открыть несколько вкладок, и все клиенты получают твиты, но когда я нажимаю на Heroku, он работает только для одного клиента за раз. Раньше он работал хорошо, и я буквально не менял никаких настроек puma.

Развернутая версия Heroku выглядит так, как если бы она не была длинной многопоточной. Не знаете, как и почему.

Это ссылка на GitHub репо, если кто-то хотел бы видеть код: github repo

редактировать - Going попробовать изменить к Фей WebSocket, но я не думаю, что проблема связана в websocket, видя, что единственное соединение, которое устанавливается первым, отлично работает, его просто все, после того как его отвергли 503 ошибки.

ответ

0

Это была проблема, связанная с инициированием сервера Puma с установленным количеством рабочих процессов. Удалив установленное количество процессов и оставив его по умолчанию, исправил его.

# workers Integer(ENV['WEB_CONCURRENCY'] || 3)

2

пожалуйста, попробуйте использовать веб-сокеты на Heroku https://devcenter.heroku.com/articles/websockets

+0

Хорошо, я попробую это как можно скорее. Спасибо. – TheNastyOne

+0

HI there-I я переключился на использование websocket-rails gem для моего приложения, и мне было просто интересно, знаете ли вы, как закрыть соединение с веб-сервером на сервере, как только пользователь отключится? Любая помощь очень ценится, спасибо! – TheNastyOne

+0

Смотрите это: http://ngauthier.com/2013/03/websockets-in-rails-4.html – CuriousMind

 Смежные вопросы

  • Нет связанных вопросов^_^