摘要: Celery是Python中最流行的异步消息队列框架,支持RabbitMQ、Redis、ZoopKeeper等作为Broker,而对这些消息队列的抽象,都是通过Kombu实现的。Kombu实现了对AMQP transport和non-AMQP transports(Redis、Amazon SQS、 阅读全文
posted @ 2022-10-31 18:50 Kevin_zsq 阅读(38) 评论(0) 推荐(0)
摘要: 以celery worker启动为例: 起celery worker 的指令为 celery -A mysite.celery worker 如果指定-c 2 代表celery fork出两个子进程。 首先从启动worker进程的入口出发: 文件:Celery/bin/celery.py 这个文件是 阅读全文
posted @ 2022-10-31 18:47 Kevin_zsq 阅读(156) 评论(0) 推荐(0)
摘要: 一、行锁加锁规则在RR隔离级别,行锁的加锁规则:1、加锁原则:加锁的基本单元是next-key lock(前开后闭区间),且查找过程中访问的对象才会加锁2、等值查询next-key lock退化情况:(1)唯一索引上的等值查询,查询到结果时,next-key lock退化成行锁(2)索引上的等值查询 阅读全文
posted @ 2022-10-31 17:11 Kevin_zsq 阅读(279) 评论(0) 推荐(0)
摘要: import redis import time S_REDIS = redis.Redis( host='10.127.0.0', port='8088', db=9, password='test', decode_responses=True, retry_on_timeout=True, h 阅读全文
posted @ 2022-10-31 15:59 Kevin_zsq 阅读(35) 评论(0) 推荐(0)
摘要: 一、研究问题1:redis 配置文件设置了选项timeout后,是否会导致大量close_wait状态连接 注:redis配置文件timeout选项说明如下 # Close the connection after a client is idle for N seconds (0 to disab 阅读全文
posted @ 2022-10-31 13:52 Kevin_zsq 阅读(778) 评论(0) 推荐(0)
摘要: 问题现象:后端更新完数据库记录版本号后,前端展示的记录版本号仍然为老的版本号 问题分析: 客户端展示的版本号是从缓存中获取的,在更新后端数据库记录的时候,采用双写的方式,但是双写过程中,存在部分业务代码没有删除缓存。 双写的意思是既对sql数据库进行了修改(修改的意思就是增删改),又对redis缓存 阅读全文
posted @ 2022-10-31 13:48 Kevin_zsq 阅读(107) 评论(0) 推荐(0)
摘要: 一、线程的基本操作 1、单线程:起一个线程,执行分支任务,这是一个很简单的方法,但是一旦启动一个线程,该线程会由操作系统来管理,独立执行直到目标函数返回。比如执行以下代码: import time import threading def fun(n): while n > 0: n -= 1 pr 阅读全文
posted @ 2022-10-28 17:55 Kevin_zsq 阅读(741) 评论(0) 推荐(0)
摘要: 一、问题现象 MANO(网络管理与编排软件)原子层创建资源后写redis缓存时报错No connection avaiable 堆栈打印: Traceback (most recent call last): File "/home/oes/.local/lib/python3.8/site-pac 阅读全文
posted @ 2022-10-28 16:51 Kevin_zsq 阅读(1030) 评论(0) 推荐(0)
摘要: 首先介绍redis底层实际存储数据的八种数据类型: 一、简单的动态字符串(SDS) 定义结构: struct sdshdr{ int len; //记录buf数组使用的字节数量,也等于SDS保存字符的长度 int free; //记录buf数组中未使用的字节的数量 char buf[]; //字节数 阅读全文
posted @ 2022-10-28 16:15 Kevin_zsq 阅读(153) 评论(0) 推荐(0)
摘要: redis 服务器本质上是一个事件驱动程序(redis处理两类事件:文件事件和时间事件)。 对于文件事件的处理,redis基于Reactor模式开发了文件事件处理器,首先介绍下Reactor模式是什么东西? Reactor模式是网络编程模型的一种,是一种典型的事件驱动编程模型,其处理事件机制为:主程 阅读全文
posted @ 2022-10-28 16:13 Kevin_zsq 阅读(58) 评论(0) 推荐(0)