自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 Django中间件

1、概述Django 中的中间件(middleware),是一个镶嵌到Django的request/response处理机制中的一个hooks框架,是一个修改django全局输入输出的一个底层插件系统。让我们可以自定义想要的一些功能来处理用户的请求。在Django中,中间件其实就是一个类,在类中包含一组特定的功能,在请求到来或者结束时,Django会根据定义的中间件规则执行中间件中对应的方法。...

2018-11-10 16:33:18 273

原创 Django请求的生命周期

1、请求生命周期的概念Django的请求生命周期是指:当用户在浏览器上输入url到用户看到网页的这个时间段内,Django后台所发生的事情。2、请求生命周期内的过程(1)过程描述第一步:浏览器发起请求第二步:WSGI创建socket服务端,接收请求(Httprequest)第三步:中间件处理请求第四步:url路由,根据当前请求的URL找到视图函数第五步:view视图,进行业务处理(...

2018-11-09 23:18:43 5883

原创 并发问题的处理

1、并发并发:指的是任务数多于cpu核数,通过操作系统的各种任务调度算法,实现用多个任务“一起”执行(实际上总有一些任务不在执行,因为切换任务的速度相当快,看上去一起执行而已)。2、并行并行:指的是任务数小于等于cpu核数,即任务真的是一起执行的。3、并发的问题假如一件商品的库存只有5件,A用户买5个,B用户买5个,两个用户同时发起对同一个商品的下单请求,先查询商品库存,再修改商品库存,...

2018-11-07 11:28:00 540

原创 索引对SQL数据库的影响

索引对SQL数据库的影响1、索引的原理索引就像是书的目录,是与表或视图关联的磁盘上结构,可以加快从表或视图中检索行的速度。索引中包含由表或视图中的一列或多列生成的键。这些键存储在一个结构(BTree)中,使SQL可以快速有效地查找与键值关联的行。2、索引的优点建立索引的列可以保证行的唯一性,生成唯一的 rowId;建立索引可以有效缩短数据的检索时间;建立索引可以加快表与表之间的连接;...

2018-11-05 23:50:37 1232

原创 幂等性(HTTP)

幂等性(HTTP)1、定义HTTP协议涉及到的一种重要性质:幂等性(Idempotence)。在HTTP/1.1规范中幂等性的定义是:Methods can also have the property of “idempotence” in that (aside from error or expiration issues) the side-effects of N > 0 i...

2018-11-05 22:03:35 1016

原创 MySQL、Redis 和 MongoDB 的比较

MySQL、Redis 和 MongoDB 数据库的比较1、RDBMSRDBMS(关系型数据库管理系统),是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据,本质上使用一张二维表来表示关系。主要代表:Oracle、SQL Server、MySQL、SQLite。关系型数据库的特点:关系型数据库支持事务,读写操作都是事务的,具有ACID的特点;关系型数据库...

2018-11-04 21:48:03 968

原创 Nginx简介

Nginx 介绍1、Nginx概述Nginx (engine x) 是一个自由的、开源的、高性能的HTTP服务器和反向代理服务器,也是一个IMAP、POP3、SMTP代理服务器。Nginx是一个强大的web服务器软件,用于处理高并发的HTTP请求和作为反向代理服务器做负载均衡。具有高性能、轻量级、内存消耗少,强大的负载均衡能力等优势。作为一个 HTTP 服务器,Nginx 可以使用较少的内...

2018-11-03 15:42:06 679

原创 TCP/IP协议

TCP/IP协议1、TCP/IP介绍TCP/IP 指传输控制协议/网际协议 (Transmission Control Protocol / Internet Protocol),供已连接因特网的计算机进行通信的通信协议。2、TCP/IP的参考模型(1)OSI参考模型OSI参考模型分为七层网络模型:应用层(Application)、表示层(Presentation)、会话层(Sessi...

2018-11-02 23:41:35 445

原创 Redis的持久化存储

Redis的持久化存储Redis是一种高级key-value数据库。支持字符串、哈希表、列表、集合、有序集合等数据类型。Redis的强大性能很大程度上都是因为所有数据都是存储在内存中的,然而当Redis重启后,所有存储在内存中的数据将会丢失,在很多情况下是无法容忍这样的事情的。所以,我们需要将内存中的数据持久化。为了使Redis在重启之后仍能保证数据不丢失,需要将数据从内存中以某种方式同步到...

2018-11-02 11:18:28 298

原创 MySQL常用的两种存储引擎

MySQL常用的两种存储引擎简单来说,存储引擎就是指表的类型以及表在计算机上的存储方式。存储引擎的概念是MySQL的特点,不同的存储引擎决定了MySQL数据库中的表可以用不同的方式来存储。我们可以根据数据的特点来选择不同的存储引擎。在MySQL中的存储引擎有很多种,可以通过“SHOW ENGINES”语句来查看。下面重点关注InnoDB、MyISAM这两种。1、InnoDB存储引擎Inn...

2018-11-01 23:07:45 1453

原创 赋值、深拷贝和浅拷贝

赋值、深拷贝和浅拷贝1、赋值对象之间赋值本质上是对象之间的引用传递,也就是多个对象指向同一个数据空间。当创建一个对象,把它赋值给另一个变量的时候,python并没有拷贝这个对象,只是拷贝了这个对象的引用而已。原始数据改变,被赋值的对象数据也会做相同的改变。(1)列表之间的赋值 a = [11,22] b = a print(id(a)) # 用来显示 a 指向的数据的内存地址 ...

2018-11-01 00:22:07 333

原创 GIL全局解释器锁

GIL全局解释器锁1、概念GIL(Global Interpreter Lock)全局解释器锁,这是解释器内部的一把锁,确切一点说是CPython解释器内部的一把锁,所以要注意区分 这和我们在Python代码中使用Lock不是一个层面的概念。言外之意,就是全局解释器就是为了锁定整个解释器内部的全局资源,每个线程想要运行首先获取GIL,而GIL本身又是一把互斥锁,造成所有线程只能一个一个one...

2018-10-31 23:40:40 252

原创 乐观锁与悲观锁

乐观锁与悲观锁1、乐观锁(1)乐观锁的概念总是假设最好的情况,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版本号机制和CAS算法实现。(2)乐观锁的应用乐观锁适用于多读的应用类型(写比较少的情况),即冲突真的很少发生的时候,这样可以省去了锁的开销,加大了系统的整个吞吐量。但如果是多写的情况,一般会经常产生冲突,这...

2018-10-31 21:53:23 284

原创 HTTP/HTTPS协议

http/https协议

2018-10-31 14:24:05 376

原创 TCP/UDP协议

TCP/UDP协议1、UDP协议(1)UDP 介绍UDP 协议全称是用户数据报协议,在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。选择 UDP 必须要谨慎,在网络质量令人十分不满意的环境下,UDP协议数据包丢失会比较严重。但是由于UDP的特性: 它不属于连接型协议,因而具有资源消耗小,处理速度快的优点。所以通常音频、视频和普通数据在传送时使用 UDP 较多,因为它们即使偶尔...

2018-10-31 00:27:17 449

原创 with与上下文管理器

with与上下文管理器1、open、close方式的文件操作(1)举例 def m1(): f = open("source.txt", "w") f.write("大家好,我是xxx") f.close()(2)使用open的弊端如果在调用 write 的过程中,

2018-10-30 23:55:24 326

原创 事务的四大特性以及四个隔离级别

事务的四大特性以及四个隔离级别1、事务的概念事务Transaction,是指作为一个基本工作单元执行的一系列SQL语句的操作,要么完全地执行,要么完全地都不执行。2、事务的四大特性ACIDA(1) 原子性(atomicity)一个事务必须被视为一个不可分割的最小工作单元,整个事务中的所有操作要么全部提交成功,要么全部失败回滚,对于一个事务来说,不可能只执行其中的一部分操作,这就是事务的原...

2018-10-30 23:15:49 395

原创 什么是粘包?socket 中造成粘包的原因是什么? 粘包的处理方式

什么是粘包?socket 中造成粘包的原因是什么? 粘包的处理方式1、粘包的概念粘包:多个数据包被连续存储于连续的缓存中,在对数据包进行读取时由于无法确定发生方的发送边界,而采用某一估测值大小来进行数据读出,若双方的size不一致时就会使指发送方发送的若干包数据到接收方接收时粘成一包,从接收缓冲区看,后一包数据的头紧接着前一包数据的尾。2、出现粘包的原因出现粘包现象的原因是多方面的,它既可...

2018-10-30 00:16:03 18058

原创 C/S和B/S架构的区别

C/S和B/S架构的区别1、C/S架构C/S架构的全称为Client/Server,即客户端/服务器端架构,分为客户端和服务器两层,一种典型的两层架构:第一层是在客户端系统上结合了页面展示与业务逻辑;第二层是通过网络结合了数据库服务器。客户端包含一个或多个在用户的电脑上运行的程序;客户端需要实现绝大多数的业务逻辑和界面展示。作为客户端的部分需要承受很大的压力,因为显示逻辑和事务处理都包...

2018-10-29 23:46:56 610

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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