02 2021 档案

摘要:1 redis其他 # 1 双写一致性,redis和mysql数据同步,方案 1 先更新数据库,再更新缓存(一般不用) 2 先删缓存,再更新数据库(在存数据的时候,请求来了,缓存不是最新的) 3 先更新数据库,再删缓存(推荐用) # 2 缓存更新策略 - LRU/LFU/FIFO算法剔除 -maxm 阅读全文
posted @ 2021-02-27 21:58 我也想18岁 阅读(79) 评论(0) 推荐(0) 编辑
摘要:一 布隆过滤器简介 bloomfilter:是一个通过多哈希函数映射到一张表的数据结构,能够快速的判断一个元素在一个集合内是否存在,具有很好的空间和时间效率。(典型例子,爬虫url去重) 原理: BloomFilter 会开辟一个m位的bitArray(位数组),开始所有数据全部置 0 。当一个元素 阅读全文
posted @ 2021-02-27 21:34 我也想18岁 阅读(113) 评论(0) 推荐(0) 编辑
摘要:1 redis持久化 # 快照:某时某刻数据的一个完成备份, -mysql的Dump -redis的RDB # 写日志:任何操作记录日志,要恢复数据,只要把日志重新走一遍即可 -mysql的 Binlog -Redis的 AOF 1.1 RDB # 触发机制-主要三种方式 -save:客户端执行sa 阅读全文
posted @ 2021-02-26 22:01 我也想18岁 阅读(58) 评论(0) 推荐(0) 编辑
摘要:1 高级api使用 1.1 慢查询(假设redis性能不高了,如何取排除) 慢查询指的是命令执行时长比较长的查询。通过slowlog get命令获取慢查询日志;通过slowlog len命令获取慢查询日志的长度;通过slowlog reset命令清理慢查询日志。通过slowlog-log-slowe 阅读全文
posted @ 2021-02-25 23:04 我也想18岁 阅读(82) 评论(0) 推荐(0) 编辑
摘要:1 redis安装和配置 #下载 wget http://download.redis.io/releases/redis-5.0.7.tar.gz #解压 tar -xzf redis-5.0.7.tar.gz #建立软连接 ln -s redis-5.0.7 redis cd redis mak 阅读全文
posted @ 2021-02-25 23:02 我也想18岁 阅读(123) 评论(0) 推荐(0) 编辑
摘要:1 redis应用映射外部目录 # 部署redis,把配置文件和数据目录映射出来 # 操作步骤 -1 mkdir /reids /redis/conf /redis/data -2 vim /redis/conf/redis.conf # 配置文件 bind 0.0.0.0 daemonize NO 阅读全文
posted @ 2021-02-23 13:52 我也想18岁 阅读(2894) 评论(0) 推荐(0) 编辑
摘要:1 docker跟传统虚拟机的比较 0 各种软件用什么语言写的 zabbix(监控软件):php ansible(批量管理主机,执行命令,无angent):python openstack(云计算,管理虚拟机):python jekins(ci/di):自动化部署,java salstack(批量管 阅读全文
posted @ 2021-02-20 13:36 我也想18岁 阅读(3191) 评论(0) 推荐(0) 编辑
摘要:由于项目在注册、登录、找回密码 时需要发送短信验证的功能,我们使用腾讯云短信做。 为什么要用腾讯云短信呢? 因为注册就送 100条免费短信 的额度。哈哈哈哈,发短信的功能你就不用花钱了。 1.注册腾讯云 & 开通云短信 1.1 注册并认证 注册一个腾讯云账户,腾讯云中提供了很多功能:云服务器、云存储 阅读全文
posted @ 2021-02-18 17:30 我也想18岁 阅读(4594) 评论(0) 推荐(0) 编辑
摘要:sql查询 1.Where约束条件 1. select * from table where id >=1 and id <=9; 2. select * from table where id between 3 and 9; 3. select * from table where id in 阅读全文
posted @ 2021-02-18 09:21 我也想18岁 阅读(3266) 评论(0) 推荐(0) 编辑
摘要:一.数据库连接池 pymsql链接数据库 import pymysql conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='123456', db='s8day127db') cursor = conn.c 阅读全文
posted @ 2021-02-17 20:15 我也想18岁 阅读(3292) 评论(0) 推荐(0) 编辑
摘要:一.flask-script 用于实现类似于django中 python3 manage.py runserver ...类似的命令 安装:pip3 install flask-script 1.1使用 from flask_script import Manager app = Flask(__n 阅读全文
posted @ 2021-02-17 20:08 我也想18岁 阅读(3277) 评论(0) 推荐(0) 编辑
摘要:1.1 蓝图的基本使用 在我的flask中,我们可以利用蓝图对程序目录的划分。 思考如果我们有很多个视图函数,比如下面这样我们是不是应该抽取出来专门的py文件进行管理呢? from flask import Flask app = Flask(__name__) @app.route('/login 阅读全文
posted @ 2021-02-17 14:35 我也想18岁 阅读(3674) 评论(0) 推荐(0) 编辑
摘要:1. cookie的使用 1.设置cookie(django 的cookie是通过responser来存放的,flask也是) response = make_response(render_template('index.html')) response.set_cookie('key', 'va 阅读全文
posted @ 2021-02-17 13:16 我也想18岁 阅读(3249) 评论(0) 推荐(0) 编辑
摘要:1视图 1.1 函数FBV @app.route和app.add_url_rule参数: rule, URL规则 view_func, 视图函数名称 defaults = None, 默认值, 当URL中无参数,函数需要参数时,使用defaults = {'k': 'v'} 为函数提供参数 endp 阅读全文
posted @ 2021-02-17 13:04 我也想18岁 阅读(3232) 评论(0) 推荐(0) 编辑
摘要:一 基本使用 二 配置文件 三 路由系统(url_for,自定义过滤url) 四 模版(重定向,jinja2模板语法) 五 视图,请求,响应 六 session,cookie,flask-session 七 请求扩展,中间件 八 蓝图,多app使用 九 闪现,与g对象,信号 十 数据库链接池 、wt 阅读全文
posted @ 2021-02-16 23:01 我也想18岁 阅读(3304) 评论(0) 推荐(0) 编辑
摘要:1 闪现 Flask 提供了一个非常简单的方法来使用闪现系统向用户反馈信息。闪现系统使得在一个请求结束的时候记录一个信息,然后在且仅仅在下一个请求中访问这个数据,强调flask闪现是基于flask内置的session的,利用浏览器的session缓存闪现信息。所以必须设置secret_key。 1. 阅读全文
posted @ 2021-02-16 22:55 我也想18岁 阅读(3265) 评论(0) 推荐(0) 编辑
摘要:04-01 模板 1 重定向 1.1 什么是重定向? 重定向,顾名思义,就是重新定向到一个新的位置,比如我们在浏览器的页面自动跳转到了另一个页面,又比如访问了一个页面,然后观察网址之后并不是我们输入的网址,这个过程就是重定向完成的。 1.2 为什么要有重定向? http状态码应用场景优势 暂时性重定 阅读全文
posted @ 2021-02-16 22:53 我也想18岁 阅读(3269) 评论(0) 推荐(0) 编辑
摘要:我和小宇早恋了,我们家住隔壁。 一、编码与电路——信号的转换 晚上父母会把手机没收,但我们还想继续聊天,又不敢发出声音,于是我们想到了这个办法... 我们把所有的中文都用灯泡的亮灭组合来表示,同时约定好每隔一秒读取一次灯泡的状态并记录下来,这是我们的暗号。 我:亮亮灭灭亮 喜:灭亮亮灭灭 欢:亮灭亮 阅读全文
posted @ 2021-02-16 12:06 我也想18岁 阅读(3384) 评论(0) 推荐(0) 编辑
摘要:02-01 详解url 1 什么是url? url是统一资源定位符(Uniform Resource Locator的简写),对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理 阅读全文
posted @ 2021-02-13 22:32 我也想18岁 阅读(3413) 评论(0) 推荐(0) 编辑
摘要:一. 配置文件 1. 三种基本配置 # 第一种方式 # app的配置文件全在config字典中,但是有一些常用的,比如debug,会直接提到app这一层 app.debug = True app.config['DEBUG'] = False # 第二种方式 ''' # settings.py 注意 阅读全文
posted @ 2021-02-13 22:26 我也想18岁 阅读(3409) 评论(0) 推荐(0) 编辑
摘要:1. 创建flask框架主程序 名字可以是app.py/run.py/main.py/index.py from flask import Flask app = Flask(__name__) @app.route('/') def index(): return 'Hello World' if 阅读全文
posted @ 2021-02-13 22:12 我也想18岁 阅读(3349) 评论(0) 推荐(0) 编辑
摘要:一. 请求扩展 1. before_request 作用: 类比django中间件中的process_request,在请求到来执行路由函数之前先执行. 但是如果有多个顺序是从上往下执行. 应用: 基于它做用户登录认证 注意: 如果before_request的返回值不是None的清空下, 返回的而 阅读全文
posted @ 2021-02-13 21:58 我也想18岁 阅读(3359) 评论(0) 推荐(0) 编辑
摘要:python魔法方法 源码里面经常会用反射和魔法方法,学习他,灵活运用他更能装杯 1. __str__ 打印的时候触发 2.__cal__ 对象加()时触发 3. __getattr__(self,key) obj.key时触发 4. __setattr(self,key,val): obj.key 阅读全文
posted @ 2021-02-11 21:51 我也想18岁 阅读(3331) 评论(0) 推荐(0) 编辑
摘要:Flask之全局的request,每次请求不一样的,是如何实现的??? 了解flask的都知道,每次请求request的对象,是不一样的,但request是全局对象,内部怎么做到的?在我们请求的时候,uwgsi会起一个线程,然而线程之间数据是可以共享的 ,flask是这样的思想,根据线程号,假设有一 阅读全文
posted @ 2021-02-11 21:40 我也想18岁 阅读(3360) 评论(0) 推荐(0) 编辑
摘要:关于python一切皆对象的理解 1. 关于python传递参数的方式(值传递和引用传递): python是一些皆对象的,关于传参,就是python的对象传进去,就是对象引用传递,但是python有可变类型和不可变类型,这是在其他语言没有的概念,当传递对象是不可变类型,就像其他语言的值传递,当对象是 阅读全文
posted @ 2021-02-10 22:21 我也想18岁 阅读(3532) 评论(0) 推荐(0) 编辑
摘要:python生成依赖包的方式 1.生成出来的很杂(在虚拟环境使用) 1. 生成 pip freeze > requirements.txt 2. 安装 pip3 install -r requirements.txt 补充: pip list 查看已经安装的包 2.生成出来的比较精简 1.安装:pi 阅读全文
posted @ 2021-02-10 21:40 我也想18岁 阅读(3664) 评论(0) 推荐(0) 编辑
摘要:1、要安装Redis,首先要获取安装包。Windows的Redis安装包需要到以下GitHub链接找到。链接:https://github.com/MSOpenTech/redis。打开网站后,找到Release,点击前往下载页面。 2、在下载网页中,找到最后发行的版本(此处是3.2.100)。找到 阅读全文
posted @ 2021-02-08 16:44 我也想18岁 阅读(4039) 评论(0) 推荐(0) 编辑
摘要:Linux下环境变量配置方法梳理(.bash_profile和.bashrc的区别) 在linux系统下,如果下载并安装了应用程序,在启动时很有可能在键入它的名称时出现"command not found"的提示内容。如果每次都到安装目标文件夹内,找到可执行文件 来进行操作就太繁琐了,这种情况下就涉 阅读全文
posted @ 2021-02-08 15:39 我也想18岁 阅读(3360) 评论(0) 推荐(0) 编辑
摘要:虚拟环境的搭建 优点 1、使不同应用开发环境相互独立 2、环境升级不影响其他应用,也不会影响全局的python环境 3、防止出现包管理混乱及包版本冲突 windows 安装 # 建议使用pip3安装到python3环境下 pip3 install virtualenv pip3 install vi 阅读全文
posted @ 2021-02-08 15:31 我也想18岁 阅读(3351) 评论(0) 推荐(0) 编辑
摘要:1.Linux启动流程 CentOS6启动级别 CentOS6 VS Centos7开机启动流程图解 2.Linux运行级别 1.什么是运行级别,运行级别就是操作系统当前正在运行的功能级别 System V init运行级别systemd目标名称作用 0 runlevel0.target, powe 阅读全文
posted @ 2021-02-06 21:27 我也想18岁 阅读(3385) 评论(0) 推荐(0) 编辑
摘要:.介绍 1.什么是进程 比如: 开发写的代码我们称为程序,那么将开发的代码运行起来。我们称为进程。 总结一句话就是: 当我们运行一个程序,那么我们将运行的程序叫进程。 PS1: 当程序运行为进程后,系统会为该进程分配内存,以及进程运行的身份和权限。 PS2: 在进程运行的过程中,系统会有各种指标来表 阅读全文
posted @ 2021-02-06 21:25 我也想18岁 阅读(3419) 评论(0) 推荐(0) 编辑
摘要:1.RPM基本概述 1.什么是rpm? RPM全称 RedHat Package Manager 缩写,由红帽开发用于软件包的安装升级卸载与查询 2.rpm包名组成部分? RPM包命名以-将软件分成了若干部分bash-4.2.46-28.el7.x86_64.rpm bash:软件名 4.2.46- 阅读全文
posted @ 2021-02-06 21:23 我也想18岁 阅读(3340) 评论(0) 推荐(0) 编辑
摘要:1.文件打包与压缩 1.什么是文件压缩? 将多个文件或目录合并成为一个特殊的文件。比如: 搬家…脑补画面 img. 2.为什么要对文件进行压缩? 当我们在传输大量的文件时,通常都会选择将该文件进行压缩,然后在进行传输。 首先:压缩后的文件会比压缩前的文件小。一个28G的文件夹压缩后能达到6G 其次: 阅读全文
posted @ 2021-02-06 21:19 我也想18岁 阅读(3327) 评论(0) 推荐(0) 编辑
摘要:1.权限基本概述 1.什么是权限? 我们可以把它理解为操作系统对用户能够执行的功能所设立的限制,主要用于约束用户能对系统所做的操作,以及内容访问的范围,或者说,权限是指某个特定的用户具有特定的系统资源使用权力。 2.为什么要有权限? 因为系统中不可能只存在一个root用户,一定会存在多个用户,为了保 阅读全文
posted @ 2021-02-06 21:15 我也想18岁 阅读(3329) 评论(0) 推荐(0) 编辑
摘要:1.用户基本概述 1.什么是用户? 用户指的是能够正常登录Linux或Windows系统(可以理解为你租了房子,能够正常入驻) F:那Linux与Windows系统的用户有什么区别? Q:本质都是登陆系统,只不过Linux支持多个用户同时登陆。 F:难道Windows就不算多用户操作系统吗? Q:其 阅读全文
posted @ 2021-02-06 21:14 我也想18岁 阅读(3616) 评论(0) 推荐(0) 编辑
摘要:1.VIM基本概述 1.什么是VIM? vi和vim是Linux下的一个文本编辑工具。(可以理解为windows的记事本,或word文档) 2.为什么要使用VIM? 因为Linux系统一切皆为文件,而我们工作最多的就是修改某个服务的配置(其实就是修改文件内容)。 也就是说如果没有vi/vim,我们很 阅读全文
posted @ 2021-02-06 20:45 我也想18岁 阅读(3620) 评论(0) 推荐(0) 编辑
摘要:1.文件管理概述 1.Bash Shell对文件进行管理 谈到Linux文件管理,首先我们需要了解的就是,我们要对文件做些什么事情? 其实无非就是对一个文件进行、创建、复制、移动、查看、编辑、压缩、查找、删除、等等 例如 : 当我们想修改系统的主机名称,是否应该知道文件在哪,才能去做对应的修改? 2 阅读全文
posted @ 2021-02-06 20:43 我也想18岁 阅读(3353) 评论(0) 推荐(0) 编辑
摘要:1.什么是Bash shell(壳) Bash Shell是一个命令解释器,它在操作系统的最外层,负责用户程序与内核进行交互操作的一种接口,将用户输入的命令翻译给操作系统,并将处理后的结果输出至屏幕。 通过xshell连接,就是打开了一个bash程序的窗口,不能点鼠标,只能输入命令 当我们使用远程连 阅读全文
posted @ 2021-02-06 20:39 我也想18岁 阅读(3316) 评论(0) 推荐(0) 编辑
摘要:Linux虚拟机安装 inux 分区结构为树结构, windows 为森bai林结构,所以有duC盘D盘之类的, 而zhilinux /分区就是根分区, swap可以理dao解为虚拟内存, /boot 这是个目录, 可以分成一个分区,然后挂载到/boot目录, 也可以只用一个/分区, 里面会有boo 阅读全文
posted @ 2021-02-06 20:36 我也想18岁 阅读(3242) 评论(0) 推荐(0) 编辑
摘要:零 什么是Linux Linux:和我们常见的Windows一样,都是操作系统,但不同的是:Windows: 收费,不开源,主要用于日常办公、游戏、娱乐多一些。Linux: 免费,开源,主要用于服务器领域,性能稳定,安全。例如:淘宝、百度、腾讯等互联网公司,他们使用的服务器全都是 Linux 系统。 阅读全文
posted @ 2021-02-06 20:34 我也想18岁 阅读(3265) 评论(0) 推荐(0) 编辑
摘要:一 介绍 原来scrapy的Scheduler维护的是本机的任务队列(存放Request对象及其回调函数等信息)+本机的去重队列(存放访问过的url地址) 所以实现分布式爬取的关键就是,找一台专门的主机上运行一个共享的队列比如Redis,然后重写Scrapy的Scheduler,让新的Schedul 阅读全文
posted @ 2021-02-01 21:23 我也想18岁 阅读(3297) 评论(0) 推荐(0) 编辑
摘要:一 介绍 Scrapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速、简单、可扩展的方式从网站中提取所需的数据。但目前Scrapy的用途十分广泛,可用于如数据挖掘、监测和自动化测试等领域,也可以应用在获取API所返回的数据(例如 Amazon As 阅读全文
posted @ 2021-02-01 21:20 我也想18岁 阅读(3313) 评论(0) 推荐(0) 编辑
摘要:一 简介 MongoDB是一款强大、灵活、且易于扩展的通用型数据库1、易用性 MongoDB是一个面向文档(document-oriented)的数据库,而不是关系型数据库。不采用关系型主要是为了获得更好得扩展性。当然还有一些其他好处,与关系数据库相比,面向文档的数据库不再有“行“(row)的概念取 阅读全文
posted @ 2021-02-01 21:18 我也想18岁 阅读(3546) 评论(0) 推荐(0) 编辑