cookie与session的区别
GIL全局解释器锁
解决GIL全局锁两种方式
- 换Python解释器
- 用其他语言替代线程所做的事情
如使用C语言的解释器,将C语言文件gcc编译成指定执行的函数为C语言写的函数
@property
目的:使用简洁
浏览器输入URL之后发生了什么
- DNS域名解析
- 建立TCP连接
- 发送HTTP请求
- 服务端处理请求
- 服务端返回响应结果
- 关闭TCP连接
- 浏览器解析HTML并渲染布局
锁与事务
1、锁的本质,资源的操作不是原子 -------- 锁目标,让一系列操作,一次性做完。排队
2、分布式环境下,一切能够发出两个信号量事物都能够做锁 ----- 做锁要求:加锁/解锁两个动作,一定是原子的
3、mysql来做锁 ------- 一条sql的执行,是原子的
4、redis有做锁 -------- setnx操作,是原子的
5、redis要做安全的锁,----- 加锁进程死掉,-------- 有效期使用解锁过程复杂化–锁判断----lua脚本来保证原子性
6、锁 ---- 多个线程操作一个资源 ; 事务 ----- 一个线程,操作多个资源问题。
7、事务 ----- ACID ----- 启事务/commit/rollback
8、X/open组织提出分布式事务规范 ---- XA