基於redis(訂閱發布)實現python和java進程間通信


主要結構為: python進程發布消息,java進程訂閱消息。

依賴環境:

python:   pip install redis

java:  jedis

1. python端:

PubSub.py

import redis

class PubSub(object):
    def __init__(self, host, port, db):
        self.__conn = redis.Redis(host, port, db)

    def publish(self, channel, msg):
        self.__conn.publish(channel, msg)
        return True

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

sub.py

from PubSub import PubSub

obj = PubSub('localhost', 6379, 1)
redis_sub = obj.subscribe('cord')

while True:
    msg = redis_sub.parse_response()
    msg = msg[2].decode()
    print(msg)

2. java端

RedisPub.java

import redis.clients.jedis.Jedis;
import java.util.Date; public class RedisPub { private static Jedis jedis = new Jedis("localhost",6379); private static final String channel = "cord"; public static void main(String[] args){ String message = new Date().toString(); jedis.publish(channel, message); } }

參考鏈接:

http://www.cnblogs.com/melonjiang/p/5342383.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM