摘要:缓存常见问题 缓存雪崩 缓存穿透 缓存占用过多内存 缓存雪崩 缓存雪崩指的是在某一个时间点里边, 有大量的Key过期, 然后引起大量请求同时访问到数据库 针对这个问题, 我们可以把Key的过期时间随机化或等差划分, 反正就是要消除掉大量缓存同时失效的情况. 缓存穿透 缓存穿透指的是访问到了缓存当中不
阅读全文
摘要:HTTP协议 HTTP是一个应用层协议, 由请求和响应构成, 是一个标准的客户端服务器模型. 基于HTTP协议的CS模式的信息交换过程, 它分四个过程: 建立连接、发送请求信息、发送响应信息、关闭连接. 如图 我们可以看到, 每处理一个请求都需要建立与断开TCP连接, 我们称这样的连接为非持久连接.
阅读全文
摘要:在处理一个页面请求时我们一般会需要用到一下信息: 1. 请求头, 请求头里边包含了很多的信息如COOKIE、URI等. 可以协助我们处理请求 2. 提交的参数, 用户通过GET/POST请求提交上来的参数. 3. 根据1 2的输入, 进行自定义的处理过程 4. 输出html页面, 或json数据(A
阅读全文
摘要:Flask Flask是什么? Flask是一个使用 Python 编写的轻量级 Web 应用框架, 让我们可以使用Python语言快速搭建Web服务, Flask也被称为 "microframework" ,因为它使用简单的核心, 用 extension 增加其他功能 为什么选择Flask? 我们
阅读全文
摘要:函数的意义 定义和调用规则 定义函数 从def所在行开始 直至函数所在的最后1行 函数注释: 函数里边第一个注释块 help()会返回函数的注释 函数返回值: return 所返回的值(默认为None) 调用函数: send_mail() | result = send_mail() 接收返回值:
阅读全文
摘要:前言 本文中代码运行的python版本一律采取2.7.13 科普: 经典类:classic class 新式类:new style class 1. python2.2 之前并没有新式类 2. python2.2 2.7 新式类与经典类并存, 默认使用经典类, 除非显式继承object 3. pyt
阅读全文
摘要:面向对象的基本特点 封装 继承 多态 基本概念 类(Class) :Humen 对象(Object):数据成员:xiaoming.name|age|hight|weight,方法:xiaoming.__init__|walk|sleep 实例( Instance ):xiaoming 类变量(Cla
阅读全文
摘要:装饰器作用:在不改变原代码的情况下增强原代码的功能 装饰器返回的是可调用的(函数)对象,可调用的(函数)对象,可调用的(函数)对象。 判断函数是否为闭包可通过func的__closure__查看,如里边带__cell__元素,那么可以认为这个函数是闭包. 而__cell__里边包含着函数内部所引用的
阅读全文
摘要:gc 回收机制 gc 主要由以下3个部分组成 1. 引用计数 2. 标记 删除 3. 分代回收 引用计数 对象的引用计数可以通过 sys.getrefcount(object)得到 引用数指的是对象被引用的次数,一般通过创建变量,变量绑定来增加, 标记 删除 引用计数不是万能的,在一些特定的情况下,
阅读全文
摘要:为什么需要super 在python没有引入super之前, 如果需要在子类中引用父类的方法, 一般写法如下: 这样看好像没什么问题, 就算没有super也能正常调用父类的方法, 但是如果有一天Father类需要修改类名为Father1, 那么子类Child中也必须跟着修改. 想象下如果一个类有很多
阅读全文
摘要:环境 master: vertica1 172.16.1.234 slave1: vertica2 172.16.1.235 slave2: vertica3 172.16.1.236 postgresql: 172.16.0.80 版本: jdk: 1.8 Hadoop: 2.8.3 "下载链接"
阅读全文
摘要:传统开发 瀑布模型 优点: 瀑布模型中把开发过程细分成多个步骤, 每个人各司其职, 开发人员只需按照文档完成需求即可 缺点: 需要编写过多的文档 开发周期长,每个步骤都需要等待上一个步骤完成后才可 以开展工作 需求响应慢,每有一个新需求,都需要完整地走一遍流程 用户没有参与开发过程,不能很好地知道开
阅读全文
摘要:1. 添加env.py文件 2. 添加backend.py文件 3. 修改setting.py配置 env.py文件与backend.py文件添加到app目录下即可 env.py backend.py settings.py
阅读全文
摘要:查看命令 查数据 1. 同时使用order by 与where子句时, order by子句应放于where子句后 2. AND 与 OR 同时使用时, 先计算AND, 若想先计算OR 可以() 3. group by 必须出现在where子句之后, 在order by子句之前
阅读全文
摘要:Redis Redis支持五种数据类型: string(字符串) hash(哈希) list(列表) set(集合) zset(有序集合) String string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。string类型是二进制安全的
阅读全文
摘要:saltstack returner 在默认情况下master远程操作minion执行的命令, 执行的结果会返回到master终端显示出来, 但是saltstack 提供了接口可以输出到其他的系统, 如mysql, redis, postgresql等 收集minion命令执行结果有2种方式: 1.
阅读全文
摘要:前言 sls文件作为saltstack中重要的一环,是必须掌握的 入门篇 放在入门篇的开始,带大家来了解一下sls的执行顺序 这是一个执行sls的命令,那么这个命令会读取那些文件呢? 1. 遍历saltstack配置文件里边的file_roots 2. 寻找file_roots 里边的nginx目录
阅读全文
摘要:前言 在日常工作中,我们经常会用saltstack来分发文件,但是如果稍有不慎就会不小心覆盖掉之前不想修改的文件,这样我们就需要回滚,但是又不知道具体被修改了那些地方,那么我们就需要一个备份的功能,每次分发文件时,如果有文件被修改,那么就将文件备份到指定目录,这样就算出错,我们也可以把原文件替换回去
阅读全文
摘要:命令格式: salt [options] '' [arguments] salt help [option] 可自行看说明 target 匹配模式 模块方法 如需更详细的了解,请参考 "官方文档" (自行FQ) sys.doc 查看模块的文档 sys.list_modules 列出有哪些可用模块 s
阅读全文
摘要:前言 saltstack 对比 ansible 最大的不同就是saltstack使用的是c/s架构,即要安装minion才能访问客户端,而ansible则是使用ssh协议访问.不得不说,有一部分人就是因为觉得saltstack需要安装客户端,感觉很麻烦而选用了ansible.那么下面来说说salt如
阅读全文
摘要:安装环境 本实验在centos7.2环境下执行 安装pip 安装pyenv virtualenv 安装Python3.6 编译安装vim 编译安装clang 安装k vim 配置
阅读全文