Утро в хату, уважаемые!
ENV: ruby 2.4.1, rails 5.1, nginx 1.10.3
Имеется сервак, на котором крутятся 3 одинаковых сервиса. Каждый из сервисов использует WebSockets.
Все настройки канала одинаковы. Различие есть только в конфиге cable.yml
Для первого сервиса:
production: &production
adapter: redis
url: redis://localhost:6379/1
Для двух других
url: redis://localhost:6379/2 и url: redis://localhost:6379/3 соответственно.
Канал:
class MessagesChannel < ApplicationCable::Channel
def subscribed
stream_from 'messages'
end
end
При отправке сообщения в канал одним из сервисов - оно прилетает и подписчикам других.
Отправка:
ActionCable.server.broadcast('messages', message.to_json)
Как побороть сие недоразмение? Куда копать?
P.S: Пробовал разносить по разным каналам - те же яйцы только в профиль.
UPD:
Закостылил при помощи gem 'action_cable_subscription_adapter', но хотелось бы штатными средствами конечно.