自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 python之ORM

""" 生成建表语句 在创建类的时候 """ import pymysql import logging host = "127.0.0.1" port = 3306 user = "root" password = "123321" database = "youku" auto_commit = True # 是否输出调试信息 debug = False ...

2019-03-26 19:59:14 127

原创 mysql索引

什么是索引 在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构; 也称之为key 索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。 为什么需要索引 思考:一个项目正常运行后,对数据库的操作中,哪些操作是最频繁的? 对数据库的写操作(增加 删除 修改)频繁吗? 对数据库的读操作(查询)频繁吗? 相比较下,对数据的读操作...

2019-03-21 18:59:49 72

原创 mysql

一.视图 什么是视图 视图是有一张表或多张表的查询结果构成的一张虚拟表 为什么使用视图 当我们在使用多表查询时 我们的sql语句可能会非常的复杂,如果每次都编写一遍sql'的话无疑是一件麻烦的事情,这时候就可以使用视图来避免多次编写sql的问题; 简答的说可以帮我们节省sql的编写, 视图的另一个作用是,可以不同的视图来展示开放不同数据的访问 例如,同一张工资表,老板可以查看全...

2019-03-19 14:17:09 88

原创 数据增删改查

1.数据增删改 2.单表查询 无条件查询 where 条件 group by having order by limit 3.正则表达式 4.多表查询 笛卡尔积 内连接 外链接 5.子查询 # 一.数据的增删改 为什么不说查 因为查询语句 有很多细节 所以先从简单的说起 添加数据: 1.insert into table_name[column,[colu...

2019-03-18 11:57:45 347

原创 分表

分表: 为什么要分表? 一个表中 要存储个人信息又要存储部门信息 会导致大量的数据冗余 所有数据存放在同一个表中 将导致以下几个问题 1.浪费空间 不致命 2.结构混乱 3.修改数据时 如果有一百个员工 那就要该一百次 扩展性极差 通过分表来解决 分表又造成新的问题 如何再将数据对应起来? 为什么需要对应起来是因为两张表的数据具备这某种关系 到底是什么关系呢...

2019-03-15 19:07:41 347

原创 mysql 数据库存储引擎数据类型

引擎 前提: 引擎是建表是规定, 提供给表使用的, 不是数据库 ​ mysql> show engines; # 展示所有引擎 # 重点: # innodb(默认): 支持事务, 行级锁, 外键 # myisam: 查询效率要优于innodb, 当不需要支持事务, 行级锁, 外键, 可以通过设置myisam来优化数据库 ​ mysql> use db1; ​ mysql&g...

2019-03-14 14:58:17 83

原创 mysql数据库基础

一.认识数据库 1.什么是数据库? 数据库就是存储数据的仓库 存储数据的方式1 """ 第一天就学习了一种存储数据的方式 就是变量 然而变量的存储介质是内存,内存中的数据在断电后就消失了,无法永久保存 很明显这是不行的 ,比如用户刚刚注册成功的用户名密码必须要永久。 """ 存储数据的方式2 """ 使用文件来存储数据就可以实现永久存储,但是文件是存储于硬盘上的,首先要考虑的就是效...

2019-03-13 14:50:41 111

原创 IO模型

IO模型 IO指的是输入输出,输入输出都是一个耗时的操作,程序中一旦遇到了输入输出就会被阻塞,导致程序效率降低,IO模型也就是输入输出模型,是为了提高IO效率而出现。 IO本质上也分为不同类型,其中最典型的就是网络IO,由于网络速度比运算速度慢很多,所以大量的时间都是在等待网络IO,这也是我们要关注的重点! copyData与waitData 网络通讯时,应用程序的数据是交由操作系统来进行...

2019-03-12 14:57:20 177

原创 协程

引子 上一节中我们知道GIL锁将导致CPython无法利用多核CPU的优势,只能使用单核并发的执行。很明显效率不高,那有什么办法能够提高效率呢? 效率要高只有一个方法就是让这个当前线程尽可能多的占用CPU时间,如何做到? 任务类型可以分为两种 IO密集型 和 计算密集型 对于计算密集型任务而言 ,无需任何操作就能一直占用CPU直到超时为止,没有任何办法能够提高计算密集任务的效率,除非把GI...

2019-03-11 18:09:01 79

原创 GIL,同步异步,阻塞非阻塞

本章内容: 1.什么是GIL 2.GIL带来的问题 3.为什么需要GIL 4.关于GIL的性能讨论 5.自定义的线程互斥锁与GIL的区别 6.线程池与进程池 7.同步异步,阻塞非阻塞 一.什么是GIL 官方解释: ''' In CPython, the global interpreter lock, or GIL, is a mutex that prevents mu...

2019-03-08 12:17:28 196

原创 多线程

多线程 什么是线程: 线程指的是一条流水线的工作过程的总称 线程是CPU的基本执行单位 对比进程而言,进程仅仅是一个资源单位其包含了程序运行所需的资源,就像一个车间 而单有资源是无法生产出产品的,必须有具体的生产产品的逻辑代码 线程就相当于车间中的一条流水线,而你的代码就是流水线上的一道道工序 特点: 1.每个进程都会有一个默认的线程 2.每个进程可以存在多个线程 3.同一进程...

2019-03-07 12:20:11 90

原创 进程之joinableQueue

joinableQueue 可翻译:为可join的队列 该队列相比普通的Queue的区别在于该对列额外增加的了join函数 join函数的作用: 该函数为阻塞函数,会阻塞直到等待队列中所有数据都被处理完毕。 q = JoinableQueue() q.put(1) q.get() q.join() #阻塞 等待队列中所有数据都被处理完毕 print("over") 执行以上函...

2019-03-07 12:18:42 2152

原创 multiprocessing模块

一 multiprocessing模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu_count()查看),在python中大部分情况需要使用多进程。Python提供了multiprocessing。 multiprocessing模块用来开启子进程,并在子进程中执行我们定制的任务(比如函数),该模块与多线程模块threading的...

2019-03-07 08:37:47 627

原创 并发编程

进程篇 本章目录: 什么是进程 多进程的实现原理 多道技术 进程与程序 进程PID与PPID 并发与并行,阻塞与非阻塞 python实现多进程 孤儿进程与僵尸进程 什么是并发编程 并发指的是多个任务同时被执行,并发编程指的是编写支持多任务并发的应用程序在。 之前的TCP通讯中,服务器在建立连接后需要一个循环来与客户端循环的收发数据,但服务器并不知道客户端什么时候会发来数据,导...

2019-03-05 09:11:12 180

原创 UDP协议

1.UDP协议 UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection 参考模型中一种无连接的传输层协议,提供简单不可靠信息传送服务 是一种无连接的传输层协议,它主要用于不要求分组顺序到达的传输中,分组传输顺序的检查与排序由应用层完成。且不对传送数据包进行可靠性保证,适合于一次传输少量数据。...

2019-03-04 14:39:31 244

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除