摘要: 一、数据类型 整数类型 默认有符号的 设置为无符号 1.create table t2(age tinyint unsigned); 2.建表后用alter修改 注意: 对于整数类型而言长度不是数据所占的字节数 是显示数据时的宽度(字符数)默认情况下 存储的数值的十进制位数 小于所设置的显示宽度时 阅读全文
posted @ 2018-11-21 15:48 伍萬磊 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 一、什么是数据库? 存放数据的仓库 为什么会有数据库?因为我们所学的数据管理可以用文件来存储 但存在以下缺陷: 所以产生了数据库。 conclusion: 数据库服务器-:运行数据库管理软件 数据库管理软件:管理-数据库 数据库:即文件夹,用来组织文件/表 表:即文件,用来存放多行内容/多条记录 二 阅读全文
posted @ 2018-11-20 19:50 伍萬磊 阅读(342) 评论(0) 推荐(1) 编辑
摘要: 1、多道技术 1.空间复用 同一时间在内存中存放多个程序 内存相互隔离 2.时间复用 CPU在遇到IO时切换到另一个程序,可以实现并发,切换+保存状态 2、进程理论 进程是一个资源单位 包含了该程序运行所需的所有资源 为什么使用它? 为了提高程序的执行效率 当遇到IO阻塞时 或需要同时执行多个任务时 阅读全文
posted @ 2018-11-20 14:55 伍萬磊 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 一、阻塞IO(blocking IO) from concurrent.futures import ThreadPoolExecutor import socket server = socket.socket() # 重用端口 server.setsockopt(socket.SOL_SOCKE 阅读全文
posted @ 2018-11-19 21:27 伍萬磊 阅读(386) 评论(0) 推荐(0) 编辑
摘要: 一、协程的介绍 协程:是单线程下的并发,一句话说明什么是线程:协程是一种用户态的轻量级线程,即协程是由用户程序自己控制调度的。 对比操作系统控制线程的切换,用户在单线程内控制协程的切换 优点: 缺点: 总结协程特点: 1、必须在只有一个单线程里实现并发 2、修改共享数据不需加锁 3、用户程序里自己保 阅读全文
posted @ 2018-11-18 14:00 伍萬磊 阅读(419) 评论(0) 推荐(0) 编辑
摘要: 一、什么是线程 在传统操作系统中,每个进程有一个地址空间,而且默认就有一个控制线程 线程顾名思义,就是一条流水线工作的过程,一条流水线必须属于一个车间,一个车间的工作过程是一个进程 车间负责把资源整合到一起,是一个资源单位,而一个车间内至少有一个流水线 流水线的工作需要电源,电源就相当于cpu 所以 阅读全文
posted @ 2018-11-16 23:45 伍萬磊 阅读(284) 评论(2) 推荐(0) 编辑
摘要: 一、为什么需要操作系统 我们的电脑由非常非常多的设备组成,如键盘,鼠标,硬盘,cpu等等,是一个非常复杂的系统! 因此带来两个问题 1.如何能够使得这些设备能够完成我们指定的任务,这需要对各个硬件都有一定的了解 2.如何管理这么多设备 让它们能够协调工作;是一个非常有挑战性的工作 总结:我们无法掌握 阅读全文
posted @ 2018-11-11 09:44 伍萬磊 阅读(537) 评论(0) 推荐(0) 编辑
摘要: 一、黏包现象 须知:只有TCP有粘包现象,UDP永远不会粘包! 同时执行多条命令之后,得到的结果很可能只有一部分,在执行其他命令的时候又接收到之前执行的另外一部分结果,这种现象就是黏包。 基于udp协议实现的黏包: server端: client端 二、黏包成因 主要还是因为接收方不知道消息之间的界 阅读全文
posted @ 2018-11-06 18:57 伍萬磊 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 一、软件开发的架构 涉及到两个程序之间通讯的应用大致可以分为两种: 第一种是应用类:qq、微信、网盘、优酷这一类是属于需要安装的桌面应用 第二种是web类:比如百度、知乎、博客园等使用浏览器访问就可以直接使用的应用 这些应用的本质其实都是两个程序之间的通讯。而这两个分类又对应了两个软件开发的架构 C 阅读全文
posted @ 2018-11-04 17:18 伍萬磊 阅读(3123) 评论(0) 推荐(0) 编辑
摘要: 一、什么是socket? 中文名叫套接字,是对底层的 TCP IP UDP 等网络协议进行封装,使得上层的应用程序开发者,不用直接接触这对复杂,丑陋的协议。 在程序员的言论,他就是一个封装好的模块,要完成网络通讯,只需要使用系统提供的socket模块就行,我们通过调用模块中已经实现的方法建立两个进程 阅读全文
posted @ 2018-11-04 17:17 伍萬磊 阅读(504) 评论(0) 推荐(0) 编辑