随笔分类 - 网络编程socket
多表查询
摘要:一、介绍 首先先准备表 员工表和部门表 查看表: 二、多表连接查询 1.交叉连接:不适用任何匹配条件。生成笛卡尔积、 select * from employee1 ,department; 2.内连接:找两张表共有的部分,相当于利用条件从笛卡尔积结果中筛选出了正确的结果。(只连接匹配的行) 注意:
阅读全文
单表查询
摘要:先创建表 1 1.注意: 2 select * from t1 where 条件 group by 分组字段 3 1.分组只能查询分组字段,要想查看其余的利用聚合函数 4 2.聚合函数的分类:count,min,max,avg,group_concat,sum等。 5 3.模糊匹配:用like关键字
阅读全文
并发编程之socketserver模块
摘要:一、socketserver模块介绍 基于tcp套接字,关键的就是两个循环,一个是链接循环,一个是通信循环 socketserver模块中分两大类:srever类(解决链接问题)和request类(解决通信问题) 以下述代码为例,分析socketserver源码: 查找属性的顺序:Threading
阅读全文
python并发编程之IO模型,
摘要:了解新知识之前需要知道的一些知识 同步(synchronous):一个进程在执行某个任务时,另外一个进程必须等待其执行完毕,才能继续执行 异步(asynchronous): 阻塞(blocking): 非阻塞(non-blocking): #非阻塞和阻塞的概念相对应,指在不能立刻得到结果之前也会立刻
阅读全文
python并发编程之IO模型
摘要:了解新知识之前需要知道的一些知识 同步(synchronous):一个进程在执行某个任务时,另外一个进程必须等待其执行完毕,才能继续执行 异步(asynchronous): 阻塞(blocking): 非阻塞(non-blocking): #非阻塞和阻塞的概念相对应,指在不能立刻得到结果之前也会立刻
阅读全文
python并发编程之进程池,线程池,协程
摘要:一、Python标准模块--concurrent.futures(并发未来) 那么什么是线程池呢?我们来了解一下 二、线程池 1 # 1.同步执行 2 from concurrent.futures import ProcessPoolExecutor,ThreadPoolExecutor 3 im
阅读全文
python并发编程之多线程1
摘要:一多线程的概念介绍 threading模块介绍 threading模块和multiprocessing模块在使用层面,有很大的相似性。 二、开启多线程的两种方式 1 1.创建线程的开销比创建进程的开销小,因而创建线程的速度快 2 from multiprocessing import Process
阅读全文
初始线程(相关理论)
摘要:一、什么是线程 线程:顾名思义,就是一条流水线工作的过程,一条流水线必须属于一个车间,一个车间的工作过程是一个进程 所以,进程只是用来把资源集中到一起(进程只是一个资源单位,或者说资源集合),而线程才是cpu上的执行单位。 多线程(即多个控制线程)的概念是,在一个进程中存在多个控制线程,多个控制线程
阅读全文
python并发编程之多进程2-------------数据共享及进程池和回调函数
摘要:一、数据共享 1.进程间的通信应该尽量避免共享数据的方式 2.进程间的数据是独立的,可以借助队列或管道实现通信,二者都是基于消息传递的。 虽然进程间数据独立,但可以用过Manager实现数据共享,事实上Manager的功能远不止于此。 3.(IPC)进程之间的通信有两种实现方式:管道和队列 1 fr
阅读全文
python并发编程之多进程1-----------互斥锁与进程间的通信
摘要:一、互斥锁 进程之间数据隔离,但是共享一套文件系统,因而可以通过文件来实现进程直接的通信,但问题是必须自己加锁处理。 注意:加锁的目的是为了保证多个进程修改同一块数据时,同一时间只能有一个修改,即串行的修改,没错,速度是慢了,牺牲了速度而保证了数据安全。 1.上厕所的小例子:你上厕所的时候肯定得锁门
阅读全文
Cpython支持的进程与线程
摘要:一、multiprocessing模块介绍 python中的多线程无法利用CPU资源,在python中大部分情况使用多进程。python中提供了非常好的多进程包multiprocessing。 multiprocessing模块用来开启子进程,并在子进程中执行功能(函数),该模块与多线程模块thre
阅读全文
进程理论基础
摘要:背景知识 顾名思义,进程即一个软件正在进行的过程。进程是对正在运行程序的一个抽象。 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老的也是最重要的抽象概念之一。操作系统的其他所有内容都是围绕进程的概念展开的。所以想要真正了解进程,必须先了解操作系统。详见博客点击进入。 须知
阅读全文
网络编程-之------粘包现象
摘要:一、什么是粘包 须知:只有TCP有粘包现象,UDP永远不会粘包 粘包不一定会发生 如果发生了:1.可能是在客户端已经粘了 2.客户端没有粘,可能是在服务端粘了 首先需要掌握一个socket收发消息的原理 应用程序所看到的数据是一个整体,或说是一个流(stream),一条消息有多少字节对应用程序是不可
阅读全文
python --------------网络(socket)编程
摘要:一、网络协议 客户端/服务器架构 1.硬件C/S架构(打印机) 2.软件C/S架构(互联网中处处是C/S架构):B/S架构也是C/S架构的一种,B/S是浏览器/服务器 C/S架构与socket的关系:我们用socket就是为了完成C/S架构的开发 osi七层 引子: 须知一个完整的计算机系统是由硬件
阅读全文