随笔分类 -  网络编程

摘要:TCP限流是因为让接收方充分接受完消息,保证数据安全,不会丢失 一、窗口机制介绍 二、滑动窗口技术(限流使用到的技术) 三、举例说明 过程分析: 1、初始状态,发送方没有帧发出,发送窗口前后相位重合。接收方0号窗口打开,等待就接收0号帧; 2、发送方打开0窗口,表示已发出0帧但尚未确认返回信息。此时 阅读全文
posted @ 2019-07-07 14:49 small_caier 阅读(1058) 评论(0) 推荐(0) 编辑
摘要:这三种IO多路复用模型在不同的平台有着不同的支持,而epoll在windows下就不支持,好在我们有selectors模块,帮我们默认选择当前平台下最合适的,我们只需要写监听谁,然后怎么发送消息接收消息,但是具体怎么监听的,选择的是select还是poll还是epoll,这是selector帮我们自 阅读全文
posted @ 2019-06-27 10:11 small_caier 阅读(170) 评论(0) 推荐(0) 编辑
摘要:四种常见IO模型 阻塞IO(blocking IO)、非阻塞IO(nonblocking IO)、IO多路复用(IOmultiplexing)、异步IO(asynchronous IO) IO发生时涉及的对象和步骤 对于一个network IO (这里我们以read、recv举例),它会涉及到两个系 阅读全文
posted @ 2019-06-27 09:57 small_caier 阅读(197) 评论(0) 推荐(0) 编辑
摘要:python中的内存管理,从浅层次来说,可以分为3个方面来讲: 1,引用计数: python中引用计数,为了跟踪内存的对象 当创建对象的时候即被引用了,当对象不再被使用时,即某个对象的引用计数为0,它被垃圾回收。 2,垃圾回收机制: python可以不事先声明变量类型而直接对变量进行赋值,垃圾回收器 阅读全文
posted @ 2019-05-30 08:06 small_caier 阅读(224) 评论(0) 推荐(0) 编辑
摘要:协程: 协程是一种用户态的轻量级线程, 即协程是由用户程序自己控制调度的 1.Greenlet 2.Gevent 阅读全文
posted @ 2019-01-25 20:53 small_caier 阅读(202) 评论(0) 推荐(0) 编辑
摘要:什么是线程 进程:资源分配单位 线程:cpu执行单位(实体),每一个py文件中就是一个进程,一个进程中至少有一个线程 线程的两种创建方式: 二 线程的创建和销毁,相对于进程来说开销特别小 线程之间资源共享,共享的是同一个进程中的资源, 资源共享就涉及到数据安全问题,加锁来解决 线程锁 From th 阅读全文
posted @ 2019-01-14 19:18 small_caier 阅读(227) 评论(0) 推荐(0) 编辑
摘要:管道 Conn1,conn2 = Pipe() Conn1.recv() Conn1.send() 数据接收一次就没有了 事件 E = Event() #初识状态是false E.wait() 当事件对象e的状态为false的时候,在wait的地方会阻塞程序,当对象状态为true的时候,直接在这个w 阅读全文
posted @ 2019-01-14 15:56 small_caier 阅读(248) 评论(0) 推荐(0) 编辑
摘要:进程的其他方法 P = Process(target=f,) P.Pid 查看进程号 查看进程的名字p.name P.is_alive() 返回一个true或者False P.terminate() 给操作系统发送一个结束进程的信号 验证进程之间是空间隔离的 守护进程 主进程的代码运行完毕设置为守护 阅读全文
posted @ 2019-01-14 15:51 small_caier 阅读(148) 评论(0) 推荐(0) 编辑
摘要:操作系统简单介绍 多道技术: 空间复用:把许多进程都放入内存中,等待操作系统操作 时间复用:在内存中一个程序中有io阻塞程序,操作系统会在程序阻塞时,执行其他的程序 进程之间是空间隔离的 并发 伪并行,看着像同时运行,其实是任务之间的切换(遇到io切换的会提高代码效率) ,任务切换+保存状态(保存现 阅读全文
posted @ 2019-01-14 15:49 small_caier 阅读(127) 评论(0) 推荐(0) 编辑
摘要:网络编程协议 1.osi七层模型 应用层 表示层 会话层 传输层 网络层 数据链路层 物理层 2.套接字 socket 有两类,一种基于文件类型,一种基于网络类型 3.Tcp和udp协议 Tcp协议:面向连接,数据可靠,传输效率低,面向字节流 建立连接与断开连接的过程(三次握手,四次挥手) 建立连接 阅读全文
posted @ 2019-01-14 15:39 small_caier 阅读(272) 评论(0) 推荐(0) 编辑
摘要:一. C/S架构:客户端(client)/服务端(server)架构 B/S架构:浏览器(browser) / 服务端(server)架构 软件cs架构: 浏览器,qq,微信等等 硬件cs架构:打印机 二.网络通信的整个流程 三.初识socket 阅读全文
posted @ 2019-01-03 20:44 small_caier 阅读(120) 评论(0) 推荐(0) 编辑