随笔分类 - 并发编程
摘要:一、什么是Celery Celery 是一个 基于python开发的分布式异步消息任务队列,通过它可以实现任务的异步处理以及定时任务的处理,它的基本工作流程是: 先启动任务执行单元Worker,让它一直监听消息中间件中是否有任务 客户端可以发布异步任务和定时任务 通过Celery将上述任务添加到消息
阅读全文
摘要:一、Nginx概述 Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。它的特点是支持高并发;资源消耗少;可以做HTTP反向代理和负载均衡;支持异步网络i/o事件模型epoll。 (一)Nginx目录文件 下面列出几个比较重要
阅读全文
摘要:一、什么是生产者消费者模型 生产者消费者模型就是通过一个容器解决它们之间的强耦合问题,生产者与消费者之间依靠阻塞队列进行通讯,生产者与消费者之间不直接通讯,这样平衡了二者之间的处理能力,这里使用了进程、线程以及生成器实现了生产者消费者模型。 在进程中分别开启了生产者和消费者的进程,它们之间的通讯依赖
阅读全文
摘要:tornado的同步框架与其他web框架相同都是处理先来的请求,如果先来的请求阻塞,那么后面的请求也会处理不了。一直处于等待过程中。但是请求一旦得到响应,那么: 请求发送过来后,将需要的本站资源直接返回给客户端 请求发送过来后,本站没有需要的资源,从其它站点获取过来,再返回给客户端 一、Tornad
阅读全文
摘要:一、Web框架本质 web框架本质就是socket通信与HTTP协议的结合,socket保证服务端与客户端之间的请求与响应,HTTP协议保证了之间的标准,比如服务端接收到的客户端的请求报文;而客户端接收到的是服务端的响应报文。这些在socket通信中都应该提现出来。 响应本质 响应是服务器给客户端的
阅读全文
摘要:一、I/O模型前戏 说起I/O模型,那么就需要先说说什么是I/O操作了,I/O是Input/Ouput输入、输出的意思,有的时候需要网络和其他应用程序或者服务进行数据交换,这时候就要用到网络IO。但是我们知道服务端与客户端之间的数据是需要经过网卡这种硬件的,应用程序是无法操作硬件的,此时操作系统就做
阅读全文
摘要:一、线程概述 1、什么是线程? 线程依附进程而存在的,一个进程至少有一个线程,线程相当于微进程,多进程能实现并发,多线程也同样可以。线程是最小的执行单元(cpu执行的直接是线程)。 2、线程的特点 线程依附进程存在 同一个进程中的线程数据是互相共享的 一个进程可以开启多个线程 进程相当于容器,线程相
阅读全文
摘要:一、进程概述 (一)进程的基本概念 1、什么是进程? 在说进程前,需要了解一下操作系统cpu是如何来执行任务的。cpu在某一时刻只能执行一个任务,只是由于cpu执行任务的速度较快,来回切换不同的任务,才会给我们感觉像是同一时刻执行多个任务一样。而这里cpu执行的任务就是所说的进程,可以理解为cpu某
阅读全文