python:用Redis完成发布和订阅数据

安装: 

pip install redis

  

 

发布文件:

# coding:utf-8

import redis
import json

class RedisHelper():
    def __init__(self):
        localhost = '192.168.2.x'
        self.__conn = redis.Redis(host='localhost', port=6379, password='password') # , decode_responses=True, password='password'
        self.channel = "monitor"

    def publisher(self, msg):
        self.__conn.publish(self.channel, json.dumps(msg))


    def subscriber(self):
        pub = self.__conn.pubsub()
        pub.subscribe(self.channel)
        pub.parse_response()
        return pub

if __name__ == "__main__":
    msg = {
        'name': 'publisher',
        'msg': 'message'
    }
    red = RedisHelper()
    red.publisher(msg)
    print msg

  

 

订阅文件:

# coding:utf-8

from redis_practice import *

obi = RedisHelper()
redis_sub = obi.subscriber()
msg = redis_sub.parse_response()
print msg

  

 

posted @ 2018-10-07 21:41  TimoTong  阅读(294)  评论(0编辑  收藏  举报