07 2017 档案

摘要:存储引擎 什么是存储引擎? mysql中建的库是文件夹,建的表是文件。文件有不同的类型,数据库中的表也有不同的类型,表的类型不同,会对应mysql不同的存取机制,表类型又称为存储引擎。 存储引擎说白了就是如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。因为在关系数据库中数 阅读全文
posted @ 2017-07-28 19:45 李大根er 阅读(229) 评论(0) 推荐(0)
摘要:外键约束 如果表A的主关键字是表B中的字段,则该字段称为表B的外键,表A称为主表,表B称为从表。 外键是用来实现参照完整性的,不同的外键约束方式将可以使两张表紧密的结合起来,特别是修改或者删除的级联操作。外键主要用来保证数据的完整性和一致性。 两个表必须是InnoDB表,MyISAM表暂时不支持外键 阅读全文
posted @ 2017-07-28 19:44 李大根er 阅读(422) 评论(0) 推荐(0)
摘要:表记录的操作 增 1、插入一条记录 语法:insert [into] tab_name (field1,filed2,.......) values (value1,value2,.......); 2、插入多条记录 语法: insert [into] tab_name (field1,filed2 阅读全文
posted @ 2017-07-28 19:42 李大根er 阅读(224) 评论(0) 推荐(0)
摘要:数据库介绍 数据库(database,DB)是指长期存储在计算机内的,有组织,可共享的数据的集合。数据库中的数据按一定的数学模型组织、描述和存储,具有较小的冗余,较高的数据独立性和易扩展性,并可为各种用户共享。 关系数据库: MySql ,Oracle, sql server , db2 ,sqli 阅读全文
posted @ 2017-07-28 19:41 李大根er 阅读(276) 评论(0) 推荐(0)
摘要:IO模型分类 五种IO Model blocking IO 阻塞IO nonblocking IO 非阻塞IO IO multiplexing IO多路复用 signal driven IO 信号驱动IO asynchronous IO 异步IO signal driven IO(信号驱动IO)在实 阅读全文
posted @ 2017-07-28 19:38 李大根er 阅读(377) 评论(0) 推荐(0)
摘要:进程间通信 进程彼此之间互相隔离,要实现进程间通信(IPC),multiprocessing模块支持两种形式:队列和管道,这两种方式都是使用消息传递的。 进程队列queue 不同于线程queue,进程queue的生成是用multiprocessing模块生成的。 在生成子进程的时候,会将代码拷贝到子 阅读全文
posted @ 2017-07-28 19:37 李大根er 阅读(7126) 评论(0) 推荐(1)
摘要:Event对象 用于线程间通信,即程序中的其一个线程需要通过判断某个线程的状态来确定自己下一步的操作,就用到了event对象 event对象默认为假(Flase),即遇到event对象在等待就阻塞线程的执行。 示例1:主线程和子线程间通信,代码模拟连接服务器 示例2:子线程与子线程间通信 示例3: 阅读全文
posted @ 2017-07-28 19:27 李大根er 阅读(9255) 评论(0) 推荐(0)
摘要:GIL(全局解释器锁) GIL并不是Python的特性,它是在实现Python解析器(CPython)时所引入的一个概念,是为了实现不同线程对共享资源访问的互斥,才引入了GIL 在Cpython解释器中,同一个进程下开启的多线程,同一时刻只能有一个线程执行,无法利用多核优势 python对于计算密集 阅读全文
posted @ 2017-07-26 08:51 李大根er 阅读(18996) 评论(0) 推荐(5)
摘要:概念 进程:进程就是一个程序在一个数据集上的一次动态执行过程 程序:代码 数据集:程序执行过程中需要的资源 进程控制块:完成状态保存的单元 线程:线程是寄托在进程之上,为了提高系统的并发性 线程是进程的实体 进程是一个资源管理单元、线程是最小的执行单元 线程和进程的关系 (1)一个线程只能属于一个进 阅读全文
posted @ 2017-07-26 08:50 李大根er 阅读(361) 评论(0) 推荐(0)
摘要:基于UDP的socket 面向无连接的不可靠数据传输,可以没有服务器端,只不过没有服务器端,发送的数据会被直接丢弃,并不能到达服务器端 UDP服务端+客户端 由于UDP是面向无连接的(实际上有链接,不然通过什么去传数据去取数据),可以使用多个客户端连接服务端,但这并不是并发访问。 注意: 1. 发消 阅读全文
posted @ 2017-07-17 16:56 李大根er 阅读(1574) 评论(0) 推荐(0)
摘要:异常处理 错误 程序里的错误一般分为两种: 1、语法错误,这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正 2、逻辑错误,人为造成的错误,如数据类型错误、调用方法错误等,这些解释器是不会进行检测的,只有在执行的过程中才能抛出的错误 异常 异常是python解释器在运行程序的过 阅读全文
posted @ 2017-07-17 16:29 李大根er 阅读(2030) 评论(0) 推荐(0)
摘要:isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls 的对象,如果是返回True issubclass(sub, super)检查sub类是否是 super 类的派生类,如果是返回True 反射 反射 阅读全文
posted @ 2017-07-17 16:26 李大根er 阅读(174) 评论(0) 推荐(0)
摘要:多态与多态性 多态 多态并不是一个新的知识 多态是指一类事物有多种形态,在类里就是指一个抽象类有多个子类,因而多态的概念依赖于继承 举个栗子:动物有多种形态,人、狗、猫、猪等,python的序列数据类型有字符串、列表、元组,文件的类型分为普通文件和可执行文件,人类又有多种形态,男女老少。。等等例子 阅读全文
posted @ 2017-07-17 16:25 李大根er 阅读(277) 评论(0) 推荐(0)
摘要:继承实现原理 python中的类可以同时继承多个父类,继承的顺序有两种:深度优先和广度优先。 一般来讲,经典类在多继承的情况下会按照深度优先的方式查找,新式类会按照广度优先的方式查找 示例解析: 没有共同头部父类的类型 在这种模型下,新式类和经典类的继承顺序都一样。 调用obj.test(),首先找 阅读全文
posted @ 2017-07-17 16:24 李大根er 阅读(1108) 评论(0) 推荐(0)
摘要:继承+组合应用示例 测试验证: 对象的序列化和反序列化 py对象的序列化是基于pickle模块完成的,pickle模块支持所有的py数据的序列化,json模块只能够支持各种编程语言通用的数据类型 对象基于文件反序列化,需要生成该对象的类存在于内存中,并且没有被隔离 序列化示例: 创建类文件 创建序列 阅读全文
posted @ 2017-07-17 08:45 李大根er 阅读(392) 评论(0) 推荐(0)
摘要:类的继承与派生 经典类和新式类 在python3中,所有类默认继承object,但凡是继承了object类的子类,以及该子类的子类,都称为新式类(在python3中所有的类都是新式类) 没有继承object类的子类成为经典类(在python2中,没有继承object的类,以及它的子类,都是经典类) 阅读全文
posted @ 2017-07-04 17:02 李大根er 阅读(1701) 评论(2) 推荐(1)
摘要:面向对象变成介绍 面向过程编程 核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西。主要应用在一旦完成很少修改的地方,如linux内核、git、apache服务器等 优点:极大的降低了程序的设计复杂度 缺点:可扩展性差,改动一个地 阅读全文
posted @ 2017-07-04 16:47 李大根er 阅读(365) 评论(0) 推荐(0)