python redis 连接池 和 消息 订阅发布

python redis 连接池 和 消息 订阅发布

redis 发布订阅(PubSub),深入解读
https://blog.csdn.net/ldw201510803006/article/details/126093445

    def connectredis(self):
        try:
            #redis的连接池
            #rs = StrictRedis(host=self.host, port=6379, db=2 )
            rs = redis.ConnectionPool.from_url(self.redis_url)
            #rs = redis.ConnectionPool(host=self.host, port=6379, db=2, password='jack@2023')
            conn = redis.Redis(connection_pool=rs, decode_responses=True)
          
            return conn

        except Exception as e:
            log.info("redis conn error: {}".format(e))
            return
    def run(self):
        rs_sub = self.rs.pubsub()
        rs_sub.psubscribe(self.channel)
        rs_sub.parse_response()
        for data in rs_sub.listen():
from redis import StrictRedis
self.redis  = StrictRedis.from_url('redis://:j99_abc6.2023@192.108.99.3:6379/2')        
self.redis.publish(self.str_port, data)
for k, v in self.redis_conn.hscan_iter('overwrite', pattern, 100):
self.db = sqlite3.connect(db_path, isolation_level=None)
p = subprocess.Popen(cmd, shell=True, stdin=subprocess.PIPE)
       

wrapcache

import wrapcache

wrapcache.set('cache_time', value=start_time, timeout=CACHE_TIMEOUT)
wrapcache.set('read_tables', value=read_tables, timeout=CACHE_TIMEOUT)
wrapcache.set('router_tables', value=router_tables, timeout=CACHE_TIMEOUT)

wrapcache.get("read_tables")
wrapcache.get('router_tables')
任务模型

一个程序 不停地 给modbus 总线 发送读取指令
然后将读取的数据,
分别发给 两个地方。
一个是 正式的 服务器的数据库
一个是 测试用的服务器的数据库
采集的数据先保存在本地,然后另外一个分发的程序,将数据分发给 那两个地方。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值