- 博客(110)
- 资源 (1)
- 收藏
- 关注
原创 Redis-事务、管道、基数统计法、布隆过滤器
文章目录Redis事务前言事务基本使用Redis中的事务三个阶段开启事务(multi)命令入列执行事务(exec)/放弃事务(discard)Redis管道技术- Pipeline管道技术解决了什么问题管道技术需要注意的事项管道模拟操作总结基数统计算法—HyperLogLog为什么要使用HyperLogLog?HyperLogLog介绍添加元素布隆过滤器编译方式bf.addbf.existsbf.maddbf.mexistsRedis事务前言事务指的是提供一种将多个命令打包,一次性按顺序地执行的机制
2021-04-06 10:32:00
929
原创 Redis-缓存雪崩、缓存穿透、缓存击穿
文章目录缓存雪崩缓存穿透缓存击穿缓存雪崩所谓缓存雪崩就是在某一个时刻,缓存集大量失效,所有流量直接打到数据库上,对数据库造成巨大的压力场景例如电商抢购平台的想象,一般就是比如12点开始,在一点的时候大量key失效,这个时候就会造成缓存雪崩的现象解决方案方案一:加锁/队列加锁/队列;这样虽然能降低数据库压力,但是同时,响应也很慢方案二:缓存标记给每一个缓存数据增加相应的缓存标记,记录缓存的是否失效,如果缓存标记失效,则更新数据缓存方案三:混存过期时间错开缓存穿透所
2021-04-05 17:09:18
593
2
原创 Redis-持久化(RDB、AOF)
文章目录Redis 持久化-RDB持久化的几种方式RDB简介持久化的触发手动触发配置说明配置查询RDB优缺点模拟当数据丢失之后,使用从机的dump.rdb来进行数据恢复Redis持久化-AOF简介持久化查询和设置1. 查询AOF的启动状态2.开启AOF持久化持久化触发自动触发手动触发AOF文件重写什么是AOF重写?AOF重写实现AOF重写流程配置说明优缺点AOF优点AOF缺点Redis 持久化-RDBRedis的读写都是在内存中的,所以它的性能较高,但在内存中的数据会随着服务器的重启而丢失,为了保存
2021-04-05 07:47:13
1174
原创 Redis-主从配置
文章目录Redis主从配置主从概念配置主配置从开启主从服务数据操作Redis主从配置主从概念⼀个master可以拥有多个slave,⼀个slave⼜可以拥有多个slave,如此下去,形成了强⼤的多级服务器集群架构master用来写数据,slave用来读数据,经统计:网站的读写比率是10:1通过主从配置可以实现读写分离配置主修改/etc/redis/redis.conf文件bind 0.0.0.0 或者改为本机ip配置从从机可多台复制etc/redis/redis.conf
2021-03-31 12:44:31
1134
原创 Redis-增删改查
Redis基础介绍随着互联网+大数据时代的来临,传统的关系型数据库已经不能满足中大型网站日益增长的访问量和数据量。这个时候就需要一种能够快速存取数据的组件来缓解数据库服务I/O的压力,来解决系统性能上的瓶颈。数据库的发展历史在互联网+大数据时代来临之前,企业的一些内部信息管理系统,一个单个数据库实例就能满足系统的需求单数据库实例随着系统访问用户的增多,数据量的增大,单个数据库实例已经满足不了系统的读取需求缓存(memcache)+单数据库实例缓存可以缓解系统的读取压力,
2021-03-30 22:52:39
4207
原创 django报错query = query.decode(errors=‘replace‘) AttributeError: ‘str‘ object has no attribute ‘decode
raceback (most recent call last): File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner self.run() File "/usr/lib/python3.6/threading.py", line 864, in run self._target(*self._args, **self._kwargs) File "/home/small-j/.loca
2021-03-15 14:53:52
1740
转载 MySQL数据库-账户管理
文章目录账户管理创建用户修改用户删除用户授予权限查看所有用户创建账户、授权创建账户&授权示例1step1:使用root登录step2:创建账户并授予所有权限step3:退出root的登录step4:使用laowang账户登录示例2权限列表账户管理在生产环境下操作数据库时,绝对不可以使用root账户连接,而是创建特定的账户,授予这个账户特定的操作权限,然后连接进行操作,主要的操作就是数据的crudMySQL账户体系:根据账户所具有的权限的不同,MySQL的账户可以分为以下几种服务
2021-03-15 14:49:20
1216
原创 MySQL5.7数据库-索引优化
文章目录索引优化索引分类回表覆盖索引键表SQL来使用口诀来练习索引优化索引优化不只是单单对复合索引也是对普通索引的一种优化索引分类分类角度索引名称数据结构B+数,Hash索引, B数等存储层面聚簇索引,非聚簇索引逻辑层面主键索引,普通索引,复合索引(MySQL 组合索引和联合索引和复合索引都是一个东西),唯一索引,空间索引等回表当我们执行一条查询语句select * from persion where id=6,因为直接使用的是主键id查询,
2021-02-05 15:45:21
2877
1
原创 MySQ5.7数据库-基准测试&SQL语句分析
文章目录MySQL基准测试什么是基准测试基准测试特点压力测试特点基准测试的目的如何进行基准测试对整个系统进行基准测试MySQL基准测试的常见指标MySQL基准测试之mysqlslap常见参数说明SQL语句分析影响服务器性能的几个方面SQL性能下降原因MySQL常见瓶颈explain分析SQL语句explain是什么?explain能干什么?explain使用explain字段解释id表的读取顺序select_typetablepartitionstypepossible_keyskeykey_len索引长度
2021-02-03 21:06:18
3436
1
原创 MySQL5.7数据库-视图&事务&索引&数据库存储引擎
SQL高级视图视图介绍视图是一种虚拟存在的表,对于使用视图的用户来说基本上是透明的。视图并不在数据库中实际存在,行和列数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的。定义视图视图的目的:方便查询操作,减少复杂的SQL语句,增强可读性。-- 创建视图-- 视图名字一般以v开头,为什么?主要是在查看的时候方便知道这个是视图,主要是起到见名之意create view 视图名字 as select 语句-- 查看视图show tables;-- 删除视图drop vi
2021-02-01 13:32:36
3530
1
原创 MySQL与Python交互
文章目录MySQL与Python交互准备数据分表安装pymysqlPython操作MySQL步骤Connection 对象Cursor对象对象方法python操作mysqlMySQL与Python交互准备数据创建数据库create database if not exists Content;创建数据表-- 创建一个商品 goods 数据表CREATE TABLE `goods` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
2021-01-27 19:28:29
6931
1
原创 MySQL5.7数据库-表连接&子查询&外键
文章目录表连接内连接左连接右连接子查询自关联外键外键介绍创建表时设置外键约束表连接当查询结果的列来源于多张表时,需要将多张表连接成一个大的数据集,再选择合适的列返回mysql这时需要表进行连接内连接内连接仅选出两张表中互相匹配的记录select * from 表1 inner join 表2 on 表1.列 = 表2.列-- 显示学生的所有信息,但只显示班级名称select s.*, c.name from students s inner join classes c on s.i
2021-01-23 16:48:44
5537
3
原创 MySQL5.7数据库-运算&查询&分组&排序&限制
文章目录where&运算符比较运算符逻辑运算符查询模糊查询范围查询空判断常用聚合函数count总数max()最大值min()最小值sum求和avg平均值分组与分组之后的筛选分组分组后的筛选排序限制where&运算符where子句通常结合增删改查使用,用于做筛选的条件。select * from students where id=1;除了上述使用,还可以结合以下操作一起使用比较运算符运算符描述=等于>大于<小于&
2021-01-21 20:20:06
3487
1
原创 MySQL5.7数据库-增删改查操作
文章目录数据库介绍数据库存储数据特点数据库的分类语法基础SQL介绍SQL语句主要分为数据完整性数据类型字符串类型枚举类型日期类型约束SQL语句操作数据库(DDL)数据库连接退出数据库查看已经创建的数据库查看数据库版本创建数据库查看创建数据库的命令查看当前使用的数据库使用数据库删除数据库操作数据表查看当前数据库中所有的表创建表查看表的描述查看表的创建语句练习添加表字段修改表字段删除表字段练习操作数据插入数据整行插入指定列中插入数据指定列中插入多条数据练习修改数据修改数据练习删除数据练习查询数据查询整个表数据查
2021-01-19 14:06:00
4000
原创 基于ARM架构的Mac安装MySQL5.7
文章目录Mac安装MySQL5.7安装ARM版的HomebrewMac ARM安装指定5.7指定版本的MySQL数据库修改mysql数据库密码Mac安装MySQL5.7安装ARM版的Homebrew根据官方规划,ARM 版 Homebrew 必须安装在 /opt/homebrew 路径下,而非此前的 /usr/local/Homebrew。由于官方的安装脚本还未更新,可以通过如下命令手动安装:cd /opt # 切换到 /opt 目录mkdir homebrew # 创建 homebrew 目
2021-01-16 15:07:10
5075
1
原创 Python-多任务总结
文章目录Python-多任务多任务什么是多任务多任务理解线程线程介绍线程方法使用线程完成多任务类的方式创建线程多线程共享全局变量线程同步进程进程定义进程概念进程与程序区别进程方法使用进程完成多任务通过继承Process类创建进程多进程共享全局变量多进程共享全局变量+多进程队列进程池多任务文件夹复制进程与线程区别协程协程与线程差异greenlet的使用gevent的使用最后总结Python-多任务多任务什么是多任务多任务就是可以同时做多件事情就叫多任务多任务理解并发:CPU小于当前的执行的任
2021-01-08 12:16:18
3625
原创 启动Django-Mysql数据库服务出现的问题
启动Django-Mysql数据库服务出现的问题问题一:Watching for file changes with StatReloaderPerforming system checks...System check identified no issues (0 silenced).Exception in thread Thread-1:Traceback (most recent call last): File "/Library/Developer/CommandLineTo
2020-12-30 15:33:43
7786
原创 sqlalchemy.exc.NoSuchModuleError: Can‘t load plugin: sqlalchemy.dialects:MySQL.pyMySQL
flask框架之数据库配置问题config配置文件下报错,代码如下:# -*- coding: utf-8 -*-# @Author: Small-J# @Date : 2020/12/22# 该文件存放数据库配置项USERNAME = 'root'PASSWORD = 'root'HOST = '127.0.0.1'PORT = '3306'DATABASE = 'JobData'DB_URL = 'MySQL+pyMySQL://{}:{}@{}:{}/{}?charset
2020-12-22 12:28:05
9722
1
原创 getatter&属性描述符&迭代器&生成器&元类编程
文章目录__ getatter __ 魔法方法属性描述符Python-迭代器Python-生成器type自定义元类编程__ getatter __ 魔法方法首先会在对象的实例属性中寻找,找不到执行第二步来到对象所在类中查找类属性,如果还找不到执行第三步来到对象的继承链上寻找,如果还找不到执行第四步调用obj.__getattr__方法,如果用户没有定义或者还是找不到,抛出AttributeError异常,属性查找失败!# -*- coding: utf-8 -*-# @Au
2020-12-20 22:22:57
3518
原创 Flask框架之数据交互
文章目录5.1 使用Flask处理表单5.1.1 使用Flask处理通用表单5.1.2 使用Flask-WTF处理表单5.2 使用Flask上传文件5.3 Cookie的使用5.3.1 Cookie的基本概念5.3.2 Cookie的基本使用5.4 Session的使用5.4.1 Session的基本配置5.4.2 Session的基本使用5.1 使用Flask处理表单什么是表单(Form)? 表单是搜集用户数据信息的各种表单元素的集合区域。它的作用是实现用户和服务器的数据交互。通过表单搜集客户端输入的
2020-11-09 18:52:18
5381
1
原创 Flask框架之视图高级技巧
文章目录4.1 app.route与app_url_rule简介4.1.1 app.route的使用4.1.2 add_url_rule的使用4.2 Flask类视图4.2.1 标准类视图4.2.2 基于方法的类视图4.3 Flask装饰器4.3.1 装饰器的定义和基本使用4.3.2 对带参数的函数使用装饰器4.4 蓝图4.1 app.route与app_url_rule简介在Flask应用中,路由是指用户请求的URL与视图函数之间的映射,处理URL和函数之间关系的程序称为路由。Flask框架根据HTT
2020-11-08 15:06:06
4927
原创 Flask框架之Jinja 2模板引擎
文章目录3.6宏的定义及使用3.6.1 宏的定义3.6.2 宏的导入3.6.3 include的使用3.7 set和with语句的使用3.8静态资源文件的加载3.9模板的继承3.6宏的定义及使用Jinja 2中的宏功能有些类似于传统程序语言中的函数,它跟Python中的函数类型,可以传递参数,但是不能有返回值,可以将一些经常用到的代码片段放在宏中,然后把一些不固定的值抽取出来作为一个变量。3.6.1 宏的定义宏(Macro),有声明和调用两个部分。申明一个宏如下:主题结构:{% macro 宏的
2020-11-08 08:36:22
3651
原创 ‘scrapyd-deploy‘ 不是内部或外部命令,也不是可运行的程序或批处理文件 报错的解决!!!
scrapyd-deploy不是内部或外部命令,也不是可运行的程序或批处理文件 报错的解决!!!使用scrapyd进行远程爬虫项目部署时,使用scrapyd-client报错!!!原因:scrapyd和scrapyd-client版本不兼容!直接pip安装的scrapyd版本为1.2.0,scrapyd-client版本为:1.1.0解决办法:安装一个版本和scrapyd相适应的scrapyd-client即可解决!!!(亲测有效)安装命令:pip install scrapyd-client
2020-10-27 01:25:04
3453
原创 最新前程无忧招聘网站数据抓取,并实现数据可视化大屏
文章目录技术点实现的功能描述grequests讲解1.1 grequests简单使用1.2 grequests和request性能对比前程无忧爬虫数据清洗数据可视化热门城市的岗位数据Top10热门行业的用人需求Top10学历分布Python开发工程师可视化界面Python开发工程师福利图技术点grequestspyechartsflaskrebs4实现的功能热门城市的岗位数量Top10热门行业的用人需求Top10学历占比Python开发工程师可视化界面(地图)Python开
2020-10-11 15:30:56
8710
3
转载 Flask + echarts实现数据可视化 jinja2模板变量代码块报错
最近在做一个数据可视化的项目使用的是flask + echarts 一直以来都是使用pycharm直接创建flask项目这几天想自己手写一个flask项目但是问题来了!!!jinja2模板标红了但是运行是没有问题的控制台也没有任何报错信息这个问题纠结了好几天,虽然运行没问题可是一直标红也不舒服下面看我的问题:先来看一下我的项目结构(手写):我使用了Blueprint分包然后在__init__文件中注册run.py是入口文件我的思路是后台查询数据库数据后封装成指定格式通过render_template
2020-09-23 22:39:46
4087
原创 TypeError: Object of type Decimal is not JSON serializable解决办法
在python连接数据库,使用select sum(a) from b的时候求出来的数据类型是Decimal。但是这种格式并不能满足转换为json的格式,所以我们可以对我们得到的数据进行强制类型转换。转换成整型,就能够满足json的格式了。@app.route('/c1')def get_cl_data(): data = utils.get_conn() # data = json.dumps({"confirm": data[0], "suspect": data[1], "heal
2020-09-22 17:02:40
5366
1
转载 出现Uncaught ReferenceError: $ is not defined错误
今天在写ajax请求的时候,出现了Uncaught ReferenceError: $ is not defined报错;$未定义是为什么呢?后来才知道,原因一:你未引用jquery库jquery.min.js文件,或者说路径错误;原因二:忽略了HTML中
2020-09-21 19:14:17
3501
1
原创 Pyecharts数据可视化
文章目录Pyecharts第三方数据可视化Pyecharts 介绍特性pyecharts 安装检查版本的安装绘制Pyecharts的三种方式Pyecharts绘制图表:生成HTML在Jupyter notebook 上直接展示Pyecharts生成图片全局配置项InitOpts 初始化配置项TitleOpts 标题配置项LegendOpts 图例配置项TooltipOpts 提示框配置项ToolboxOpts 工具项配置AxisOpts 坐标轴配置项DatazoomOpts 区域缩放配置项系列配置项Labe
2020-08-02 15:30:00
15454
1
原创 Django----ModelForm&文件上传
文章目录ModelFormModel写法以及自定义错误信息save方法文件上传前端HTML代码实现后端的代码实现使用模型的方式来处理上传的文件指定MEDIA_ROOT和MEDIA_URL限制文件的文件拓展名ModelFormModel写法以及自定义错误信息大家在写表单的时候,会发现表单中的Field和模型中的Field基本上是一模一样的,而且表单中需要验证的时候,也就是我们模型中需要保存的数据,我们可以在表单中可以从from django import froms下的froms.ModelForm来进
2020-07-21 23:04:51
7160
2
原创 Django----表单
表单HTML表单Django中的表单Django中的表单使用流程表单渲染格式常用的FieldCharFieldEmailFieldIntegerFieldIntegerFieldURLField常用的验证器自定义的验证器提取错误信息HTML表单单纯从前端的html来说,表单是用来提交数据给服务器的,不管后台的服务器用的是Django还是PHP语言还是其他语言。只要input标签放在form标签中,然后再添加一个提交按钮,那么以后点击提交按钮,就可以将input标签对于的值提交给服务器了。Django中
2020-07-19 22:09:49
4390
原创 Django----高级视图
文章目录Django限制请求方法常用的请求method限制请求装饰器页面重定向永久重定向临时重定向HttpRequest对象WSGIRequest对象WSGIRequest对象常用属性WSGIRequest对象常用方法HttpResponse对象常用属性常用方法JsonResponse类类视图ViewTemplateViewListViewPaginator 和Page类Paginator常用属性和方法Page常用属性和方法Django限制请求方法常用的请求methodGET请求:GET请求一般用来
2020-07-14 23:54:18
4703
原创 Django----QuerySet的方法&ORM迁移模型
文章目录QuerySet的方法相对应的模型数据相对应的运行SQL文件数据集QuerySet APIQuerySet 方法filterexcludeannotateorder_byvaluesvalues_listupdatecreateget_or _createexists切片操作将QuerySet转移为SQL去执行ORM模型练习使用之前学到过的操作实现下面的查询操作QuerySet的方法相对应的模型数据from django.db import modelsclass Student(mode
2020-07-11 16:07:52
4058
原创 Django----外键和表&查询操作&聚合函数&F表达式&Q表达式
文章目录外键和表的关系当使用另外APP外键时引用自身做为外键外键操作查询操作exactiexactcontainsicontaionsin外键和表的关系在MySQL中,表有两种引擎,一种是InnoDB,另外一种是myisam。如果使用的是InnoDB引擎,是支持外键约束的。外键的存在使得ORM框架在处理表关系的时候异常的强大。因此这里我们首先来介绍下外键在Django中使用。class ForeignKey(ForeignObject): def __init__(self, to, on_dele
2020-07-03 17:15:05
4777
原创 Django-----常用模型&字段&Meta配置
文章目录模型常用属性AutoFieldBigAutoFieldBooleanFieldNullBooleanFieldCharFieldFloatFieldIntegerFieldBigIntegerFieldPositiveIntegerFieldSmallIntegerFielPositiveSmallIntegerFieldEmailFieldTextFieldUUIDFieldFileFieldImageFieldURLFieldDateTimeFieldField的常用参数nulldb_colum
2020-06-30 15:33:23
4144
原创 Django----ORM增删改查
ORM的增删改查from django.shortcuts import renderfrom django.http import HttpResponse# 从模型中导入这个类from .models import Book添加数据def add_book(request): """增加图书""" # 添加数据的时候要对应着从模型中导入的类数据字段的一致性 # 实例化对象,并添加数据 book = Book(book_name='利用Python进行数据分
2020-06-28 14:56:28
3599
原创 Django---数据库(一)
文章目录操作数据库MySQL驱动程序安装Django配置连接数据库在Django中操作数据库图书管理系统首页/index.html添加图书/add_book.html删除图书/book_detailApp/front模板文件操作数据库MySQL驱动程序安装 我们使用Django来操作MySQL,实际上底层还是通过Python来操作的。因此我们想要用Django来操作MySQL,首先还是需要安装一个驱动程序。在Python3中,驱动程序有多种选择。比如有pymysql以及mysqlclient等。这里
2020-06-27 15:45:20
4972
3
原创 Django---模板
文章目录模板介绍DTL与普通的HTML文件的区别渲染模板模板查找路径模板变量DTL模板语法注意常用标签iffor inforloopfor in empty模板常用的过滤器为什么需要过滤器?模板语法过滤器导入addcutdatedefaultsafe模板结构优化引入模板模板继承模板继承注意点加载静态资源文件模板介绍在之前的章节中,视图函数只是直接返回文本,而在实际生产环境中其实很少这样用,因为实际的页面大多是带有样式的HTML代码,这可以让浏览器渲染出非常漂亮的页面。DTL是Django
2020-06-22 18:36:30
5285
原创 Django URL与视图
文章目录视图URL映射URL添加参数URL中添加多个参数时查询字符串的方式传递参数Django内置的转换器URL命名和反转URL应用命名空间视图在Django中,通过浏览器去请求一个页面时,使用视图函数来处理这个请求的,视图函数处理之后,要给浏览器返回页面内容。视图一般都写在app的views.py中。并且视图的第一个参数永远都是request(一个 HttpRequest)对象。这个对象存储了请求过来的所有信息,包括携带的参数以及一些头部信息等。在视图中,一般是完成逻辑相关的操作。视图函数的返回结果必
2020-06-17 19:42:36
4643
原创 动态渲染页面爬取
04- 动态渲染页面爬取文章目录04- 动态渲染页面爬取4-1 Selenium的安装4 -2 Selenium相关链接4-3 pip 安装4-4 ChromeDriver 的安装4-5 ChromeDriver 的相关链接4-6 ChromeDriver环境配置4-7 Selenium声明浏览器对象4-8 Selenium访问页面4-9 Selenium查找节点4-10 Selenium节点交互4-11 Selenium动作链4-12 Selenium执行JavaScript4-13 Sele
2020-06-09 17:26:35
4374
原创 Django模型类与后台管理
文章目录模型类模型类设计生成迁移文件执行迁移生成表通过模型类操作数据表后台管理1.本地化2.创建管理员3. 管理员登陆网址4.注册模型类5.自定义表单模型类模型类设计在应用models.py中设计模型类,在设计类的过程中必须继承于models.Model这个类设计出一个BookInfo类扩展点 : Models.ForeignKey可以建立两个模型类之间一对多的关系,Django在生成表的上号,就会在多的表中创建一列作为外键,建立两个表之间一对多的关系。models.pyfrom djan
2020-06-09 17:23:41
4691
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人