09 2019 档案

摘要:单表多表子查询 一、单表查询 增删改查语句 1. 去重 distinct 总结distinct:distinct对参与查询的所有字段,整体去重(所查的数据记录全部相同,才认为是重复的数据) 2. 数据准备 mysql CREATE TABLE ( int(0) NOT NULL AUTO_INCRE 阅读全文
posted @ 2019-09-25 21:33 RandySun 阅读(1063) 评论(0) 推荐(0) 编辑
摘要:表之间的关系 一、字段的操作 二、多表之间的关系 三、外键 四、一对一无级联关系 五、一对一有级联关系 六、表一对多关系 阅读全文
posted @ 2019-09-24 21:41 RandySun 阅读(356) 评论(0) 推荐(0) 编辑
摘要:表修改、表的引擎 一、数据库修改字符编码 修改字符编码 alter database 数据库名 charset=编码格式 python mysql show create database db1; + + + | Database | Create Database | + + + | db1 | 阅读全文
posted @ 2019-09-24 21:40 RandySun 阅读(292) 评论(0) 推荐(0) 编辑
摘要:mysql支持的数据类型 一、整型 二、浮点型 三、字符串(数据库优化 char效率要高于varchar) 四、时间 五、枚举与集合 阅读全文
posted @ 2019-09-24 21:40 RandySun 阅读(288) 评论(0) 推荐(0) 编辑
摘要:数据库my.ini配置 通过配置文件统一配置的目的:统一管理 服务端(mysqld) 、客户端(client) 配置了 mysqld(服务端) 的编码为utf8,那么再创建的数据库,默认编码都采用 1)在mysql安装根目录下,创建配置文件:my.ini mac下配置文件名叫 my.cnf 2)设置 阅读全文
posted @ 2019-09-24 21:39 RandySun 阅读(431) 评论(0) 推荐(0) 编辑
摘要:MySQL 第一篇 数据基本操作 [01] 数据库基本操作 [02] 数据库my.ini配置 [03] mysql支持的数据类型 [04] 表修改、表的引擎、约束条件 [05] 表之间的关系 [06] 单表多表子查询 [07] 子查询|视图|事务 第二篇 命令整合版 [01] 数据库my.ini配置 阅读全文
posted @ 2019-09-21 16:05 RandySun 阅读(274) 评论(0) 推荐(0) 编辑
摘要:数据库 一、什么是数据库 1. 数据库:管理数据的系统 安装某种管理数据的系统 管理的对象本质是文件 2. 存储数据的位置:内存、硬盘 3. 什么是系统:运行在硬件基础上,管理其他软件 二、数据库的组成 1. 库:存放多张表 文件夹 2. 表:包含多条相同结构的记录 文件 3. 记录:包含多个key 阅读全文
posted @ 2019-09-21 16:02 RandySun 阅读(703) 评论(0) 推荐(0) 编辑
摘要:线程结束守护线程 [TOC] 一、守护线程 无论是进程还是线程, 都遵循:守护xx会等待主xx运行完毕后被销毁。需要强调的是:运行完毕并非终止运行。 1. 对主进程来说,运行完毕指的是主进程代码运行完毕 2. 对主线程来说,运行完毕指的是主线程所在的进程内所有非守护线程统统运行完毕,主线程才算运行完 阅读全文
posted @ 2019-09-17 19:21 RandySun 阅读(239) 评论(0) 推荐(0) 编辑
摘要:线程使用的场景 一、使用线程的实际场景 开启一个字处理软件进程,该进程肯定需要办不止一件事情,比如监听键盘输入,处理文字,定时自动将文字保存到硬盘, 这三个任务操作的都是同一块数据,因而不能用多进程。 只能在一个进程里并发地开启三个线程,如果是单线程,那就只能是,键盘输入时,不能处理文字和自动保存, 阅读全文
posted @ 2019-09-17 19:20 RandySun 阅读(397) 评论(0) 推荐(0) 编辑
摘要:创建多线程 一、python线程模块的选择 Python提供了几个用于多线程编程的模块, 包括thread、threading和Queue等 。thread和threading模块允许程序员创建和管理线程。thread模块提供了基本的线程和锁的支持,threading提供了更高级别、功能更强的线程管 阅读全文
posted @ 2019-09-17 19:20 RandySun 阅读(139) 评论(0) 推荐(0) 编辑
摘要:进程和线程的区别 一、进程和线程的关系 线程与进程的区别可以归纳为以下4点: 1. 地址空间和其它资源(如打开文件):进程间相互独立,同一进程的各线程间共享。某进程内的线程在其它进程不可见。 2. 通信: "进程间通信IPC" ,线程间可以直接读写进程数据段(如全局变量)来进行通信——需要 "进程同 阅读全文
posted @ 2019-09-17 19:19 RandySun 阅读(654) 评论(0) 推荐(0) 编辑
摘要:线程基础 一、线程概念的引入背景 1.1 进程 之前我们已经了解了操作系统中进程的概念,程序并不能单独运行,只有将程序装载到内存中,系统为它分配资源才能运行,而这种执行的程序就称之为进程。程序和进程的区别就在于:程序是指令的集合,它是进程运行的静态描述文本;进程是程序的一次执行活动,属于动态概念。在 阅读全文
posted @ 2019-09-17 19:18 RandySun 阅读(218) 评论(0) 推荐(0) 编辑
摘要:进程间通信 Queue 一、进程间通信 进程彼此之间互相隔离,要实现进程间通信(IPC),multiprocessing模块支持两种形式:队列和管道,这两种方式都是使用消息传递的 二、队列 2.1 概念介绍 multiprocessor.Queue 创建共享的进程队列,Queue是多进程安全的队列, 阅读全文
posted @ 2019-09-16 19:27 RandySun 阅读(293) 评论(0) 推荐(0) 编辑
摘要:进程间数据共享 (multiprocess.Manager) 一、进程之间的数据共享 展望未来,基于消息传递的并发编程是大势所趋 即便是使用线程,推荐做法也是将程序设计为大量独立的线程集合,通过消息队列交换数据。 这样极大地减少了对使用锁定和其他同步手段的需求,还可以扩展到分布式系统中。 但进程间应 阅读全文
posted @ 2019-09-16 19:27 RandySun 阅读(994) 评论(0) 推荐(0) 编辑
摘要:进程同步multiprocess.Lock 我们千方百计实现了程序的异步,让多个任务可以同时在几个进程中并发处理,他们之间的运行没有顺序,一旦开启也 不受我们控制 。尽管并发编程让我们能更加充分的利用IO资源,但是也给我们带来了新的问题:当多个进程使用同一份数据资源的时候,就会引发数据安全或顺序混乱 阅读全文
posted @ 2019-09-16 19:26 RandySun 阅读(281) 评论(0) 推荐(0) 编辑
摘要:创建Git仓库 一、什么是版本仓库 什么是版本库呢?版本库又名仓库,英文名 repository ,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。所以,创建一个版本库非常简单, 阅读全文
posted @ 2019-09-15 23:42 RandySun 阅读(432) 评论(0) 推荐(0) 编辑
摘要:git基础!!! 第一篇 初识Git [01] git简介 [02] Git 基础 [03] Git安装 [04] 初次运行Git前的配置 第二篇 Git基础 [05] 创建Git仓库 [06] Git基础使用 [06] Git命令操作 ………… 阅读全文
posted @ 2019-09-15 22:35 RandySun 阅读(305) 评论(0) 推荐(0) 编辑
摘要:初次运行Git前的配置 一、初次运行 Git 前的配置 一般在新的系统上,我们都需要先配置下自己的 Git 工作环境。配置工作只需一次,以后升级时还会沿用现在的配置。当然,如果需要,你随时可以用相同的命令修改已有的配置。 1. Linux系统 Git 提供了一个叫做 的工具(译注:实际是 命令,只不 阅读全文
posted @ 2019-09-15 22:24 RandySun 阅读(1342) 评论(0) 推荐(0) 编辑
摘要:Git安装 最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑。不过,慢慢地有人把它移植到了Windows上。现在,Git可以在Linux、Unix、Mac和Windows这几大平台上正常运行了。 要使用Git,第一步当然是安装Git了。 一、Linux上安 阅读全文
posted @ 2019-09-15 22:23 RandySun 阅读(378) 评论(0) 推荐(0) 编辑
摘要:Git 基础 一、Git 基础 那么,简单地说,Git 究竟是怎样的一个系统呢?请注意,接下来的内容非常重要,若是理解了 Git 的思想和基本工作原理,用起来就会知其所以然,游刃有余。在开始学习 Git 的时候,请不要尝试把各种概念和其他版本控制系统(诸如 Subversion 和 Perforce 阅读全文
posted @ 2019-09-15 22:22 RandySun 阅读(355) 评论(0) 推荐(0) 编辑
摘要:git简介 一、Git是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一)。 Git 是一个开源的分布式版本控制软件,用以有效、高速的处理从很小到非常大的项目版本管理。 Git 最初是由 Linus Torvalds 设计开发的,用于管理Linux内核开发。Git 是根据GNU通用公共 阅读全文
posted @ 2019-09-15 22:20 RandySun 阅读(4325) 评论(0) 推荐(1) 编辑
摘要:Python程序中的进程操作 — 开启多进程 之前我们已经了解了很多进程相关的理论知识,了解进程是什么应该不再困难了,刚刚我们已经了解了,运行中的程序就是一个进程。所有的进程都是通过它的父进程来创建的。因此,运行起来的python程序也是一个进程,那么我们也可以在程序中再创建进程。多个进程可以实现 阅读全文
posted @ 2019-09-13 19:25 RandySun 阅读(464) 评论(0) 推荐(0) 编辑
摘要:进程的创建和结束 [TOC] 一、进程的创建 但凡是硬件,都需要有操作系统去管理,只要有操作系统,就有进程的概念,就需要有创建进程的方式,一些操作系统只为一个应用程序设计,比如微波炉中的控制器,一旦启动微波炉,所有的进程都已经存在。 而对于通用系统(跑很多应用程序),需要有系统运行过程中创建或撤销进 阅读全文
posted @ 2019-09-13 18:43 RandySun 阅读(292) 评论(0) 推荐(0) 编辑
摘要:同步异步阻塞和非阻塞 一、状态介绍 [ 在了解其他概念之前,我们首先要了解进程的几个状态。在程序运行的过程中,由于被操作系统的调度算法控制,程序会进入几个状态:就绪,运行和阻塞。 1. 就绪(Ready)状态:当进程已分配到除CPU以外的所有必要的资源,只要获得处理机便可立即执行,这时的进程状态称为 阅读全文
posted @ 2019-09-13 18:37 RandySun 阅读(220) 评论(0) 推荐(0) 编辑
摘要:进程的并行和并发 一、进程的并行和并发 并行: 并行是指两者同时执行,比如赛跑,两个人都在不停的往前跑;(资源够用,比如三个线程,四核的CPU ) 并发: 并发是指资源有限的情况下,两者交替轮流使用资源,比如一段路(单核CPU资源)同时只能过一个人,A走一段后,让给B,B用完继续给A ,交替使用,目 阅读全文
posted @ 2019-09-13 18:10 RandySun 阅读(1599) 评论(0) 推荐(0) 编辑
摘要:进程调度 要想多个进程交替运行,操作系统必须对这些进程进行调度,这个调度也不是随即进行的,而是需要遵循一定的法则,由此就有了进程的调度算法。 一、先来先服务调度算法 先来先服务(FCFS)调度算法是一种最简单的调度算法,该算法既可用于作业调度,也可用于进程调度。FCFS算法比较有利于长作业(进程), 阅读全文
posted @ 2019-09-13 17:31 RandySun 阅读(266) 评论(0) 推荐(0) 编辑
摘要:进程基础 [TOC] 一、操作系统背景知识 顾名思义,进程即正在执行的一个过程。进程是对正在运行程序的一个抽象。 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一。操作系统的其他所有内容都是围绕进程的概念展开的。 所以想要真正了解进程,必须事先了解操 阅读全文
posted @ 2019-09-13 17:15 RandySun 阅读(257) 评论(0) 推荐(0) 编辑
摘要:操作系统的发展史 一、手工操作———穿孔卡片 1946年第一台计算机诞生 20世纪50年代中期,计算机工作还在采用手工操作方式。此时还没有操作系统的概念。 " " " " 程序员将对应于程序和数据的已穿孔的纸带(或卡片)装入输入机,然后启动输入机把程序和数据输入计算机内存,接着通过控制台开关启动程序 阅读全文
posted @ 2019-09-13 16:54 RandySun 阅读(383) 评论(0) 推荐(0) 编辑
摘要:基于socketserver实现并发的socket编程 一、基于TCP协议 基于tcp的套接字,关键就是两个循环,一个链接循环,一个通信循环 socketserver模块中分两大类:server类(解决链接问题)和request类(解决通信问题) 1.1server类 [ 1.2 request类 阅读全文
posted @ 2019-09-13 16:23 RandySun 阅读(277) 评论(0) 推荐(0) 编辑
摘要:基于UDP协议的socket套接字编程 一、UDP套接字简单示例 1.1 服务器 1.2 客户端 UDP是无链接的,先启动哪一端都不会报错 UDP协议是数据报协议,发空的时候也会自带报头,因此客户端输入空,服务端也能收到 1.3 通信循环 服务端 客户端 二、UDP套接字无粘包问题 2.1服务器 b 阅读全文
posted @ 2019-09-13 16:02 RandySun 阅读(327) 评论(0) 推荐(0) 编辑
摘要:解决粘包问题 一、解决粘包问题方式一 问题的根源在于,接收端不知道发送端将要传送的字节流的长度,所以解决粘包的方法就是围绕,如何让发送端在发送数据前,把自己将要发送的字节流总大小让接收端知晓,然后接收端来一个死循环接收完所有数据。 1.1 服务器 1.2 客户端 缺点: 程序的运行速度远快于网络传输 阅读全文
posted @ 2019-09-13 15:53 RandySun 阅读(779) 评论(0) 推荐(0) 编辑
摘要:粘包问题 [TOC] 一、什么是粘包 注意: 只有TCP有粘包现象,UDP永远不会粘包, 为何,且听我娓娓道来。 首先需要掌握一个socket收发消息的原理 [ 发送端可以是一K一K地发送数据,而接收端的应用程序可以两K两K地提走数据,当然也有可能一次提走3K或6K数据,或者一次只提走几个字节的数据 阅读全文
posted @ 2019-09-13 15:30 RandySun 阅读(227) 评论(0) 推荐(0) 编辑
摘要:模拟ssh远程执行命令 一、服务器 二、客户端 输入 命令,由于服务端发送字节少于1024字节,客户端可以接受。 输入 命令,由于服务端发送字节多于1024字节,客户端只接受部分数据,并且当你再次输入 命令的时候,客户端会接收 命令的结果,但是会打印上一次的剩余未发送完的数据, 这就是粘包问题。 阅读全文
posted @ 2019-09-13 15:13 RandySun 阅读(263) 评论(0) 推荐(0) 编辑
摘要:基于TCP协议的socket套接字编程 一、什么是Socket Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织 阅读全文
posted @ 2019-09-13 15:01 RandySun 阅读(450) 评论(0) 推荐(0) 编辑
摘要:一、Linux ​ cd . .. ~ 1. ls a h l 通配符 2. mkdir 3. bouch 4. nano 5. vim 6. cat 7. clear 8. cp r ./db/ ./lib/ 9. mv r 10. rm r 11. which 12. pwd 13. grep 阅读全文
posted @ 2019-09-06 15:48 RandySun 阅读(402) 评论(0) 推荐(0) 编辑
摘要:osi七层协议 互联网的本质就是一系列的网络协议,这个协议就叫OSI协议(一系列协议),按照功能不同,分工不同,人为的分层七层。实际上这个七层是不存在的。没有这七层的概念,只是人为的划分而已。区分出来的目的只是让你明白哪一层是干什么用的。 每一层都运行不同的协议。协议是干什么的,协议就是标准。 实际 阅读全文
posted @ 2019-09-05 18:33 RandySun 阅读(290) 评论(0) 推荐(0) 编辑
摘要:TCP协议的三次握手和四次挥手 [TOC] 一、背景描述 通过OSI七层网络模型中IP层的介绍,我们知道网络层,可以实现两个主机之间的通信。但是这并不具体,因为,真正进行通信的实体是在主机中的进程,是一个主机中的一个进程与另外一个主机中的一个进程在交换数据。IP协议虽然能把数据报文送到目的主机,但是 阅读全文
posted @ 2019-09-05 18:33 RandySun 阅读(197) 评论(0) 推荐(0) 编辑
摘要:C/S 和 B/S架构 一、单机架构 应用领域: 植物大战僵尸 office 二、C/S架构 [ 应用领域: QQ 大型网络游戏 计算机发展初期用户去取数据,直接就去主机拿,从这里开始就分出了客户端和服务端。 客户端:用户安装的软件; 服务端:统一管理数据库的主机中的软件就叫做服务端,再后来服务端不 阅读全文
posted @ 2019-09-05 18:32 RandySun 阅读(1086) 评论(0) 推荐(0) 编辑
摘要:vi——终端中的编辑器 目标 简介 打开和新建文件 三种工作模式 常用命令 分屏命令 常用命令速查图 01. 简介 1.1 学习 的目的 在工作中,要对 服务器 上的文件进行 简单 的修改,可以使用 远程登录到服务器上,并且使用 进行快速的编辑即可 常见需要修改的文件包括: 源程序 配置文件 ,例如 阅读全文
posted @ 2019-09-05 09:52 RandySun 阅读(5470) 评论(0) 推荐(3) 编辑
摘要:其他命令 目标 查找文件 find 软链接 ln 打包和压缩 tar 软件安装 apt-get 01. 查找文件 find 命令功能非常强大,通常用来在 特定的目录下 搜索 符合条件的文件 序号 命令 作用 01 find [路径] -name "*.py" 查找指定路径下扩展名是 .py 的文件, 阅读全文
posted @ 2019-09-05 00:26 RandySun 阅读(297) 评论(0) 推荐(0) 编辑
摘要:系统信息相关命令 本节内容主要是为了方便通过远程终端维护服务器时,查看服务器上当前 系统日期和时间 / 磁盘空间占用情况 / 程序执行情况 本小结学习的终端命令基本都是查询命令,通过这些命令对系统资源的使用情况有个了解 目标 时间和日期 磁盘和目录空间 进程信息 01. 时间和日期 | 序号 | 命 阅读全文
posted @ 2019-09-05 00:24 RandySun 阅读(241) 评论(0) 推荐(0) 编辑
摘要:用户权限相关命令 目标 用户 和 权限 的基本概念 用户管理 终端命令 组管理 终端命令 修改权限 终端命令 01. 用户 和 权限 的基本概念 1.1 基本概念 用户 是 Linux 系统工作中重要的一环,用户管理包括 用户 与 组 管理 在 Linux 系统中,不论是由本机或是远程登录系统,每个 阅读全文
posted @ 2019-09-05 00:23 RandySun 阅读(202) 评论(0) 推荐(0) 编辑
摘要:用户权限相关命令 目标 用户 和 权限 的基本概念 用户管理 终端命令 组管理 终端命令 修改权限 终端命令 01. 用户 和 权限 的基本概念 1.1 基本概念 用户 是 Linux 系统工作中重要的一环,用户管理包括 用户 与 组 管理 在 Linux 系统中,不论是由本机或是远程登录系统,每个 阅读全文
posted @ 2019-09-05 00:23 RandySun 阅读(535) 评论(0) 推荐(0) 编辑
摘要:远程管理常用命令 目标 关机/重启 查看或配置网卡信息 远程登录和复制文件 01. 关机/重启 | 序号 | 命令 | 对应英文 | 作用 | | | | | | | 01 | shutdown 选项 时间 | shutdown | 关机/重新启动 | 1.1 命令可以 安全 关闭 或者 重新启动系 阅读全文
posted @ 2019-09-05 00:18 RandySun 阅读(758) 评论(0) 推荐(0) 编辑
摘要:文件和目录常用命令 目标 查看目录内容 切换目录 创建和删除操作 拷贝和移动文件 查看文件内容 其他 重定向 和 管道 01. 查看目录内容 1.1 终端实用技巧 1 自动补全 在敲出 /`目录 命令 tab` 键 如果输入的没有歧义,系统会自动补全 如果还存在其他 /`目录 命令 tab` 键,系 阅读全文
posted @ 2019-09-05 00:12 RandySun 阅读(454) 评论(0) 推荐(0) 编辑
摘要:单例模式 [TOC] 一、什么是单例模式 单例模式:基于某种方法实例化多次得到实例是同一个 二、为什么用单例模式 当实例化多次得到的对象中存放的 属性都一样的情况 ,应该将多个对象指向同一个内存,即同一个实例 三、单例模式 3.1 静态方法实现 3.2通过装饰器实现 3.3 通过元类 3.4通过模块 阅读全文
posted @ 2019-09-04 19:03 RandySun 阅读(230) 评论(0) 推荐(0) 编辑
摘要:GitHub使用` GitHub是基于git实现的代码托管。git是目前最好用的版本控制系统了,非常受欢迎,比之svn更好。 GitHub可以免费使用,并且快速稳定。即使是付费帐户,每个月不超过10美刀的费用也非常便宜。 利用GitHub,你可以将项目存档,与其他人分享交流,并让其他开发者帮助你一起 阅读全文
posted @ 2019-09-03 21:22 RandySun 阅读(222) 评论(0) 推荐(0) 编辑
摘要:元类 [TOC] 一、什么是元类 元类属于python面向对象编程的深层魔法,99%的人都不得要领,一些自以为搞明白元类的人其实也只是自圆其说、点到为止,从对元类的控制上来看就破绽百出、逻辑混乱,今天我就来带大家来深度了解python元类的来龙去脉。 笔者深入浅出的背后是对技术一日复一日的执念,希望 阅读全文
posted @ 2019-09-03 20:45 RandySun 阅读(378) 评论(0) 推荐(0) 编辑
摘要:\_\_setattr\_\_和\_\_delattr\_\_和\_\_getattr\_\_ \_\_setattr\_\_, \_\_delattr\_\_, \_\_getattr\_\_(重要) 点出来拦截器方法 1.如果去对象中取属性,一旦取不到, 就会进入到__getattr 2, 如果 阅读全文
posted @ 2019-09-02 21:59 RandySun 阅读(213) 评论(0) 推荐(0) 编辑
摘要:反射(hasattr和setattr和delattr) 一、反射在类中的使用 反射就是通过字符串来操作类或者对象的属性, 反射本质就是在使用内置函数,其中反射有以下四个内置函数: 1. hasattr:通过字符串,判断一个方法是否存在与这个类中 2. getattr: 根据字符串去获取obj对象里的 阅读全文
posted @ 2019-09-02 21:53 RandySun 阅读(198) 评论(0) 推荐(0) 编辑
摘要:isinstance和issubclass 一、isinstance与type isinstance作用:判断第一个参数是不是第二个参数的对象,是返回True否则返回False 在游戏项目中,我们会在每个接口验证客户端传过来的参数类型,如果验证不通过,返回给客户端“参数错误”错误码。 这样做不但便于 阅读全文
posted @ 2019-09-02 21:52 RandySun 阅读(199) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示