一、Redis事务 1、概念 可以一次执行多个命令,本质是一组命令的集合。一个事务中的 所有命令都会序列化,按顺序地串行化执行而不会被其它命令插入,不许加塞。 事务能做的事: 一个队列中,一次性、顺序性、排他性的执行一系列命令 常用命令: DISCARD: 取消事务,放弃执行事务块内的所有命令; E ...
分类:
其他好文 时间:
2019-12-24 13:26:39
阅读次数:
85
线程池 效果对比 普通线程的启动方式 利用线程池启动线程的方式 线程池简介 降低资源消耗:不用频繁创建销毁资源。 提高响应速度 提高线程可管理性 简单线程池的设计 设计思路 设计过程中需要思考的问题 1. 初始创建线程数 2. 没有可用线程的解决策略 3. 缓冲数组长度 4. 缓冲数组满了怎么办? ...
分类:
编程语言 时间:
2019-12-11 17:18:39
阅读次数:
81
1.用四台S3700交换机,2台PC机,一台HUB,组建网络拓扑 2.测试主机间的连通性 3.配置rstp基本功能 (1)把交换机stp模式由默认的mstp变为rstp。在华为交换机上默认开启了mstp (2)查看stp配置信息 从此可以看出mengyu-S3是根交换机,mengyu-S4是备份根交 ...
分类:
其他好文 时间:
2019-12-07 01:01:52
阅读次数:
124
1. 在redis中,MULTI/EXEC/DISCARD/这三个命令是实现事务的基石 multi:开启事务,用于标记事务的开始,其后执行的命令都被存入命令队列,直到执行EXEC时,这些命令才会被原子的执行,类似关系型数据库里的begin transaction exec:提交事务,类似于关系型数据 ...
分类:
其他好文 时间:
2019-12-05 21:58:28
阅读次数:
110
'''set是一个无序(不支持索引和切片)而且不重复的集合,有些类似于数学中的集合,也可以求交集,求并集等,'''s1={1,2,3,1} #定义一个set s1 如果s1={}为空则默认定义一个字典# s1 = set() # 定义空集合s2=set([2,5,6])print(s1) # s1= ...
分类:
其他好文 时间:
2019-12-02 11:52:30
阅读次数:
79
# 集合:{}花括号内用逗号分割,每个元素都必须是不可变类型,元素不能重复,无序# 作用:关系运算,去重# s={1,2,3,1} # s=set{1,2,3,1}# print(type(s)) # <class 'set'># 长度# print(len(s)) # 3# 成员运算in和not ...
分类:
其他好文 时间:
2019-11-25 09:47:27
阅读次数:
70
1. Redis服务端是个单线程的架构,不同的Client虽然看似可以同时保持连接,但发出去的命令是序列化执行的,这在通常的数据库理论下是最高级别的隔离2. 用MULTI/EXEC 来把多个命令组装成一次发送,达到原子性(有点像命令具有打包功能)3. 用WATCH提供的乐观锁功能,在你EXEC的那一 ...
分类:
其他好文 时间:
2019-11-24 22:40:35
阅读次数:
184
开始事务:multi开启 exec结束 mutil后面的语句有两种情况 1.语法错误,exec的时候报错,所有的不能执行 2,语法本身没有错,但适用的对象有问题,会执行正确的语句,跳过不适的语句 3.discard 取消事务(在队列里面的都不执行) 4,watch key1 key2 key3 监控 ...
分类:
其他好文 时间:
2019-11-23 10:01:28
阅读次数:
102
集合内置方法完整列表 方法描述 add() 为集合添加元素 clear() 移除集合中的所有元素 copy() 拷贝一个集合 difference() 返回多个集合的差集 difference_update() 移除集合中的元素,该元素在指定的集合也存在。 discard() 删除集合中指定的元素 ...
分类:
其他好文 时间:
2019-11-20 16:45:18
阅读次数:
88
目录 一、事务的实现 1.multi——开启事务 2.命令入队列 3.exec——执行事务 4.DISCARD——放弃执行 5.错误处理 二、watch命令 目录 一、事务的实现 1.multi——开启事务 2.命令入队列 3.exec——执行事务 4.DISCARD——放弃执行 5.错误处理 二、 ...
分类:
其他好文 时间:
2019-11-15 18:25:55
阅读次数:
79