摘要:HTTPS通信过程 HTTPS协议 = HTTP协议 + SSL/TLS协议,在HTTPS数据传输的过程中,需要用SSL/TLS对数据进行加密和解密,需要用HTTP对加密后的数据进行传输,由此可以看出HTTPS是由HTTP和SSL/TLS一起合作完成的。 SSL的全称是Secure Sockets
阅读全文
摘要:一、协程存在的原因 因为想要在单线程内实现并发的效果(因为CPython有GIL锁,限制了在同一个时间点,只能执行一个线程,所以想要在执行一个线程的期间,充分的利用CPU的性能,因此想在单线程内实现并发的效果) 并发 :切换 + 保存状态 (yield 只能单纯的实现状态的保存和切换函数) yiel
阅读全文
摘要:一、同一个进程内的队列(多线程) import queue queue.Queue() 先进先出 queue.LifoQueue() 后进先出 queue.PriorityQueue() 优先级队列 优先级队列 q = queue.PriorityQueue() q.put((pri , data)
阅读全文
摘要:一、线程的概念。 线程被称为轻量级的进程。GIL:全局解释锁(只有CPython解释器才有) 对于线程来说因为有了GIL所以没有真正的并行。 计算机的执行单位以线程为单位。计算机的最小可执行单位为线程。 进程是资源分配的基本单位。线程是可执行的基本单位,是可被调度的基本单位。 线程不可以自己独立拥有
阅读全文
摘要:一、生产者消费者 主要是为解耦(借助队列来实现生产者消费者模型) import queue # 不能进行多进程之间的数据传输 (1)from multiprocessing import Queue 借助Queue解决生产者消费者模型,队列是安全的。 q = Queue(num) num :为队列的
阅读全文
摘要:IPC 进程间通信(inter-Process Communicate) 锁机制(Lock) l = Lock() 开启一个锁机制(实例化) 一把锁配一个钥匙 l.acquire() 获得钥匙,锁门 l.release() 还钥匙,开门 信号量机制(Semaphore) sem = Semaphor
阅读全文
摘要:1、编程语言的发展: 机器语言:二进制 汇编语言:指令,命令形式的 高级语言:面向过程(C)面向对象(python,c++,java) 2、操作系统的目标: 为了用户使用更方便。 作用: 有效性:提高系统资源利用率。 方便性:更加方便用户的使用。 高内聚:内聚指模块内部各部分之间的紧密程度。 低耦合
阅读全文
摘要:# 切换目录(客户端代码) import socket import os sk = socket.socket() sk.connect(("127.0.0.1",8090)) abs_path = input('请输入一个根目录:') sk.send(abs_path.encode('utf-8')) current_dir = sk.recv(1024).decode('utf-8')...
阅读全文
摘要:# 客户端 import socket import hashlib import json import os import struct sk = socket.socket() # 实例化 sk.connect(('127.0.0.1', 8090)) # 请求连接 def login(): dic = {'status': False, 'username': None...
阅读全文
摘要:struck.pack(type,num) type : 是num的类型 num : int类型 r = struck.pack 把一个num内容打包成一个c规定的字节bytes的个数 struck.unpack(type,r) 功能 :解包,把r解成原数字,结果是一个元祖,原数字在元祖的下标位为0
阅读全文
摘要:# 文件的上传下载客户端普通版(会有粘包的情况出现) import os import json import socket sk = socket.socket() sk.connect(('127.0.0.1',8080)) menu = {'1':'upload','2':'download'} for k,v in menu.items(): print(k,v) num =...
阅读全文
摘要:1、执行命令: 在py代码中去如何调用操作系统的命令 新模块:subprocess r = subprocess.Popen('ls',shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE) subprocess.Popen(cmd,she
阅读全文
摘要:1、交换机与路由器的区别 交换机的主要功能:是组织局域网,经过交换机内部处理解析信息之后,将信息以点对点、点对多的形式发送给固定端。 路由器的主要功能:是进行跨网段数据传输,路由选择最佳路径。 ex:如果你需要将多个电脑连接到一根网线上,用交换机即可。 如果你只有一个外网IP,但是你有好多台电脑需要
阅读全文
摘要:1、架构 1、C/S架构:client客户端和server服务器端 优势:能充分发挥pc机的性能 2、B/S架构:browser浏览器和server服务器 隶属于C/S架构 B/S架构 统一了应用的接口 2、通信的事 a、同一台电脑上两个py程序通信:打开一个文件 b、两个电脑如何通信:连一个网线
阅读全文