欢迎来到李洋的博客

回首境界: 众里寻他千百度,蓦然回首,那人却在灯火阑珊处。

08 2019 档案

31、NTP时间服务器
摘要:1.NTP简介 NTP服务器顾名思义就是时间同步服务器(Network Time Protocol),Linux下的ntp服务器配置相对来说都比较容易,但在Linux下有一个弊端,不同时区或者说是时间相差太大的无法同步,所以在配置ntp服务器之前需要把时间配置成相同的。 NTP时钟同步方式说明 NT 阅读全文

posted @ 2019-08-27 14:26 miss_xxy

持续集成gitlib & Jenkins
摘要:01.devops介绍 1.1.Devops是什么 开发 development 运维 operations 1.2.Devops能干嘛 提高产品质量 1 自动化测试 2 持续集成 3 代码质量管理工具 4 程序员鼓励师 1.3.Devops如何实现 02.Git版本控制系统 2.1.版本控制系统简 阅读全文

posted @ 2019-08-19 15:38 miss_xxy

openstack mitaka开启三层网络vxlan
摘要:在这之前,先把之前基于flat模式创建的虚机,全部删除 配置 修改/etc/neutron/neutron.conf的[DEFAULT]区域 将 修改为 修改/etc/neutron/plugins/ml2/ml2_conf.ini文件 [ml2]区域修改如下 将 修改为 在[ml2_type_vx 阅读全文

posted @ 2019-08-16 23:16 miss_xxy

openstack云主机冷迁移
摘要:1:开启nova计算节点之间互信 冷迁移需要nova计算节点之间使用nova用户互相免密码访问 默认nova用户禁止登陆,开启所有计算节点的nova用户登录shell。 将公钥发送给其他计算节点的nova用户的/var/lib/nova/.ssh目录下,注意权限和所属组 2:修改控制节点nova.c 阅读全文

posted @ 2019-08-16 23:06 miss_xxy

openstack dashboard开启https
摘要:前提条件: 1.基于http的dashboard能正常访问 2.拥有ssl证书 第一步:修改/etc/openstack-dashboard/local_settings 在DEBUG = False下增加4行 USE_SSL = True CSRF_COOKIE_SECURE = True SES 阅读全文

posted @ 2019-08-16 23:03 miss_xxy

kubeadm安装k8s1.13
摘要:1、环境介绍: centos 7.4.1708 关闭selinux和iptable,环境很重要! 主机 ip地址 cpu核数 内存 swap host解析 k8s-master 10.0.0.11 2+ 1G+ 关闭 需要 k8s-node1 10.0.0.12 1+ 1G+ 关闭 需要 主机 ip 阅读全文

posted @ 2019-08-16 22:20 miss_xxy

为你的docker容器增加一个健康检查机制
摘要:1.健康检查 在分布式系统中,经常需要利用健康检查机制来检查服务的可用性,防止其他服务调用时出现异常。自 1.12 版本之后,Docker 引入了原生的健康检查实现。 如何给Docke配置原生健康检查能力,在写dockerfile的时候,通过HEALTHCHECK指令就可以了 2.dockerfil 阅读全文

posted @ 2019-08-16 22:12 miss_xxy

docker私有仓库registry的使用
摘要:1.registry的安装 关于docker registry的安装,可以说简单的不能再简单了,docker run一个容器就好了,也就是一条命令的事 2.上传镜像 上次镜像其实就两步,给镜像打tag和push上传 2.1 打tag 格式:docker tag 源镜像名字:版本 私有仓库地址/镜像名 阅读全文

posted @ 2019-08-16 22:01 miss_xxy

k8s容器编排
摘要:1:k8s集群的安装 1.1 k8s的架构 除了核心组件,还有一些推荐的Add ons: | 组件名称 | 说明 | | | : : | | kube dns | 负责为整个集群提供DNS服务 | | Ingress Controller | 为服务提供外网入口 | | Heapster | 提供资 阅读全文

posted @ 2019-08-16 19:38 miss_xxy

docker容器
摘要:docker容器 1:什么是容器? 容器就是在隔离的环境运行的一个进程,如果进程停止,容器就会销毁。隔离的环境拥有自己的系统文件,ip地址,主机名等 kvm虚拟机,linux,系统文件 程序:代码,命令 进程:正在运行的程序 2:容器和虚拟化的区别 linux容器技术,容器虚拟化和kvm虚拟化的区别 阅读全文

posted @ 2019-08-15 11:18 miss_xxy

SVN版本控制系统
摘要:一、安装 1.1 svn_post钩子 1.2 svn_pre钩子 二、SVN命令参考(svn command reference) 2.1 add: 把文件和目录纳入版本控制,通过调度加到版本库。它们会在下一次提交时加入。 用法: add 路径... 有效选项: --targets ARG : 传 阅读全文

posted @ 2019-08-11 15:13 miss_xxy

05.Zabbix自动化监控
摘要:1.Zabbix自动发现(被动) 网络发现官方手册 网络发现由两个阶段组成:发现discovery和动作actions 1.单击配置->自动发现->启动默认的Local network 2.配置规则 3.单击配置->动作->事件源->自动发现->启用动作 4.修改动作规则 5.修改操作细节 默认标题 阅读全文

posted @ 2019-08-10 17:10 miss_xxy

04.ZabbixWEB网站监控
摘要:1.Web场景监测概述 1.Web网站中什么是动态网站,什么是静态网站 静态网站:纯静态网站就是服务器的源代码和客户端的源代码一致。 动态网站:比如: <?php phpinfo()?> 每次用户访问的时候,内容都是在内存中动态生成的。动态网站支持登陆,支持用户交互,所以用户在请求动态网站时,会给客 阅读全文

posted @ 2019-08-10 17:09 miss_xxy

03.Zabbix应用服务监控
摘要:一、Zabbix监控Nginx 1.1 实验环境 服务器系统角色IP CentOS 7.4 x86_64 Zabbix-Server 192.168.90.10 CentOS 7.4 x86_64 Zabbix-Agent 192.168.90.11 1.2.在nginx.conf的Server标签 阅读全文

posted @ 2019-08-10 17:02 miss_xxy

02.Zabbix⾃定义监控项
摘要:1.zabbix⾃定义监控初试 如何获取系统中想监控对象的值,获取后⼜如何将该值传递给Zabbix-Server 1.1.监控系统中的对象 #(系统监控命令 + awk + 筛选条件 = 监控的状态值) [root@web01 ~]# w|awk 'NR==1{print $6}' 1.2.在/et 阅读全文

posted @ 2019-08-10 16:31 miss_xxy

01.Zabbix监控快速入门
摘要:1.监控知识基本概述 1.为什么要使用监控 1.对系统不间断实时监控 2.实时反馈系统当前状态 3.保证服务可靠性安全性 4.保证业务持续稳定运行 2.如何进行监控,比如我们需要监控磁盘的使用率 1.如何查看磁盘使用率df -h 2.监控磁盘的那些指标block、inode 3.如何获取具体的信息d 阅读全文

posted @ 2019-08-10 15:32 miss_xxy

Gitlab备份与恢复、迁移与升级
摘要:Gitlab是一个利用Ruby on Rails开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人的项目Gitlab能够浏览源代码,管理缺陷和注释。 1.Gitlab安装 1.安装和配置必要的依赖关系在CentOS7,下面的命令将在系统防火墙打开HTTP和SS 阅读全文

posted @ 2019-08-09 12:00 miss_xxy

第十五章·Kibana深入-Dev Tools及Lucene语法
摘要:Dev Tools介绍 Dev Tools 页面包含开发工具,您可以使用这些Dev Tools与Kibana中的数据进行交互。 原先的交互式控制台Sense,使用户方便的通过浏览器直接与Elasticsearch进行交互。从Kibana 5开始改名并直接内建在Kibana,就是Dev Tools选项 阅读全文

posted @ 2019-08-09 09:21 miss_xxy

第十四章·Kibana深入-Timelion画图实现系统监控
摘要:什么是Timelion? Timelion使你可以轻松获得以下问题的答案: 1)随着时间的推移,每个唯一的用户会查看多少个页面?2)这个星期五和上周五之间的交通量有什么不同?3)今天有多少日本人口来到我的网站?4)标准普尔500指数的10日均线是多少?5)过去两年收到的所有搜索请求的累计总和是多少? 阅读全文

posted @ 2019-08-09 09:19 miss_xxy

第十三章·Kibana深入-使用地图统计客户端IP
摘要:地址库 在ELK中,我们可以使用地址库,来对IP进行分析,对日志进行分析,在ELKstack中只有Logstash可以做到,但是出图,是Kibana来出的,所以我们首先需要下载地址库数据文件,然后对Logstash进行配置,使用geoip模块对日志访问IP进行分析后,再以中国地图或者是世界地图的形式 阅读全文

posted @ 2019-08-09 09:14 miss_xxy

第十二章·Kibana深入-日志图形展示
摘要:1.Kibana创建区域图 Kibana支持多重图从展示功能,需要日志是json格式的支持。 打开浏览器,访问:http://10.0.0.54:5601   选择一个日志  添加一个X轴   再次点击Vlsualize即可看见刚才创建的图形  2.Kibana创建数据表 点击图中 +号 阅读全文

posted @ 2019-08-09 09:09 miss_xxy

第十一章·Filebeat-使用Filebeat收集日志
摘要:Filebeat介绍及部署 Filebeat附带预构建的模块,这些模块包含收集、解析、充实和可视化各种日志文件格式数据所需的配置,每个Filebeat模块由一个或多个文件集组成,这些文件集包含摄取节点管道、Elasticsearch模板、Filebeat勘探者配置和Kibana仪表盘。 Filebe 阅读全文

posted @ 2019-08-09 08:59 miss_xxy

第九章·Logstash深入-Logstash配合rsyslog收集haproxy日志
摘要:rsyslog介绍及安装配置 在centos 6及之前的版本叫做syslog,centos 7开始叫做rsyslog,根据官方的介绍,rsyslog(2013年版本)可以达到每秒转发百万条日志的级别,官方网址:http://www.rsyslog.com/ 测试域名访问 测试haproxy,打开浏 阅读全文

posted @ 2019-08-09 08:58 miss_xxy

第十章· Logstash深入-Logstash与Redis那点事
摘要:Logstash将日志写入Redis 在企业中,日志规模的量级远远超出我们的想象,这就是为什么会有一家公司日志易专门做日志收集,给大型金融公司收集日志,比如银行,因为你有可能看到,1秒钟好几千万的日志量,往服务器写入,那么企业中的集群,架构都不是单台的,而是多台的,一台如果是1千万,那么5台的量级, 阅读全文

posted @ 2019-08-09 08:58 miss_xxy

第八章·Logstash深入-通过TCP/UDP收集日志
摘要:1.收集TCP/UDP日志 通过logstash的tcp/udp插件收集日志,通常用于在向elasticsearch日志补录丢失的部分日志,可以将丢失的日志通过一个TCP端口直接写入到elasticsearch服务器。  NetCat简称nc,在网络工具中有瑞士军刀美誉,其功能实用,是一个简单、可 阅读全文

posted @ 2019-08-09 08:57 miss_xxy

第七章·Logstash深入-收集NGINX日志
摘要:1.NGINX安装配置 因为资源问题,我们先将nginx安装在Logstash所在机器 打开浏览器,访问:http://10.0.0.53/ 之前我们讲了tomcat日志,在企业中,修改格式需要与开发商量,但是nginx我们不需要,如果需要原来的格式日志,我们可以将日志输出两份,一份 main格式 阅读全文

posted @ 2019-08-09 08:56 miss_xxy

第六章·Logstash深入-收集java日志
摘要:1.通过Logstash收集java日志并输出到ES中 因为我们现在需要用Logstash收集tomcat日志,所以我们暂时将tomcat安装到Logstash所在机器,也就是db03:10.0.0.53这台机器,收集tomcat访问日志以及tomcat错误日志进行实时统计,在企业中,tomcat机 阅读全文

posted @ 2019-08-09 08:55 miss_xxy

第五章·Logstash深入-日志收集
摘要:1.Logstash收集单个日志到文件中 不难理解,我们的日志通常都是在日志文件中存储的,所以,当我们在使用INPUT插件时,收集日志,需要使用file模块,从文件中读取日志的内容,那么接下来讲解的是,将日志内容输出到另一个文件中,如此一来,我们可以将日志文件同意目录,方便查找。 注意:Logsta 阅读全文

posted @ 2019-08-09 08:53 miss_xxy

第四章·Kibana入门-安装,索引添加及界面功能
摘要:1.Kibana简介及部署 Kibana是一个通过调用elasticsearch服务器进行图形化展示搜索结果的开源项目。 打开浏览器,访问:http://10.0.0.54:5601/status 查看Kibana及集群状态。  2.Kibana中添加ES索引 打开浏览器,访问:http://10 阅读全文

posted @ 2019-08-09 08:51 miss_xxy

第三章·Logstash入门-部署与测试
摘要:1.Logstash环境准备与安装 关闭防火墙 关闭SELINUX 设置epel源 修改时区 设置时间同步 Logstash是一个开源的数据收集引擎,可以水平伸缩,而且logstash整个ELK当中拥有最多插件的一个组件,其可以接收来自不同来源的数据并统一输出到指定的且可以是多个不同目的地。 安装J 阅读全文

posted @ 2019-08-09 08:47 miss_xxy

第二章·Elasticsearch内部分片及分片处理机制介绍
摘要:一、副本分片介绍 副本分片的主要目的就是为了故障转移,如果持有主分片的节点挂掉了,一个副本分片就会晋升为主分片的角色。 在索引写入时,副本分片做着与主分片相同的工作。新文档首先被索引进主分片然后再同步到其它所有的副本分片。增加副本数并不会增加索引容量。 无论如何,副本分片可以服务于读请求,如果你的索 阅读全文

posted @ 2019-08-09 08:43 miss_xxy

第一章·ELKstack介绍及Elasticsearch部署
摘要:一、ELKstack课程大纲  二、ELKstack简介 通俗来讲,ELK是由Elasticsearch、Logstash、Kibana 三个开源软件的组成的一个组合体,这三个软件当中,每个软件用于完成不同的功能,ELK 又称为ELK stack,官方域名为elastic.co,ELK stack 阅读全文

posted @ 2019-08-09 08:38 miss_xxy

在centos7上kvm网卡桥接
摘要:系统环境准备 硬件环境,建议内存多给点,一定要开启虚拟化,使用vmware workstation12版本,如下图 安装 启动 注意:如果前面没做host解析,启动的时候,可能会报错 设置开机启动 修改结果如下: 上传镜像 我这里上传的是centos6.7 创建虚拟磁盘 创建虚拟机 打开vnc 后面 阅读全文

posted @ 2019-08-08 20:35 miss_xxy

KVM和Docker的对比
摘要:KVM:全虚拟化,需要模拟各种硬件 docker:严格来说不算是虚拟化技术,只是进程隔离和资源限制 在kvm虚拟机中执行top命令,看宿主机进程树,根本看不到top的进程 在docker容器中,同样执行top命令,在宿主机进程数中直接可以看到top进程 KVM虚拟机一般会独占一段内存,即使闲置,其他 阅读全文

posted @ 2019-08-08 20:31 miss_xxy

构建docker基本镜像
摘要:1.准备: 创建一个目录oldboy-hello 2.编写Dockerfile 内容如下,只有三行 当前目录下的文件 3.构建docker镜像 4.启动容器 5.补充 阅读全文

posted @ 2019-08-08 20:30 miss_xxy

Centos7虚拟机根分区扩展
摘要:线上的kvm虚拟机,原来只规划了8G,后来发现硬盘动不动就被日志塞满了,需要进行扩容。 扩容步骤如下: 1、先把kvm虚拟机关机 2、在宿主机上进行kvm虚拟机的磁盘扩容 qemu-img resize qiangge.qcow2 +10G 调整之后 接下来进入到虚拟机发现没有生效!!! 3、在虚拟 阅读全文

posted @ 2019-08-08 20:25 miss_xxy

全自动链接克隆KVM虚拟机
摘要:virt-clone这个命令是基于全克隆的,也就是拷贝虚拟磁盘文件和虚拟配置文件来实现的完整克隆,速度慢,占用空间多 kvm软件包中并没有实现全自动链接克隆的命令或工具,只能手动实现,于是我决定写一个脚本来搞定kvm虚拟机的自动链接克隆 想自动,先手动 一、手动克隆: 第一步:创建基于链接克隆的虚拟 阅读全文

posted @ 2019-08-08 20:24 miss_xxy

kvm虚拟机热迁移
摘要:一、热迁移描述: 相比KVM虚拟机冷迁移中需要拷贝虚拟机虚拟磁盘文件,kvm虚拟机热迁移无需拷贝虚拟磁盘文件,但是需要迁移到的宿主机之间需要有相同的目录结构虚拟机磁盘文件,也就是共享存储,本文这部分内容通过nfs来实现,当然也可以采用Glusterfs集群文件系统来实现. 热迁移流程: 在kvm01 阅读全文

posted @ 2019-08-08 20:21 miss_xxy

kvm虚拟化
摘要:1:什么是虚拟化? 虚拟化,通过模拟计算机的硬件,来实现在同一台计算机上同时运行多个不同的操作系统的技术。 2:为什么要用虚拟化? 3:kvm虚拟化管理软件的安装 4:安装一台kvm虚拟机 分发软件TightVNC或者VNC Viewer 4.exe 宿主机 vnc:远程的桌面管理工具 向日葵 10 阅读全文

posted @ 2019-08-08 20:14 miss_xxy

python、第八篇:索引原理与慢查询优化
摘要:一 介绍 1. 为何要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询语句的优化显然是重中之重。说起加速查询,就不得不提到索引了。 2. 什么是索引? 索引在MySQL 阅读全文

posted @ 2019-08-07 21:59 miss_xxy

python、第七篇:ORM框架SQLAlchemy
摘要:一 介绍 SQLAlchemy是Python编程语言下的一款ORM框架,该框架建立在数据库API之上,使用关系对象映射进行数据库操作,简言之便是:将对象转换成SQL,然后使用数据API执行SQL并获取执行结果。 1、安装 2、架构与流程 !!!上述流程分析,可以大致分为两个阶段!!!: 如果我们不依 阅读全文

posted @ 2019-08-07 21:49 miss_xxy

python、第六篇:视图、触发器、事务、存储过程、函数
摘要:一 视图 视图是一个虚拟表(非真实存在),其本质是【根据SQL语句获取动态的数据集,并为其命名】,用户使用时只需使用【名称】即可获取结果集,可以将该结果集当做表来使用。 使用视图我们可以把查询过程中的临时表摘出来,用视图去实现,这样以后再想操作该临时表的数据时就无需重写复杂的sql了,直接去视图中查 阅读全文

posted @ 2019-08-07 20:50 miss_xxy

第十一篇:Mysql系列
摘要:[第一篇:初识数据库](https://www.cnblogs.com/Forever-x/p/11317435.html) [第二篇:库相关操作](https://www.cnblogs.com/Forever-x/p/11317443.html) [第三篇:表相关操作](https://www. 阅读全文

posted @ 2019-08-07 20:50 miss_xxy

python、第五篇:数据备份、pymysql模块
摘要:一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https://pan.baidu.com/s/1bpo5mqj 二 MySQL数据备份 一、使用mysqldump实现逻辑备份 二、恢复逻辑备份 三、备份/恢复案例 #数据库备份/恢复实验一 阅读全文

posted @ 2019-08-07 20:41 miss_xxy

python、第四篇:记录相关操作
摘要:一 介绍 MySQL数据操作: DML 在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括 本节内容包括: 插入数据更新数据删除数据查询数据 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 单表查询:https:// 阅读全文

posted @ 2019-08-07 20:37 miss_xxy

python、mysql四-2:多表查询
摘要:一 介绍 本节主题 多表连接查询 复合条件连接查询 子查询 准备表 #建表 create table department( id int, name varchar(20) ); create table employee( id int primary key auto_increment, n 阅读全文

posted @ 2019-08-07 20:36 miss_xxy

SQL逻辑查询语句执行顺序
摘要:一 SELECT语句关键字的定义顺序 二 SELECT语句关键字的执行顺序 三 准备表和数据 1. 新建一个测试数据库TestDB; 2.创建测试表table1和table2; 3.插入测试数据; 准备工作做完以后,table1和table2看起来应该像下面这样: 四 准备SQL逻辑查询测试语句 五 阅读全文

posted @ 2019-08-07 20:32 miss_xxy

Python、mysql四-1:单表查询
摘要:一 单表查询的语法 二 关键字的执行优先级(重点) 1.找到表:from 2.拿着where指定的约束条件,去文件/表中取出一条条记录 3.将取出的一条条记录进行分组group by,如果没有group by,则整体作为一组 4.将分组的结果进行having过滤 5.执行select 6.去重 7. 阅读全文

posted @ 2019-08-07 20:27 miss_xxy

python、第三篇:表相关操作
摘要:一 存储引擎介绍 存储引擎即表类型,mysql根据不同的表类型会有不同的处理机制 详见:https://www.cnblogs.com/Forever-x/p/11317479.html 二 表介绍 表相当于文件,表中的一条记录就相当于文件的一行内容,不同的是,表中的一条记录有对应的标题,称为表的字 阅读全文

posted @ 2019-08-07 20:18 miss_xxy

python、mysql三-2:数据类型
摘要:一 介绍 存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己的宽度,但宽度是可选的 详细参考: http://www.runoob.com/mysql/mysql-data-types.html http://dev.mysql.com/doc/refman/5.7/en 阅读全文

posted @ 2019-08-07 20:11 miss_xxy

python、mysql三-1:存储引擎
摘要:一 什么是存储引擎 mysql中建立的库 >文件夹 库中建立的表 >文件 现实生活中我们用来存储数据的文件有不同的类型,每种文件类型对应各自不同的处理机制:比如处理文本用txt类型,处理表格用excel,处理图片用png等 数据库中的表也应该有不同的类型,表的类型不同,会对应mysql不同的存取机制 阅读全文

posted @ 2019-08-07 20:06 miss_xxy

python、第二篇:库相关操作
摘要:一 系统数据库 information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息、列信息、权限信息、字符信息等performance_schema: MySQL 5.5开始新增一个数据库:主要用于收集数据库服务器性能参数,记录处理查询请求时发生的各种事件、 阅读全文

posted @ 2019-08-07 20:00 miss_xxy

python、第一篇:初识数据库
摘要:一 数据库管理软件的由来 基于我们之前所学,数据要想永久保存,都是保存于文件中,毫无疑问,一个文件仅仅只能存在于某一台机器上。 如果我们暂且忽略直接基于文件来存取数据的效率问题,并且假设程序所有的组件都运行在一台机器上,那么用文件存取数据,并没有问题。 很不幸,这些假设都是你自己意淫出来的,上述假设 阅读全文

posted @ 2019-08-07 19:59 miss_xxy

第十篇.6、python并发编程之IO模型
摘要:一 IO模型介绍 为了更好地了解IO模型,我们需要事先回顾下:同步、异步、阻塞、非阻塞 同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能 阅读全文

posted @ 2019-08-07 19:48 miss_xxy

第十篇.5、python并发编程之协程
摘要:一 引子 本节的主题是基于单线程来实现并发,即只用一个主线程(很明显可利用的cpu只有一个)情况下实现并发,为此我们需要先回顾下并发的本质:切换+保存状态 cpu正在运行一个任务,会在两种情况下切走去执行其他的任务(切换由操作系统强制控制),一种情况是该任务发生了阻塞,另外一种情况是该任务计算的时间 阅读全文

posted @ 2019-08-07 19:45 miss_xxy

Python GIL(Global Interpreter Lock)
摘要:一 介绍 首先需要明确的一点是GIL并不是Python的特性,它是在实现Python解析器(CPython)时所引入的一个概念。就好比C++是一套语言(语法)标准,但是可以用不同的编译器来编译成可执行代码。有名的编译器例如GCC,INTEL C++,Visual C++等。Python也一样,同样一 阅读全文

posted @ 2019-08-07 19:33 miss_xxy

第十篇.4、python并发编程之多线程
摘要:一 threading模块介绍 multiprocess模块的完全模仿了threading模块的接口,二者在使用层面,有很大的相似性,因而不再详细介绍 官网链接:https://docs.python.org/3/library/threading.html?highlight=threading# 阅读全文

posted @ 2019-08-07 19:27 miss_xxy

第十篇.3、ython并发编程之多线程理论部分
摘要:一 什么是线程 在传统操作系统中,每个进程有一个地址空间,而且默认就有一个控制线程 线程顾名思义,就是一条流水线工作的过程,一条流水线必须属于一个车间,一个车间的工作过程是一个进程 车间负责把资源整合到一起,是一个资源单位,而一个车间内至少有一个流水线 流水线的工作需要电源,电源就相当于cpu 所以 阅读全文

posted @ 2019-08-07 19:15 miss_xxy

第十篇.2、python并发编程之多进程
摘要:一 multiprocessing模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu_count()查看),在python中大部分情况需要使用多进程。Python提供了multiprocessing。 multiprocessing模块用来开启子进程, 阅读全文

posted @ 2019-08-07 12:23 miss_xxy

第十篇.1、python并发编程之多进程理论部分
摘要:一 什么是进程 进程:正在进行的一个过程或者说一个任务。而负责执行任务则是cpu。 举例(单核+多道,实现多个进程的并发执行): egon在一个时间段内有很多任务要做:python备课的任务,写书的任务,交女朋友的任务,王者荣耀上分的任务, 但egon同一时刻只能做一个任务(cpu同一时间只能干一个 阅读全文

posted @ 2019-08-07 12:09 miss_xxy

第十篇:并发编程
摘要:一 背景知识 顾名思义,进程即正在执行的一个过程。进程是对正在运行程序的一个抽象。 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一。操作系统的其他所有内容都是围绕进程的概念展开的。 所以想要真正了解进程,必须事先了解操作系统,点击进入 PS:即使可 阅读全文

posted @ 2019-08-07 12:07 miss_xxy

网络基础之网络协议篇
摘要:一.操作系统基础 操作系统:(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。 注:计算机(硬件)->os->应用软件 二.网络通信原理 2.1 互联网的本质就是一系列的 阅读全文

posted @ 2019-08-07 12:03 miss_xxy

第九篇:网络编程
摘要:一 客户端/服务器架构 1.硬件C/S架构(打印机) 2.软件C/S架构 互联网中处处是C/S架构 如黄色网站是服务端,你的浏览器是客户端(B/S架构也是C/S架构的一种) 腾讯作为服务端为你提供视频,你得下个腾讯视频客户端才能看它的视频) C/S架构与socket的关系: 我们学习socket就是 阅读全文

posted @ 2019-08-07 12:01 miss_xxy

第八篇:异常处理
摘要:一 什么是异常 异常就是程序运行时发生错误的信号(在程序出现错误时,则会产生一个异常,若程序没有处理它,则会抛出该异常,程序的运行也随之终止),在python中,错误触发的异常如下 而错误分成两种 #语法错误示范一 if #语法错误示范二 def test: pass #语法错误示范三 class 阅读全文

posted @ 2019-08-07 11:47 miss_xxy

元类metaclass
摘要:一 前言 元类属于python面向对象编程的深层魔法,99%的人都不得要领,一些自以为搞明白元类的人其实也只是自圆其说、点到为止,从对元类的控制上来看就破绽百出、逻辑混乱,今天我就来带大家来深度了解python元类的来龙去脉。 笔者深入浅出的背后是对技术一日复一日的执念,希望可以大家可以尊重原创,为 阅读全文

posted @ 2019-08-07 11:44 miss_xxy

shell编程
摘要:1.什么情况下使用Shell 2.学习shell脚本需要用到的知识 1)远程连接工具 Xshll CRT(作业) 2)lINUX的常用命令 熟练掌握 3)三剑客命令熟练 4)vim编辑器熟练 3.如何学好shell编程 环境变量 条件表达式 if判断 for循环 while循环 case语句 数组 阅读全文

posted @ 2019-08-06 19:25 miss_xxy

第七篇:面向对象高级
摘要:一 isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls 的对象 issubclass(sub, super)检查sub类是否是 super 类的派生类 二 反射 1 什么是反射 反射的概念是由Smi 阅读全文

posted @ 2019-08-02 20:52 miss_xxy

面向对象实战
摘要:一 引子 学完了面向对象的基础知识后,很明显你还是不知该如何下手,凡是都得有个章法 此刻有经验的人可能会想到瀑布模型、螺旋模型、迭代开发、敏捷、RUP等一堆软件工程相关的软件开发流程,但对于大部分人来说这些流程仅仅只是项目管理上的流程 本节我们就带大家来了解下,作为一名程序员基于面向对象开发程序的开 阅读全文

posted @ 2019-08-02 20:19 miss_xxy

面向对象之绑定方法与非绑定方法
摘要:一 类中定义的函数分成两大类 一:绑定方法(绑定给谁,谁来调用就自动将它本身当作第一个参数传入): 1. 绑定到类的方法:用classmethod装饰器装饰的方法。 为类量身定制 类.boud_method(),自动将类当作第一个参数传入 (其实对象也可调用,但仍将类当作第一个参数传入) 2. 绑定 阅读全文

posted @ 2019-08-02 20:15 miss_xxy

面向对象之封装
摘要:一 引子 从封装本身的意思去理解,封装就好像是拿来一个麻袋,把小猫,小狗,小王八,还有alex一起装进麻袋,然后把麻袋封上口子。照这种逻辑看,封装=‘隐藏’,这种理解是相当片面的 二 先看如何隐藏 在python中用双下划线开头的方式将属性隐藏起来(设置成私有的) 这种变形需要注意的问题是: 1.这 阅读全文

posted @ 2019-08-02 20:12 miss_xxy

面向对象之多态、多态性
摘要:一 多态 多态指的是一类事物有多种形态 动物有多种形态:人,狗,猪 文件有多种形态:文本文件,可执行文件 二 多态性 一 什么是多态动态绑定(在继承的背景下使用时,有时也称为多态性) 多态性是指在不考虑实例类型的情况下使用实例 在面向对象方法中一般是这样表述多态性:向不同的对象发送同一条消息(!!! 阅读全文

posted @ 2019-08-02 20:09 miss_xxy

面向对象之继承与派生
摘要:一 初识继承 什么是继承 继承是一种创建新类的方式,新建的类可以继承一个或多个父类(python支持多继承),父类又可称为基类或超类,新建的类称为派生类或子类。 子类会“”遗传”父类的属性,从而解决代码重用问题(比如练习7中Garen与Riven类有很多冗余的代码) python中类的继承分为:单继 阅读全文

posted @ 2019-08-02 20:06 miss_xxy

面向对象小练习
摘要:基于面向对象设计一个对战游戏 定义锐雯类: 定义盖文类: 定义装备: 测试交互 r1=Riven('草丛伦') 按照这种思路一点一点的设计类和对象,最终你完全可以实现一个对战类游戏。 阅读全文

posted @ 2019-08-02 19:59 miss_xxy

程序设计思想发展
摘要:概述 1940年以前:面向机器 最早的程序设计都是采用机器语言来编写的,直接使用二进制码来表示机器能够识别和执行的指令和数 据。简单来说,就是直接编写 0 和 1 的序列来代表程序语言。例如:使用 0000 代表 加载(LOAD),0001 代表 存储(STORE)等。 机器语言由机器直接执行,速度 阅读全文

posted @ 2019-08-02 19:43 miss_xxy

第六篇:面向对象
摘要:一 面向对象的程序设计的由来 面向对象设计的由来见概述:http://www.cnblogs.com/linhaifeng/articles/6428835.html 面向对象的程序设计:路飞学院版 上海周末2期面向对象课件下载 二 什么是面向对象的程序设计及为什么要有它 面向过程的程序设计:核心是 阅读全文

posted @ 2019-08-02 19:29 miss_xxy

第五篇:常用模块
摘要:一 time与datetime模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time())”,返回的是float类型。 格式化的时间字符串(Forma 阅读全文

posted @ 2019-08-02 19:23 miss_xxy

第四篇:模块与包
摘要:一 模块介绍 1、什么是模块? 大家之前在编写ATM作业时,思路是先将程序中都需要有哪些功能定义出来,然后在需要用的地方调用即可。 比起之前通篇垒代码的方式,将重复要用的功能定义成函数会让程序更加简洁,这不能不算做是一种进步, 但问题是,随着程序功能越来越多,再将所有的代码都放到一起,程序的组织结构 阅读全文

posted @ 2019-08-02 19:00 miss_xxy

第三篇.6、python基础补充
摘要:''' 不可变:数字,字符串,元组 可变:列表,字典 原子:数字,字符串 容器:列表,元组,字典 直接访问:数字 顺序:字符串,列表,元组 映射访问:字典 ''' #一一对应 a,b,c,d,e='hello' print(e,d) #少一个报错 # a,b,c='hello' #*号的使用 a,* 阅读全文

posted @ 2019-08-01 20:42 miss_xxy

第三篇.5、函数草稿
摘要:什么是函数? 为什么要用函数? 函数的分类:内置函数与自定义函数 如何自定义函数 语法 定义有参数函数,及有参函数的应用场景 定义无参数函数,及无参函数的应用场景 定义空函数,及空函数的应用场景 调用函数 如何调用函数 函数的返回值 函数参数的应用:形参和实参,位置参数,关键字参数,默认参数,*ar 阅读全文

posted @ 2019-08-01 20:37 miss_xxy

第三篇.4、三元表达式、列表推导式、生成器表达式、递归、匿名函数、内置函数
摘要:一 三元表达式、列表推导式、生成器表达式 一 三元表达式 二 列表推导式 三 生成器表达式 四 声明式编程练习题 1、将names=['egon','alex_sb','wupeiqi','yuanhao']中的名字全部变大写 2、将names=['egon','alex_sb','wupeiqi' 阅读全文

posted @ 2019-08-01 20:29 miss_xxy

第三篇.3、迭代器、生成器、面向过程编程
摘要:一 迭代器 一 迭代的概念 二 为何要有迭代器?什么是可迭代对象?什么是迭代器对象? #1、为何要有迭代器? 对于序列类型:字符串、列表、元组,我们可以使用索引的方式迭代取出其包含的元素。但对于字典、集合、文件等类型是没有索引的,若还想取出其内部包含的元素,则必须找出一种不依赖于索引的迭代方式,这就 阅读全文

posted @ 2019-08-01 20:23 miss_xxy

第三篇.2、函数对象、函数嵌套、名称空间与作用域、装饰器
摘要:一 函数对象 一 函数是第一类对象,即函数可以当作数据传递 二 利用该特性,优雅的取代多分支的if 二 函数嵌套 一 函数的嵌套调用 二 函数的嵌套定义 三 名称空间与作用域 一 什么是名称空间? 二 名称空间的加载顺序 三 名字的查找顺序 四 作用域 #1、作用域即范围 - 全局范围(内置名称空间 阅读全文

posted @ 2019-08-01 20:18 miss_xxy

第三篇.1、函数基础
摘要:一 引子 一 为何要用函数之不用函数的问题 二 函数是什么 三 函数分类 二 定义函数 一 如何自定义函数? def auth(user:str,password:str)->int: ''' auth function :param user: 用户名 :param password: 密码 :r 阅读全文

posted @ 2019-08-01 20:11 miss_xxy

第三篇:函数
摘要:一 函数知识体系 二 函数基础 链接:https://www.cnblogs.com/Forever-x/p/11285018.html 三 函数对象、函数嵌套、名称空间与作用域、装饰器 链接:https://www.cnblogs.com/Forever-x/p/11285046.html 四 迭 阅读全文

posted @ 2019-08-01 20:07 miss_xxy

第二篇.3、文件处理
摘要:一 文件操作 一 介绍 计算机系统分为:计算机硬件,操作系统,应用程序三部分。 我们用python或其他语言编写的应用程序若想要把数据永久保存下来,必须要保存于硬盘中,这就涉及到应用程序要操作硬件,众所周知,应用程序是无法直接操作硬件的,这就用到了操作系统。操作系统把复杂的硬件操作封装成简单的接口给 阅读全文

posted @ 2019-08-01 20:04 miss_xxy

导航

levels of contents