Python&Redis 发布订阅
1、Redis控制台操作
先开启一个Redis控制台开启订阅:
SUBSCRIBE fm666
返回参数解释:
subscribe,表示订阅成功
unsubscribe,表示取消订阅成功
message,表示其它终端发布消息
然后开启一个Redis控制台开始发布消息:
PUBLISH fm666 "hello redis"
这是注意第一个订阅的Redis控制台会有相应的消息输出
2、Python操作Redis订阅发布
封装一个订阅发布的类
# redis_publish.py
import redis
class RedisHelper:
def __init__(self):
self.__conn = redis.Redis(host='111.231.135.184',port=6379)
self.chan_sub = 'fm666'
self.chan_pub = 'fm666'
def public(self,msg):
self.__conn.publish(self.chan_pub,msg)
return True
def subscribe(self):
pub = self.__conn.pubsub() # 打开收音机
pub.subscribe(self.chan_sub) # 调频道
pub.parse_response() # 准备接收
return pub
订阅端代码:
from redis_publish import RedisHelper
obj = RedisHelper()
redis_sub = obj.subscribe()
while True:
msg = redis_sub.parse_response()
print(msg)
'''
运行此程序后,在redis控制台 PUBLISH fm666 "hello redis"
就会实时的输出
'''