摘要:
单体框架、分布式框架、微服务框架 1.单体框架 1.概念 将业务功能集中在一个项目中开发,打包部署。(意思就是说,所有的功能在一个项目中进行实现,不用管复杂的架构设计,只需要创建一个项目,有功能就往这个项目里面加代码就ok了) 2.优点 1、框架简单,不需要搞复杂的框架设计 2、部署成本低:把写好的 阅读全文
摘要:
csrf跨站请求伪造、csrf相关装饰器、auth认证模块 csrf跨站请求伪造 简单来说就是攻击者通过一些技术手段欺骗用户的浏览器去访问一个自己曾经认证过的网站并执行一些操作,用于浏览器曾经认证过,所以被访问的网站会以为是真正的用户操作而去执行。 经典例子 钓鱼网站:假设是一个跟银行一模一样的网站 阅读全文
摘要:
cookie和session、Django中间件 cookie和session简介 http的五大特性: 1.基于请求响应 2.基于tcp和ip作用于应用层之上的协议 3.无状态 服务端无法识别客户端的状态 (互联网刚开始兴起的的时候 所有人访问网址都是一样的数据,服务端记不住客户端的状态,服务端不 阅读全文
摘要:
用Python实现十大经典排序算法 1.冒泡排序 冒泡排序(Bubble Sort)是一种比较简单的排序算法,它重复地走访过要排序的元素,依次比较相邻两个元素,如果它们的顺序错误就把他们调换过来,直到没有元素再需要交换,排序完成。 算法过程 比较相邻的元素,如果前一个比后一个大,就把它们两个对调位置 阅读全文
摘要:
go介绍 go 即golang,是Google公司2009年11月正式对外公开的一门编程语言 go是一种静态,强类型语言,是编译型语言(静态:类型固定 强类型:不同类型不允许直接运算) 解释性语言:源代码由解析器对代码进行解释执行 编译型语言:源代码编译生成机器语言,然后由机器执行机器码可执行 编译 阅读全文
摘要:
celery详解 1.celery解释 celery 是一个基于Python的任务队列管理器,可以帮助我们异步处理耗时操作,从而提高应用的性能和可伸缩性。 它支持多种消息代理,比如说RabbitMQ、Redis、Amazon SQS等,并且可以与Django、Flask等web框架集成使用 2.ce 阅读全文
摘要:
python操作哨兵、python操作集群、缓存优化、mysql 主从 python操作哨兵 用高可用架构后 》不能直接连某一个主库了 》主库可能会挂掉,后来它就不是主库了 # 之前学的连接redis的操作,就用不了了 import redis conn=redis.Redis(host='',po 阅读全文
摘要:
Redis-Cluster(redis集群) Redis-Cluster的背景介绍 1.1存在的问题 1.并发量:单机Redis qps为10w/s,但是我们需要百万级别的并发量 2.数据量:机器内存16-256g,如果存储500g数据呢 1.2解决 # 解决方法:加机器,分布式 redis clu 阅读全文
摘要:
Redis持久化、主从复制、哨兵高可用 Redis持久化 1.什么是持久化? Redis的所有数据保存在内存中,对数据的更新将异步的保存到硬盘上 2.持久化的实现方式? 快照:某时某刻数据的一个完成备份 mysql >Doump redis >RDB 写日志:任何操作记录日志,要恢复日志,只要吧日志 阅读全文
摘要:
redis高级 1 哈希类型 ###1 hget,hset,hdel hget key field #获取hash key对应的field的value 时间复杂度为 o(1) hset key field value #设置hash key对应的field的value值 时间复杂度为 o(1) hd 阅读全文