(GoRails)ActionCable如何用Redis.
Posted Mr-chen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(GoRails)ActionCable如何用Redis.相关的知识,希望对你有一定的参考价值。
视频:
https://gorails.com/episodes/how-actioncable-uses-redis?autoplay=1
原理PubSub, 你进入一个频道,然后就能接收,和发布信息给频道中的所有人。
Redis CLI
假设已经安装redis。在terminal运行:
redis-cli
进入,后输入subscribe "chat"订阅频道:
subscribe "chat"
显示:
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "chat"
3) (integer) 1
在其他terminal,多开几个,同样订阅"chat"
在其中一个termain退出再运行:
redis-cli
publish "chat" "hello!"其他terminal都能收到"hello"。
Rails
上一次视频:
建立了一个cable
class NotificationsChannel < ApplicationCable::Channel
def subscribed
# 当你加入频道,你只会收到你的通知。当创建一个订阅后,从客户端向服务器端传参数
stream_from "notifications:#{current_user.id}"
end
进入rails console,然后输入ActionCable.server.broadcast "notifications:11", {html: "<h1>hello</h1>"}
各个terminal都会收到hello。
以上是关于(GoRails)ActionCable如何用Redis.的主要内容,如果未能解决你的问题,请参考以下文章