变量名=f.read() print(变量名) f.close() fileno 返回文件句柄在内核中的索引值,以后做IO多路复用是可以用到 def flush 把文件从内存buffer里强制刷新到硬盘 def readable 判断是否可读 def readline 只读一行,遇到\r or \n ...
分类:
其他好文 时间:
2018-01-27 17:08:12
阅读次数:
158
TCP的首部格式 字段解释 + 源端口和目的端口 用于多路复用/分解来自或送到上层应用的数据 + 数据偏移 TCP中数据的开始处距离TCP报文段的起始位置有多远 == TCP报文段的首部长度 表示长度以32位比特为单位,因此最大可以表示60字节(15 4)的首部 + 保留 占6位,为0,为今后所用 ...
分类:
其他好文 时间:
2018-01-27 13:33:27
阅读次数:
151
python之socket编程 本章内容 1、socket 2、IO多路复用 3、socketserver Socket socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,对于文件用【打开】【读写】【关闭】模式来操作。socket就是该模式的一个实现,socket即是 ...
分类:
编程语言 时间:
2018-01-26 17:10:55
阅读次数:
378
Linux 建立 TCP 连接的超时时间分析 tags: linux | network Linux 系统默认的建立 TCP 连接的超时时间为 127 秒,对于许多客户端来说,这个时间都太长了, 特别是当这个客户端实际上是一个服务的时候,更希望能够尽早失败,以便能够选择其它的可用服务重新尝试。 so ...
分类:
其他好文 时间:
2018-01-24 20:01:41
阅读次数:
154
背景:只有一个IP地址,实现内网内多台主机访问外网 原理:NAPT使用不同的端口来映射对各内网的IP地址到一个指定的外网IP地址,多对一。 NAPT采用端口多路复用的方式。内部网络的所有主机均可共享一个合法的外部IP地址实现对Internet的访问,从而可以最大限度的节约IP地址资源。同时,又可以英 ...
分类:
其他好文 时间:
2018-01-21 21:31:30
阅读次数:
237
阅读目录 一 IO模型介绍 二 阻塞IO(blocking IO) 三 非阻塞IO(non-blocking IO) 四 多路复用IO(IO multiplexing) 五 异步IO(Asynchronous I/O) 六 IO模型比较分析 七 selectors模块 一 IO模型介绍 为了更好地了 ...
分类:
编程语言 时间:
2018-01-18 00:58:08
阅读次数:
212
Redis采用的是基于内存的采用的是单进程单线程模型的KV数据库,由C语言编写。官方提供的数据是可以达到100000+的qps。这个数据不比采用单进程多线程的同样基于内存的KV数据库Memcached差。 Redis快的主要原因是: 第一、二点不细讲,主要围绕第三点采用多路 I/O 复用技术来展开。 ...
分类:
编程语言 时间:
2018-01-17 20:14:41
阅读次数:
126
IO多路复用、事件驱动、响应式概念类似或者一样 就是很多网络连接(多路),共(复)用少数几个(甚至是一个)线程。 连接很多的时候,不能每个连接一个线程,会耗尽系统内存的。线程也不能阻塞在任何一个连接上,等新的数据来,这样就不能及时响应其他连接发来的数据了;也不能用非阻塞方式,轮询所有的连接,这会浪费 ...
分类:
其他好文 时间:
2018-01-12 17:00:49
阅读次数:
232
当程序进行IO时,如果数据尚未准备好,那么IO将处于阻塞状态。当某个进程有多个打开的文件,比如socket,那么其后的所有准备好读写的文件将受到阻塞的影响而不能操作。不借助线程,单一进程无法在同一时间服务多个文件描述符。非阻挡式IO可以作为一个解决方案,但是效率并不高。首先进程需要不断发IO请求,其次,如果程序可以休眠,让出CPU将提高效率。多任务式IO是在其中任何一个文件描述符就绪时收到通知,此
分类:
系统相关 时间:
2018-01-12 13:26:42
阅读次数:
210
man page: http://man7.org/linux/man-pages/man2/poll.2.html poll 是一种多路复用的IO机制。使用 poll 可以监听多个文件描述符,一但某个文件描述符就绪(一般是读就绪或者写就绪),能够通知程序进行响应的读写操作。 poll 本质是一种同 ...
分类:
其他好文 时间:
2018-01-10 20:15:15
阅读次数:
184