1. 程式人生 > >python:用Redis完成發布和訂閱數據

python:用Redis完成發布和訂閱數據

sage host cal ins ESS div 安裝 def lis

安裝:

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

  

python:用Redis完成發布和訂閱數據