并发模型 常见的并发模型一般包括3类,基于线程与锁的内存共享模型,actor模型和CSP模型,其中尤以线程与锁的共享内存模型最为常见。由于go语言的兴起,CSP模型也越来越受关注。基于锁的共享内存模型与后两者的主要区别在于,到底是通过共享内存来通信,还是通过通信来实现访问共享内存。由于actor模型 ...
分类:
其他好文 时间:
2019-08-18 19:39:03
阅读次数:
86
原文: http://blog.gqylpy.com/gqy/234 " 目录 一、IO模型介绍 二、阻塞IO(blocking IO) 三、非阻塞IO(non blocking IO) 四、多路复用IO(IO multiplexing) 五、异步IO(Asynchronous I/O) ...
分类:
其他好文 时间:
2019-08-16 23:11:47
阅读次数:
118
原文: http://blog.gqylpy.com/gqy/234 " 目录 一、IO模型介绍 二、阻塞IO(blocking IO) 三、非阻塞IO(non blocking IO) 四、多路复用IO(IO multiplexing) 五、异步IO(Asynchronous I/O) ...
分类:
其他好文 时间:
2019-08-16 20:51:43
阅读次数:
82
原文: http://blog.gqylpy.com/gqy/234 " 目录 一、IO模型介绍 二、阻塞IO(blocking IO) 三、非阻塞IO(non blocking IO) 四、多路复用IO(IO multiplexing) 五、异步IO(Asynchronous I/O) ...
分类:
其他好文 时间:
2019-08-16 20:31:41
阅读次数:
85
一、协程介绍 协程:是单线程下的并发,又称微线程,纤程。英文名Coroutine。一句话说明什么是线程:协程是一种用户态的轻量级线程,即协程是由用户程序自己控制调度的 需要强调: 二、协程优缺点及特点 对比操作系统控制线程的切换,用户在单线程内控制协程的切换 优点如下: 缺点如下: 总结协程特点: ...
分类:
其他好文 时间:
2019-08-16 00:25:46
阅读次数:
123
今日内容: 1,线程池 2,进程池 3,协程 4,IO 模型服务端要满足这三个条件: 1,24小时不间断的提供服务 2,能够支持高并发 3,要有固定的IP地址和端口在服务端这个地方会出现阻塞态情况: 阻塞IO 操作有: 1,链接循环 2,通信循环单线程实现高并发思路: 为了更好的提高程序的运行效率,... ...
分类:
编程语言 时间:
2019-08-15 23:13:24
阅读次数:
178
总结了五种IO模型:阻塞I/O(blocking IO)、非阻塞I/O(nonblocking IO)、I/O多路复用(IO multiplexing)、信号驱动I/O(signal driven IO)、异步I/O(asynchronous IO)。 ...
分类:
编程语言 时间:
2019-07-22 20:12:44
阅读次数:
159
实现gevent模块 服务端: from socket import * import time s = socket() s.bind(('127.0.0.1',8080)) s.listen(5) s.setblocking(False) r_list=[] w_list=[] while Tr ...
分类:
编程语言 时间:
2019-07-14 18:03:09
阅读次数:
105
IO模型 模型即解决某个问题的固定套路 I/O 指的是输入输出 IO的问题: 当我们要输入数据或是输出数据通常需要很长一段时间,当然是对于CPU而言 在等待输入的过程中,CPU就处于闲置状态 没事干! 造成了资源浪费 注意: IO其实有很多类型,例如,socket网络IO,内存到内存的copy,等待 ...
分类:
其他好文 时间:
2019-07-09 17:59:44
阅读次数:
105
前言 我们知道nginx的效率非常高,能处理上万级的并发,其之所以高效离不开epoll的支持, epoll是什么呢?,epoll是IO模型中的一种,属于多路复用IO模型; 到这里你应该想到了,select,的确select也是一种多路复用的IO模型,但是其单个select最多只能同时处理1024个s ...
分类:
其他好文 时间:
2019-07-08 19:21:51
阅读次数:
83