随笔分类 - 网络并发
摘要:IO模型简介 IO模型研究的主要是网络IO(linux系统) 基本关键字 同步(synchronous) 大部分情况下会采用缩写的形式 sync 异步(asynchronous) async 阻塞(blocking) 非阻塞(non-blocking) 五种IO blocking IO 阻塞IO n
阅读全文
摘要:协程概念 协程是是单线程下的并发,又称微线程,纤程。英文名Coroutine。 一句话说明什么是线程:协程是一种用户态的轻量级线程,即协程是由用户程序自己控制调度的 协程特点 1、必须在只有一个单线程里实现并发 2、修改共享数据不需加锁 3、用户程序里自己保存多个控制流的上下文栈 4、附加:一个协程
阅读全文
摘要:池的概念 池是用来保证计算机硬件安全的情况下最大限度的利用计算机 它降低了程序的运行效率但是保证了计算机硬件的安全 从而让你写的程序能够正常运行 线程池和进程池 池子使用 只需要将需要做的任务往池子中提交即可 自动会有人来服务你 任务的提交方式 同步:提交任务之后原地等待任务的返回结果 期间不做任何
阅读全文
摘要:什么是线程 进程:资源单位(起一个进程仅仅只是在内存空间中开辟一块独立的空间) 线程:执行单位(真正被cpu执行的其实是进程里面的线程,线程指的就是代码的执行过程,执行代码中所需要使用到的资源都找所在的进程索要) 每一个进程肯定自带一个线程 将操作系统比喻成一个大的工厂,那么进程就相当于工厂里面的车
阅读全文
摘要:黏包现象 1、数据管道的数据没有被完全取出来 接收方不及时接收缓冲区的包,造成多个包接收(客户端发送了一段数据,服务端只收了一小部分,服务端下次再收的时候还是从缓冲区拿上次遗留的数据,产生粘包) 服务端 from socket import * ip_port=('127.0.0.1',8080)
阅读全文
摘要:socket层 socket就是一个模块。我们通过调用模块中已经实现的方法建立两个进程之间的连接和通信。也有人将socket说成ip+port,因为ip是用来标识互联网中的一台主机的位置,而port是用来标识这台机器上的一个应用程序。所以我们只要确立了ip和port就能找到一个应用程序,并且使用so
阅读全文
摘要:进程理论 1、进程与程序的区别 程序:一堆代码(死的) 进程:正在运行的程序(活的) 2、单核情况下的进程调度 进程调度算法演变 1、FCFS 先来先开始 缺点:对短作业不友好 2、短作业优先调度算法 缺点:对长作业不友好 3、时间片轮转法+多级反馈队列 原理:先分配给新的多个进程相同的时间片;之后
阅读全文
摘要:操作系统的发展史 1、穿孔卡片时代(手工操作) 1946年第一台计算机诞生--20世纪50年代中期,计算机工作还在采用手工操作方式。此时还没有操作系统的概念。程序员将对应于程序和数据的已穿孔的纸带(或卡片)装入输入机,然后启动输入机把程序和数据输入计算机内存,接着通过控制台开关启动程序针对数据运行;
阅读全文
摘要:网络编程 网络编程其实研究的就是程序之间的数据通信;要想实现网络数据交互的前提是必须要有物理连接层,除了有物理连接层介质之外还应该有一些能够保证数据彼此无障碍交互的东西(标准)即OSI协议。 OSI协议 OSI七层协议即为:应用层、表示层、会话层、传输层、网络层、数据链路层、物理连接层;有时候应用层
阅读全文
摘要:c/s架构 1、c/s简介 c:client 客户端 s:server 服务端 eg:各种app其实就是各大软件的客户端 2、服务端需具备的三大特征 1、24小时不间断提供服务(24小时监听) 2、固定的地址(ip地址) 3、能够服务多个用户(高并发) b/s架构 1、b/s简介 b:browser
阅读全文