摘要:
1.设计模式概述 1.设计模式代表了一种最佳的实践,是被开发人员长期总结,用来解决某一类问题的思路方法,这些方法保证了代码的效率也易于理解 2.设计模式类型:根据23种设计模式可以分为三大类 创建型模式(Creational Patterns): 简单工厂模式,工厂模式,抽象工厂模式,原型模式,建造 阅读全文
摘要:
1.WSGI协议概述(Python Web Server Gateway Interface) 1.WSGI允许开发者将选择web框架和web服务器分开,可以混合匹配web服务器和web框架,选择一个适合的配对 2.WSGI协议在不修改服务器和架构代码情况下确保了可以在多个架构下运行web服务器 3 阅读全文
摘要:
1.服务器概述 1.硬件服务器(IBM,HP): 能够给用户提供服务的主机,集群 2.软件服务器(HTTPserver Apache Tomcat IIS Nginx) 软件服务器是一个基于网络服务器,能够接收用户请求并给出响应的程序或者架构 软件服务器是一个能在后端提供网络功能逻辑处理数据处理的程 阅读全文
摘要:
1.新浪图集爬虫(闭包+进程池+线程池+多协程) import os import re import urllib.request import time from multiprocessing import Pool # 进程池 from concurrent.futures import T 阅读全文
摘要:
1.进程 1.进程可以使用计算机多核 2.进程是资源分配的单位 3.进程的创建要比线程消耗更多的资源效率很低 4.进程空间独立,数据安全性跟好操作有专门的进程间通信方式 5.一个进程可以包含多个线程,线程共享进程资源 6.进程有自己特有资源 7.多进程根据cpu核数不一样可能是并行的 2.线程 1. 阅读全文
摘要:
1.IO概述 input 和 output: 是在内存中存在的数据交换操作 内存和磁盘交换: 文件读写, 打印 内存和网络交换: recv send recvfrom, sendto IO密集型程序: 程序中执行大量的IO操作,而较少的需要CPU运行,消耗CPU资源少,运行周期往往比较长 CPU密集 阅读全文
摘要:
1.协程概述 1.协程是python个中另外一种实现多任务的方式,只不过比线程更小占用更小执行单元,协程也称作微线程,在本质只有一个线程在运行 2.在一个线程中的某个函数,可以在任何地方保存当前函数的一些临时变量等信息,然后切换到另外一个函数中执行 3.协程是通过生成器函数实现,函数间切换的次数以及 阅读全文
摘要:
1.同步和互斥 1.目的: 对共有资源的操作会产生争夺,同步互斥是一种解决争夺的方案 2.临界资源: 多个进程或线程都可以操作的资源 3.临界区: 操作临界资源的代码段 4.同步: 同步是一种合作关系,为完成某个任务多进程或多线程之间形成一种协调,按照条件依次执行传递告知资源情况,这种协调可能是因为 阅读全文
摘要:
1.线程间的通信方式 1.共享全局变量 2.线程队列(queue) 3.信号量(Semaphore) 2.共享全局变量进行通信 from threading import Thread import time g_nums = [11,22,33] def work1(nums): nums.app 阅读全文
摘要:
1.为什么用线程池 1.启动一个新线程的消耗较高且涉及与操作系统的交互,尤其是程序中需要创建大量生存期很短暂的线程,而使用线程池可以很好地提升性能 2.线程池则是创建指定线程数量等待执行事件,当该事件执行结束后该线程并不会死亡,而是回到线程池中变成空闲状态等待执行下一个事件 3.当系统中包含有大量的 阅读全文