GIL:全局解释器锁,是针对于解释器的锁,线程不安全
RLock与lock:可互斥锁,LOCKH会造成死锁,是针对于用户级别
限制程序的多核运行:
同一个时间只能有一个线程执行字节码
cpu多核只能基于单核处理
I/O期间会释放gil,对I/O密集程序影响不大
规避GIL影响
区分CPU和i/o密集程序
:cpu密集使用多进程、进程池
:I/P密集使用多线程+协程
服务端性能优化:
数据结构与算法优化
数据库层:索引优化,慢查询消除
网络I/O
缓存:使用缓内存数据库, readis
异步框架:
并发:多线程