python redis 订阅发布
时间: 2023-07-15 18:14:19 浏览: 67
Redis是一个开源的内存数据结构存储系统,支持多种数据结构,如字符串、哈希表、列表、集合等,同时也支持发布/订阅模式。在Redis中,发布者可以将消息发送到指定的频道,而订阅者则可以从该频道中获取信息。
以下是Python中使用Redis进行发布/订阅的基本示例:
首先,你需要安装redis包:
```python
pip install redis
```
接着,下面的代码演示了如何使用Redis进行发布/订阅:
```python
import redis
# 创建Redis连接
r = redis.Redis(host='localhost', port=6379)
# 创建订阅对象
p = r.pubsub()
# 订阅频道
p.subscribe('channel')
# 发布消息
r.publish('channel', 'hello world')
# 获取消息
for message in p.listen():
print(message)
```
上面的代码中,我们首先创建了一个Redis连接,然后创建了一个订阅对象,并将其订阅到名为“channel”的频道上。接下来,我们发布了一条消息到该频道,并通过调用listen()方法获取订阅到的消息。最后,我们将获取到的消息打印出来。
注意:在使用Redis进行发布/订阅时,需要在单独的线程中运行listen()方法,否则程序将会一直阻塞在该方法上。
相关问题
python redis 订阅者
以下是一个Python Redis订阅者的例子:
```python
import redis
# 连接Redis
r = redis.StrictRedis(host='localhost', port=6379, db=0)
# 订阅频道
p = r.pubsub()
p.subscribe('channel')
# 监听消息
for message in p.listen():
print(message)
```
这个例子中,我们首先连接到Redis,然后订阅了一个名为“channel”的频道。接下来,我们使用`p.listen()`方法来监听消息。当有消息发布到“channel”频道时,我们就会在控制台上看到消息的内容。
python实现redis发布订阅
Python实现Redis发布订阅可以使用Redis-py库,具体实现步骤如下:
1. 创建Redis连接对象
```python
import redis
r = redis.Redis(host='localhost', port=6379, db=0)
```
2. 创建发布者并发布消息
```python
p = r.pubsub()
p.publish('channel', 'message')
```
3. 创建订阅者并订阅消息
```python
p.subscribe('channel')
for message in p.listen():
print(message)
```