码迷,mamicode.com
首页 > 编程语言 > 详细

Python redis 发布和订阅

时间:2016-09-17 07:13:40      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:python redis 发布和订阅



发布和订阅

类似于RSS
发布者:服务器
订阅者:Dashboad和数据处理
看下面代码:
类文件名:monitor.py:

#!/usr/bin/python
# -*- coding: utf-8 -*-

__author__ = ‘gaogd‘

import redis

class RedisHelper:
    def __init__(self):
        self.__conn = redis.Redis(host=‘192.168.10.12‘, port=6379, password=‘wdzj2014‘)
        self.chan_sub = ‘fm250‘
        self.chan_pub = ‘fm250‘

    def public(self, msg):      ##  发送消息到fm250这个频道
        self.__conn.publish(self.chan_pub, msg)
        return True

    def subscribe(self):        ##订阅 (接受fm250这个频道的消息)
        pub=self.__conn.pubsub()
        pub.subscribe(self.chan_sub)
        pub.parse_response()
        return pub

订阅者文件名:subscriber.py

#!/usr/bin/python
# -*- coding: utf-8 -*-
__author__ = ‘gaogd‘
‘‘‘
订阅
‘‘‘
import sys,os
sys.path.append(os.path.dirname(__file__))
from redis_monitor import RedisHelper
obj = RedisHelper()
redis_sub = obj.subscribe()     ##订阅
while True:
    msg = redis_sub.parse_response()
    print(msg)

发布者文件名:publisher.py

#!/usr/bin/python
# -*- coding: utf-8 -*-
__author__ = ‘gaogd‘
‘‘‘
发布
‘‘‘
import sys,os
sys.path.append(os.path.dirname(__file__))
from redis_monitor import RedisHelper
obj = RedisHelper()
while True:
    content = raw_input(u‘请输入你要发布的内容:‘).strip()
    if content == ‘exit‘:
        break
    obj.public(content)    ## 发送内容
需要注意的是,输出的结果为列表,其中的元素均是字节的类型!


本文出自 “奋斗吧” 博客,转载请与作者联系!

Python redis 发布和订阅

标签:python redis 发布和订阅

原文地址:http://lvnian.blog.51cto.com/7155281/1853225

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!