博客园 - 永亮
uuid:24b78886-0ed1-41c2-8670-e3f31dcf42c4;id=37613
2021-04-09T08:12:24Z
永亮
https://www.cnblogs.com/caiyongliang/
feed.cnblogs.com
https://www.cnblogs.com/caiyongliang/p/14035577.html
Python并发编程 —— 在Python程序中的进程操作 - 永亮
运行中的程序就是一个进程。所有的进程都是通过它的父进程来创建的。因此,运行起来的python程序也是一个进程,那么我们也可以在程序中再创建进程。多个进程可以实现并发效果,也就是说,当我们的程序中存在多个进程的时候,在某些时候,就会让程序的执行速度变快。我们可以借助python中强大的模块。来实现创建
2020-11-25T05:38:00Z
2020-11-25T05:38:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】运行中的程序就是一个进程。所有的进程都是通过它的父进程来创建的。因此,运行起来的python程序也是一个进程,那么我们也可以在程序中再创建进程。多个进程可以实现并发效果,也就是说,当我们的程序中存在多个进程的时候,在某些时候,就会让程序的执行速度变快。我们可以借助python中强大的模块。来实现创建 <a href="https://www.cnblogs.com/caiyongliang/p/14035577.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/14029854.html
Python并发编程 —— 进程 - 永亮
1、进程概念 顾名思义,进程即正在执行的一个过程。进程是对正在运行程序的一个抽象。进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一。操作系统的其他所有内容都是围绕进程的概念展开的。 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动
2020-11-24T05:44:00Z
2020-11-24T05:44:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、进程概念 顾名思义,进程即正在执行的一个过程。进程是对正在运行程序的一个抽象。进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一。操作系统的其他所有内容都是围绕进程的概念展开的。 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动 <a href="https://www.cnblogs.com/caiyongliang/p/14029854.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/14006901.html
Python并发编程 —— 操作系统基础 - 永亮
1、手工操作 —— 穿孔卡片 1946年第一台计算机诞生--20世纪50年代中期,计算机工作还在采用手工操作方式。此时还没有操作系统的概念。 特点: (1)用户独占全机。不会出现因资源已被其他用户占用而等待的现象,但资源的利用率低。 (2)CPU 等待手工操作。CPU的利用不充分。 2、批处理 ——
2020-11-19T09:35:00Z
2020-11-19T09:35:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、手工操作 —— 穿孔卡片 1946年第一台计算机诞生--20世纪50年代中期,计算机工作还在采用手工操作方式。此时还没有操作系统的概念。 特点: (1)用户独占全机。不会出现因资源已被其他用户占用而等待的现象,但资源的利用率低。 (2)CPU 等待手工操作。CPU的利用不充分。 2、批处理 —— <a href="https://www.cnblogs.com/caiyongliang/p/14006901.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/14000572.html
Python网络编程 —— 并发的 SocketServer - 永亮
1、并发的 socketserver 实现程序的并发执行 Server import time from socketserver import BaseRequestHandler,ThreadingTCPServer # BaseRequestHandler 基础请求操作符 # Threadin
2020-11-18T08:22:00Z
2020-11-18T08:22:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、并发的 socketserver 实现程序的并发执行 Server import time from socketserver import BaseRequestHandler,ThreadingTCPServer # BaseRequestHandler 基础请求操作符 # Threadin <a href="https://www.cnblogs.com/caiyongliang/p/14000572.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13993750.html
Python网络编程 —— 验证客户端的合法性 - 永亮
1、验证客户端的合法性 登录:只要有个性化设计的时候就需要登录 登录和合法性验证二选一,如果做登录的功能就不需要做合法性验证 server import os import socket import hashlib SECRET_KEY = b'yongliang' # 设置秘钥 def chec
2020-11-17T05:36:00Z
2020-11-17T05:36:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、验证客户端的合法性 登录:只要有个性化设计的时候就需要登录 登录和合法性验证二选一,如果做登录的功能就不需要做合法性验证 server import os import socket import hashlib SECRET_KEY = b'yongliang' # 设置秘钥 def chec <a href="https://www.cnblogs.com/caiyongliang/p/13993750.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13984739.html
Python网络编程 —— 粘包问题及解决方法 - 永亮
1、粘包 粘包现象:当多条消息发送时接收变成了一条或者出现接收不准确的情况 (1)、会发生粘包的两种情况 <1> 粘包现象会发生在发送端:发送端需要等缓冲区满才发送出去,造成粘包 两条消息间隔时间短,长度短,就会把两条消息在发送之前拼接在一起 节省每一次发送消息回复的网络资源 <2> 粘包现象会发生
2020-11-16T05:54:00Z
2020-11-16T05:54:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、粘包 粘包现象:当多条消息发送时接收变成了一条或者出现接收不准确的情况 (1)、会发生粘包的两种情况 <1> 粘包现象会发生在发送端:发送端需要等缓冲区满才发送出去,造成粘包 两条消息间隔时间短,长度短,就会把两条消息在发送之前拼接在一起 节省每一次发送消息回复的网络资源 <2> 粘包现象会发生 <a href="https://www.cnblogs.com/caiyongliang/p/13984739.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13968874.html
Python网络编程 —— socket(套接字)及通信 - 永亮
1、socket概念 Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。 其实可以认为
2020-11-13T05:26:00Z
2020-11-13T05:26:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、socket概念 Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。 其实可以认为 <a href="https://www.cnblogs.com/caiyongliang/p/13968874.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13963415.html
Python网络编程 —— 网络基础知识 - 永亮
1、网络的基础概念 (1)、网络架构 C / S 架构: client 客户端 / server 服务端 诸如:qq 微信 浏览器 英雄联盟 穿越火线 ··· 需要安装客户端 这里的客户端一般泛指客户端应用程序 EXE,程序需要先安装后 ,才能运行在用户电脑上,对用户的电脑操作系统环境依赖较大。 B
2020-11-12T05:27:00Z
2020-11-12T05:27:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、网络的基础概念 (1)、网络架构 C / S 架构: client 客户端 / server 服务端 诸如:qq 微信 浏览器 英雄联盟 穿越火线 ··· 需要安装客户端 这里的客户端一般泛指客户端应用程序 EXE,程序需要先安装后 ,才能运行在用户电脑上,对用户的电脑操作系统环境依赖较大。 B <a href="https://www.cnblogs.com/caiyongliang/p/13963415.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13954655.html
Python - MySQL 之 pymysql模块 - 永亮
1、PyMySQL的安装 pymysql是在 Python3版本中用于连接 mysql服务器的一个库,Python2中是使用mysqldb。 pip3 install PyMySQL 2、使用python操作mysql数据库 (1)、python连接mysql数据库 import pymysql d
2020-11-10T08:50:00Z
2020-11-10T08:50:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、PyMySQL的安装 pymysql是在 Python3版本中用于连接 mysql服务器的一个库,Python2中是使用mysqldb。 pip3 install PyMySQL 2、使用python操作mysql数据库 (1)、python连接mysql数据库 import pymysql d <a href="https://www.cnblogs.com/caiyongliang/p/13954655.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13948220.html
MySQL 之 数据的导出与导入 - 永亮
1、MySQL导出数据 (1)、使用 select ... into outfile 语句导出数据 MySQL中你可以使用SELECT...INTO OUTFILE语句来简单的导出数据到文本文件上。并且可以通过命令选项来设置数据输出的指定格式。 # 语法 SELECT * FROM 表名 INTO
2020-11-09T05:52:00Z
2020-11-09T05:52:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、MySQL导出数据 (1)、使用 select ... into outfile 语句导出数据 MySQL中你可以使用SELECT...INTO OUTFILE语句来简单的导出数据到文本文件上。并且可以通过命令选项来设置数据输出的指定格式。 # 语法 SELECT * FROM 表名 INTO <a href="https://www.cnblogs.com/caiyongliang/p/13948220.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13936521.html
MySQL 之 慢查询优化及慢日志管理 - 永亮
1、查询优化神器 —— explain 使用EXPLAIN关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理SQL语句的。分析查询语句或是表结构的性能瓶颈。 (1)、通过EXPLAIN,可以分析出以下结果: 表的读取顺序 数据读取操作的操作类型 哪些索引可以使用 哪些索引被实际
2020-11-06T05:53:00Z
2020-11-06T05:53:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、查询优化神器 —— explain 使用EXPLAIN关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理SQL语句的。分析查询语句或是表结构的性能瓶颈。 (1)、通过EXPLAIN,可以分析出以下结果: 表的读取顺序 数据读取操作的操作类型 哪些索引可以使用 哪些索引被实际 <a href="https://www.cnblogs.com/caiyongliang/p/13936521.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13931234.html
MySQL 之 索引进阶 - 永亮
1、正确使用索引 (1)、一 索引未命中 并不是说创建了索引就一定会加快查询速度,若想利用索引达到预想的提高查询速度的效果,在添加索引时,必须注意以下问题: <1>、范围问题 或者说条件不明确,条件中出现这些符号或关键字:>、>=、<、<=、!= 、between...and...、like
2020-11-05T05:41:00Z
2020-11-05T05:41:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、正确使用索引 (1)、一 索引未命中 并不是说创建了索引就一定会加快查询速度,若想利用索引达到预想的提高查询速度的效果,在添加索引时,必须注意以下问题: <1>、范围问题 或者说条件不明确,条件中出现这些符号或关键字:>、>=、<、<=、!= 、between...and...、like <a href="https://www.cnblogs.com/caiyongliang/p/13931234.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13925472.html
MySQL 之 索引 - 永亮
1、为什么要有索引 对查询语句的优化,加速查询 2、什么是索引 索引在MySQL中也叫是一种‘键’,是存储引擎用于快速找到记录的一种数据结构。索引对于良好的性能非常关键,尤其是当表中的数据量越来越大时,索引对于性能的影响愈发重要。 索引优化应该是对查询性能优化最有效的手段了。索引能够轻易
2020-11-04T05:32:00Z
2020-11-04T05:32:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、为什么要有索引 对查询语句的优化,加速查询 2、什么是索引 索引在MySQL中也叫是一种‘键’,是存储引擎用于快速找到记录的一种数据结构。索引对于良好的性能非常关键,尤其是当表中的数据量越来越大时,索引对于性能的影响愈发重要。 索引优化应该是对查询性能优化最有效的手段了。索引能够轻易 <a href="https://www.cnblogs.com/caiyongliang/p/13925472.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13921523.html
MySQL 之 事务 - 永亮
1、事务概述 MySQL 事务主要用于处理操作量大,复杂度高的数据。比如说,在员工管理系统中,删除一个员工,既需要删除员工的基本资料,也要删除和该员工相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务。 在 MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事
2020-11-03T09:35:00Z
2020-11-03T09:35:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、事务概述 MySQL 事务主要用于处理操作量大,复杂度高的数据。比如说,在员工管理系统中,删除一个员工,既需要删除员工的基本资料,也要删除和该员工相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务。 在 MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事 <a href="https://www.cnblogs.com/caiyongliang/p/13921523.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13913983.html
MySQL 之 表的存储引擎 - 永亮
1、什么是存储方式、存储机制(存储引擎) MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,能够获得额外的速度或者功能,从而改善应用的整体功能。 例如,如果研究大量
2020-11-02T05:30:00Z
2020-11-02T05:30:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、什么是存储方式、存储机制(存储引擎) MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,能够获得额外的速度或者功能,从而改善应用的整体功能。 例如,如果研究大量 <a href="https://www.cnblogs.com/caiyongliang/p/13913983.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13901683.html
MySQL 之 表与表之间的关系 - 永亮
1、如何找出两张表之间的关系 分析步骤: 1、先从左表的角度去找 看左表的多条记录是否可以对应右表的一条记录,如果是,则证明左表的一个字段foreign key (关联)右表的一个字段(通常是id字段)。 2、再从右表的角度去找 看右表的多条记录是否可以对应左表的一条记录,如果是,则证明右表的一个字
2020-10-30T05:41:00Z
2020-10-30T05:41:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、如何找出两张表之间的关系 分析步骤: 1、先从左表的角度去找 看左表的多条记录是否可以对应右表的一条记录,如果是,则证明左表的一个字段foreign key (关联)右表的一个字段(通常是id字段)。 2、再从右表的角度去找 看右表的多条记录是否可以对应左表的一条记录,如果是,则证明右表的一个字 <a href="https://www.cnblogs.com/caiyongliang/p/13901683.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13884391.html
MySQL 之 表的修改 - 永亮
1、create table -- 新建表 create table 表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件] ); # 在同一张表中,字段名是不能相同的 # 宽度和约束条件是可以选择的 # 字段名和类型是必须要有的
2020-10-27T05:49:00Z
2020-10-27T05:49:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、create table -- 新建表 create table 表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件] ); # 在同一张表中,字段名是不能相同的 # 宽度和约束条件是可以选择的 # 字段名和类型是必须要有的 <a href="https://www.cnblogs.com/caiyongliang/p/13884391.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13878072.html
MySQL 之 表的完整性约束 - 永亮
为了防止不符合规范的数据进入数据库,在用户对数据进行插入、修改、删除等操作时,DBMS自动按照一定的约束条件对数据进行监测,使不符合规范的数据不能进入数据库,以确保数据库中存储的数据正确、有效、相容。 约束条件与数据类型的宽度一样,都是可选参数,主要分为以下几种: NOT NULL : # 非空约束
2020-10-26T05:44:00Z
2020-10-26T05:44:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】为了防止不符合规范的数据进入数据库,在用户对数据进行插入、修改、删除等操作时,DBMS自动按照一定的约束条件对数据进行监测,使不符合规范的数据不能进入数据库,以确保数据库中存储的数据正确、有效、相容。 约束条件与数据类型的宽度一样,都是可选参数,主要分为以下几种: NOT NULL : # 非空约束 <a href="https://www.cnblogs.com/caiyongliang/p/13878072.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13865325.html
MySQL 之 多表连接查询及子查询 - 永亮
1、前期准备 #建表 create table department( id int, name varchar(20) ); create table employee( id int, name varchar(20), sex enum('male','female'), age int, d
2020-10-23T09:37:00Z
2020-10-23T09:37:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、前期准备 #建表 create table department( id int, name varchar(20) ); create table employee( id int, name varchar(20), sex enum('male','female'), age int, d <a href="https://www.cnblogs.com/caiyongliang/p/13865325.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/caiyongliang/p/13857775.html
MySQL 之 数据操作及单表查询 - 永亮
1、数据操作 (1)insert 增加数据 1. 插入完整数据(顺序插入) 语法一: INSERT INTO 表名(字段1,字段2,字段3…字段n) VALUES(值1,值2,值3…值n); 语法二: INSERT INTO 表名 VALUES (值1,值2,值3…值n); 2. 指定字段插入数据
2020-10-22T05:42:00Z
2020-10-22T05:42:00Z
永亮
https://www.cnblogs.com/caiyongliang/
【摘要】1、数据操作 (1)insert 增加数据 1. 插入完整数据(顺序插入) 语法一: INSERT INTO 表名(字段1,字段2,字段3…字段n) VALUES(值1,值2,值3…值n); 语法二: INSERT INTO 表名 VALUES (值1,值2,值3…值n); 2. 指定字段插入数据 <a href="https://www.cnblogs.com/caiyongliang/p/13857775.html" target="_blank">阅读全文</a>