自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Django设置允许跨域访问

安装django-cors-headers pip install django-cors-headers 修改settings.py INSTALLED_APPS = [ ...... 'corsheaders', ...... ] MIDDLEW...

2020-06-30 17:41:04 1835 0

原创 如何 新建Vue项目

首先:先从nodejs.org中下载nodejs 双击安装,在安装界面一直Next 直到Finish完成安装。 打开控制命令行程序(CMD),检查是否正常 使用淘宝NPM 镜像 大家都知道国内直接使用npm 的官方镜像是非常慢的,这里推荐使用淘宝 NPM 镜像。 $ npm inst...

2020-06-23 16:50:41 5589 0

原创 mysql 的引擎和事务

mysql 数据表引擎有哪些? MyISAM、InnoDB、HEAP、BOB,ARCHIVE,CSV等。 MyISAM:成熟、稳定、易于管理,快速读取。一些功能不支持(事务等),表级锁。 InnoDB:支持事务、外键等特性、数据行锁定。空间占用大,不支持全文索引等(5.6.4以后支持全文索引)。 ...

2020-06-19 11:26:32 6173 0

原创 mysql的自动提交的设置

问题1 : 如何查看mysql的自动提交的设置? select @@autocommit; 查看默认提交的状态是否是自动提交 0手动提交 1 自动提交 问题2 :怎么设置autocommit; set @@autocommit=0; 设置的是本次mysql 窗口的自动提交取消,不影响别的连接的自...

2020-06-18 15:35:25 6167 0

原创 mysql的事务

事务在django中的使用 什么叫做事务 InnoDB事务原理 事务(Transaction)是数据库区别于文件系统的重要特性之一,事务会把数据库从一种一致性状态转换为另一种一致性状态。 在数据库提交时,可以确保要么所有修改都已保存,要么所有修改都不保存。 所谓事务,它是一个操作序列,这些操作要...

2020-06-18 15:27:01 6162 0

原创 mysql中的锁(悲/乐观锁结合事务的使用)

锁分类 按操作划分:DML锁,DDL锁 按锁的粒度划分:表级锁、行级锁、页级锁 按锁级别划分:共享锁、排他锁 按加锁方式划分:自动锁、显示锁 按使用方式划分:乐观锁、悲观锁 乐观锁实现方法 每次获取商品时,不对该商品加锁。 在更新数据的时候需要比较程序中的库存量与数据库中的库存量是否相等,如...

2020-06-18 15:23:11 5906 0

原创 阻塞非阻塞和同步异步的区别 小例子

老张爱喝茶,废话不说,煮开水。 出场人物:老张,水壶两把(普通水壶,简称水壶;会响的水壶,简称响水壶)。 1 老张把水壶放到火上,立等水开。(同步阻塞) 老张觉得自己有点傻 2 老张把水壶放到火上,去客厅看电视,时不时去厨房看看水开没有。(同步非阻塞) 老张还是觉得自己有点傻,于是变高端了,买了把...

2020-06-18 15:17:30 6160 0

原创 select、poll、epoll简介

epoll跟select都能提供多路I/O复用的解决方案。在现在的Linux内核里有都能够支持,其中epoll是Linux所特有,而select则应该是POSIX所规定,一般操作系统均有实现 select:   select本质上是通过设置或者检查存放fd标志位的数据结构来进行下一步处理。这样...

2020-06-18 15:09:34 6151 0

原创 socket阻塞与非阻塞,同步与异步

概念理解 一、与I/O相关的五个重要概念 第一个概念:用户空间与内核空间 1. 现在操作系统都是采用虚拟存储器,那么对32位操作系统而言,它的寻址空间(虚拟存储空间)为4G(2的32次方) 2. 操作系统的核心是内核,独立于普通的应用程序,可以访问受保护的内存空间,也有访问底层硬件设备的所有权...

2020-06-18 14:42:52 6160 0

原创 redis中的锁以及使用场景

分布式锁 什么是分布式锁? ​ 分布式锁是控制分布式系统之间同步访问共享资源的一种方式。 为什么要使用分布式锁? ​ 为了保证共享资源的数据一致性。 什么场景下使用分布式锁? ​ 数据重要且要保证一致性 如何实现分布式锁? ​ 主要介绍使用redis来实现分布式锁 ​ redis事务 red...

2020-06-17 20:13:31 6159 0

原创 Nginx正向代理与反向代理详解

一、介绍 实践中客户端无法直接跟服务端发起请求的时候,我们就需要代理服务。代理可以实现客户端与服务端之间的通信,我们的Nginx也可以实现相应的代理服务。代理分为正向代理和反向代理,此文就来演示一下Nginx配置正向代理和反向代理的场景。 二、正向代理和反向代理的区别 正向代理和反向代理的区别我在...

2020-06-17 14:01:57 6153 0

原创 高并发解决方案

高并发介绍 高并发中一些概念 PV(访问量): 页面访问量,页面刷新一次算一次。 UV(独立访客): 即Unique Visitor,一个客户端(电脑,手机)为一个访客; DAU(日活跃用户数):登录或使用了某个产品的用户数,这与流量统计工具里的访客(UV)概念相似。 峰值QP...

2020-06-16 14:30:36 6183 0

原创 nginx详解

一、nginx基本介绍 1、nginx高并发原理( 多进程+epoll实现高并发 ) Nginx 在启动后,会有一个 master 进程和多个相互独立的 worker 进程。 每个子进程只有一个线程(协程),采用的 IO多路复用模型epoll,实现高并发。 2、epoll能实现高并发原理 e...

2020-06-16 14:23:59 6151 0

原创 mysql和redis的区别

1.mysql和redis的数据库类型 mysql是关系型数据库,主要用于存放持久化数据,将数据存储在硬盘中,读取速度较慢。 redis是NOSQL,即非关系型数据库,也是缓存数据库,即将数据存储在缓存中,缓存的读取速度快,能够大大的提高运行效率,但是保存时间有限 2.mysql的运行机制 mys...

2020-06-14 14:06:11 6147 0

原创 排序方法:冒泡,选择,快排,插入,并归,堆排

冒泡排序:相邻的元素进行比较(每一对),排序,(由小到大) def bubble_sort(li): for i in range(len(li)-1): for j in range(len(li)-i-1): if li[j] > li[j...

2020-06-09 18:26:07 6158 0

原创 数据结构--树

树: 树的种类:无序树、有序树 有序树:二叉树、霍夫曼树、B树(myqsl 数据库引用) 二叉树:每个节点最多有两个子树结构 完全二叉树、平衡二叉树、排序二叉树 满二叉树:除了叶节点(最后一层),每个节点都有两个子树 完全二叉树:在满二叉树的基础上,最后一层,从左到右排序,排节点(不排满...

2020-06-09 18:06:55 6146 0

原创 关于 数据结构 与算法的复杂度

程序=数据结构+算法(瑞士 尼克劳斯·威茨 提出) 数据结构:逻辑结构 和 物理结构 逻辑结构:集合结构、线性结构、树形结构、图形结构 物理结构:数据存储 数据元素的存储结构:顺序存储结构(地址连续的存储单元) 和 链式存储结构(任意存储单元,数据间使用指针关联) 算法的基本特性: 输入性 有...

2020-06-09 16:31:48 6156 0

原创 字符串类型 常见操作方法

字符串是以 双引号 或 单引号 包起来的,叫字符串 在字符串中取值 根据索引(下标)进行取值: name="abcdef" ...

2020-06-03 18:15:44 6215 0

原创 递归说明(高斯求和、斐波那契、青蛙跳台阶的问题解决)

什么是递归? 在数学与见算计科学中,是指在函数的定义中使用函数自身的方法。 递归算法就是一种直接或者间接的调用自身函数或者方法的算法 递归算法的实质是把问题分解规模小的同类问题的子问题 然后调用自身方法来解 递归的基本原理 每一级的函数调用都有自己的变量 每一次函数调用都会有一次返回 递归函...

2020-06-02 15:56:16 6205 0

原创 websocket 那些配置及具体的Demo
原力计划

Websocket 即时通讯 1.需求 即时通讯工具一定要保障的是即时性 基于现在的通讯协议HTTP要如何保障即时性呢? 2.短连接型 基于HTTP短连接如何保障数据的即时性 HTTP的特性就是无状态的短连接,即一次请求一次响应断开连接失忆,这样服务端就无法主动的去寻找客户端给客户端主动推送消息 ...

2020-06-02 15:47:17 6178 0

原创 webshell 那些配置以及 具体的Demo

Webshell “web”的含义是显然需要服务器开放web服务,“shell”的含义是取得对服务器某种程度上操作权限。webshell常常被称为通过网站端口对网站服务器的某种程度上操作的权限。 一方面,webshell被站长常常用于网站管理、服务器管理等等,根据FSO权限的不同,作用有在线编辑网...

2020-06-02 15:30:17 6252 0

原创 Django自带的用户验证系统

Django自带的用户验证系统 第一步 系统配置用户表 第二步 用户注册和登陆验证功能 首先,我要说明一下,下面内容不是必须品,如果各位大神喜欢手写也是可以的,你也可以选择自带的功能来缩减你的代码量,提高效率! 第一步 系统配置用户表 首先,在models中创建用户表,导包 from django...

2020-06-02 15:25:41 6236 0

原创 梳理开发中常用的加密算法-对称加密与非对称加密,可逆加密与不可逆加密

加密种类: 1. 不可逆加密:【Hash加密算法/散列算法/摘要算法】 一旦加密就不能反向解密得到密码原文,一般用来加密用户密码,app的服务器端数据库里一般存储的也都是加密后的用户密码。 在数据传输的过程中,首先把密码类数据经过MD5加密算法加密,然后再在外面使用可逆的加密方式加密一次,这样在数...

2020-06-01 17:25:19 6379 0

原创 七牛云文件存储系统

三种图片上传的模式 使用 vue 上传到七牛云 (推荐使用) 使用 django 上传到七牛云 将图片保存到 django (极力不推荐) vue上传图片到七牛云如何完成? 先下载 qiniu pip install qiniu 在 后端 django #获取七牛token from qin...

2020-06-01 17:11:06 6179 0

原创 Oauth2 四种模式

Oauth2 四种模式 1. 隐式授权模式(Implicit Grant) 第一步:用户访问页面时,重定向到认证服务器。 第二步:认证服务器给用户一个认证页面,等待用户授权。 第三步:用户授权,认证服务器想应用页面返回Token 第四步:验证Token,访问真正的资源页面 授权码授权模式(A...

2020-06-01 16:59:29 6250 0

原创 三方登陆理论知识

什么是三方登录 三方登录,就是说,除了使用账号密码,这种方式来进行登录我们的项目,还可以用丢三方软件来进行登录我们的项目,如微博、微信、QQ等等 三方登陆的业务流程图 oauth2.0是什么? ​ OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(...

2020-06-01 16:51:36 6182 0

原创 初步浅谈 celery

celery是什么? ​ Celery是基于Python开发的一个分布式任务队列框架,支持使用任务队列的方式在分布的机器/进程/线程上执行任务调度 celery的使用场景? 有延时需要网络IO的,并且不关心返回结果的数据。例如:你想对100台机器执行一条批量命令,可能会花很长时间 ,但你不想让你...

2020-06-01 16:36:34 6162 0

原创 JWT使用方式(中间件、类装饰器)

我们要先了解我们为什么要使用 JWT 目的: 防止用户 使用他人敏感信息 进行篡改 JWT 配合中间件使用 首先 在 settings.py 中的 MIDDLEWARE 加载 中间件 配置 MIDDLEWARE = [ #加载自定义中间件 文件夹名.文件名.类名 �...

2020-06-01 16:34:09 5989 0

原创 单点登陆问题 JWT详解

什么是单点登陆? ​ 单点登录(Single Sign On),简称为 SSO。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。 如图所示,图中有4个系统,分别是Application1、Application2、Application3、和SSO。Appl...

2020-06-01 16:13:00 5982 0

原创 HTTP和HTTPS的区别

HTTP 与 HTTPS 的区别 HTTP(HyperText Transfer Protocol:超文本传输协议)是一种用于分布式、协作式和超媒体信息系统的应用层协议。 简单来说就是一种发布和接收 HTML 页面的方法,被用于在 Web 浏览器和网站服务器之间传递信息。HTTP 默认工作在 TC...

2020-06-01 16:04:27 6125 0

原创 面向对象(三)、静态方法、类方法

面对对象三大特征: 封装、继承、多态 私有权限: 在 属性 或 方法 前面加上两个下划线 __ 类的 私有属性 和 私有方法 ,不能通过对象访问,只能在类的内部 通过self访问 类的 私有属性 和 私有方法 ,不会被子类继承, class MasterWorker(object): def _...

2020-05-31 20:39:36 6022 0

原创 面对对象(二)

继承: 单继承 、多继承 1.单继承 子类只继承一个父类,在继承时,小括号( )中为 父类 class MasterWorker(object): def __init__(self): self.mifang="古典秘方" def make(self): pri...

2020-05-31 20:17:16 6015 0

原创 面对对象(一)

类和对象的关系: 类是对象的 模型 对象是类的 实体 类的构成: 类(class) 类的名称:类名 类的属性:一组数据 类的方法:行为 格式: 类名 用大驼峰 无特殊要求,类名里面都用object(最顶级父类) class 类名(object): 创建对象: 可根...

2020-05-31 20:03:21 6031 0

原创 TCP/UDP

Tcp / ip : 应用层、传输层、网络层、网络接口层 查看本机ip: windons + r (进入交互换环境) ipconfig ping 本机ip 查看本机网络有无问题 端口: 知名端口(固定端口):0—1023 动态端口:程序可以设置的端口 1024—65535 查看端口使...

2020-05-31 19:35:14 6032 0

原创 Python中的 正则匹配

正则匹配的基本格式 import re ret=re.match("正则表达式","要匹配的字符串") ret.group( ) 提取数据 匹配单个字符: . 匹配任意一个字符(除了\n) [ ] ...

2020-05-31 19:09:26 5944 0

原创 上下文管理(with)

with是一种上下文管理协议,目的在于从流程图中把 try,except 和finally 关键字和资源分配释放相关代码统统去掉,简化try….except….finlally的处理流程。with通过enter方法初始化,然后在exit中做善后以及处理异常。所以使用with处理的对象必须有ente...

2020-05-31 18:54:55 5982 0

原创 Python文件的相关操作

打开文件: open(文件名,访问模式) 常见的访问模式: write w 写入文件 文件已存在则覆盖,文件不存在,创建新文件 read r 只读 append a 打开一个文件用于追加 基...

2020-05-31 18:48:02 5966 0

原创 Python中常用的高阶函数

python中常用的高阶函数:map( )、reduce( )、filter( )、sorted( ) map(function,Iterable) 返回值 返回的对象,放到一个新的迭代器中 def func(a,b): return a*b ret=map(func,[1,2,...

2020-05-31 18:29:30 5976 0

原创 Python的 深拷贝、浅拷贝

== 和 is 的区别: == 比较对象内容是否相等,内存地址可以不一样,内容一样就可以 is 比较对象是不是完全相同,内存地址是否一样 深拷贝copy.deepcopy( )和浅拷贝 copy.copy( )之间的区别是什么? 对象的赋值就是简单的引用,a = [1,2,3], b=a, 在上...

2020-05-31 17:22:50 5957 0

原创 Python中是如何管理内存的

Python有一个私有堆空间来保存所有的对象和数据结构。作为开发者,我们无法访问它,是解释器在管理它。但是有了核心API后,我们可以访问一些工具。Python内存管理器控制内存分配。 另外,内置垃圾回收器会回收使用所有的未使用内存,所以使其适用于堆空间。 一、垃圾回收: python不像C++,J...

2020-05-31 16:59:05 5998 0

提示
确定要删除当前文章?
取消 删除