-
深入Redis之 redis布隆过滤器(十一)
发布时间:2020-10-08 20:05一、引出布隆过滤器 现在有一个问题: 现在有50亿过个电话号码,有10万个电话号码,要快速准确判断10万个电话号码是否存在。 1.如果通过数据库查询:不能快速查询。 2.如果是将数据放入r
-
深入Redis之 redis cluster常见问题 (十)
发布时间:2020-10-07 10:29redis集群的故障转移 A. 故障发现 redis集群通过ping/pong消息实现故障发现(redis集群本身自己带有故障转移功能,不需要sentinel),分为主观下线和客观下线。
-
数据结构与算法python语言实现(六) 图
发布时间:2020-06-27 21:49图 Graph 图的术语: 1.顶点 Node 是图的基本组成部分,顶点具有名称标识Key,也可以携带数据项value 2.边Edge(也称“弧Arc”) 作
-
数据结构与算法python语言实现(五) 树
发布时间:2020-06-07 20:30树 树是一种非线性的数据结构,树包含根,枝,叶 树的特征: 1.树是有层次的:越接近顶层的分类越普遍,越接近底层的分类越独特 2.一个节点的子节点和另一个节点的子节点相互之间是隔离,独
-
数据结构与算法python语言实现(四) 查找和排序
发布时间:2020-06-01 23:28查找算法 1.顺序查找 说白了就是遍历查找。 例如:在 [5,1,55,67,32,10,46,100] 中找一个数,找到返回true,否则返回false def sequeS
-
Python多线程和多进程(六) 多进程编程和同步
发布时间:2020-04-11 14:48多进程编程 多进程和多线程对比: 1.由于python有GIL锁,而且是一个进程管理着1把GIL锁,所以多线程无法使用多核,即同一时刻只能一个线程在运行。 而多进程编程可以使用多核。意味着,
-
Python多线程和多进程(五) 多线程管理——线程池
发布时间:2020-04-11 14:28多线程管理 - 线程池 Q1:首先,为什么需要线程池? 因为我们希望能够保持一定数量的并发线程处于执行状态,让处于执行状态的线程数不至于太少也不至于太多,提高任务执行效率。 Q2:信号量
-
Python多线程和多进程(四) 线程同步之信号量
发布时间:2020-04-11 13:37同步方式3:信号量 semaphore 信号量是用于控制并发线程数量的锁。 还是以爬虫为例子。你可能有这么个需求:列表页爬到很多的详情页,我想对每个详情页开一个线程来爬。 但是如果1
-
Python多线程和多进程(三) 线程同步之条件变量
发布时间:2020-04-11 13:19同步方式2:条件变量 首先,条件变量必须要配合互斥锁使用,因为条件变量是一种多线程竞争的共享资源。 通过条件变量可以实现等待和通知的机制。 最基本的使用方式为: cond
-
Python多线程和多进程(二) 线程同步之互斥锁和重入锁
发布时间:2020-04-06 23:55多线程编程 - 线程同步 什么是线程同步,为什么要线程同步 线程同步是为了解决多线程编程中,由于竞争使用资源或修改变量而造成数据不一致的问题举一个例子: # coding=utf