摘要:
在开发高并发系统时有三把利器用来保护系统:缓存、降级和限流 缓存的目的是提升系统访问速度和增大系统处理容量 降级是当服务出现问题或者影响到核心流程时,需要暂时屏蔽掉,待高峰或者问题解决后再打开限流的目的是通过对并发访问/请求进行限速,或者对一个时间窗口内的请求进行限速来保护系统,一旦达到限制速率则可 阅读全文
摘要:
什么是数据结构? 数据结构的分类? 列表 列表和数组的区别 栈 实例1 栈的Python实现 栈的应用——括号匹配问题 队列 队列的实现 队列的实现原理——环形队列 队列的内置模块 栈的应用——迷宫问题 队列的应用——迷宫问题 代码实现 链表 建立链表 链表的遍历 头插法 尾插法: 链表节点的插入和 阅读全文
摘要:
前段时间在读取一个文件的过程中,竟然出现了Memory Error!简直让我怀疑自己买了个假电脑,毕竟是8G内存i7处理器,一度怀疑自己装了假的内存条。。。。下面说一下几个解题步骤。。。。一般就是用下面这些方法了,按顺序试试。 导致Memory Error异常的常见原因有以下几种: 内存中加载的数据 阅读全文
摘要:
Django中提供了“信号调度”,用于在框架执行操作时解耦。通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者。 1、Django内置信号 对于Django内置的信号,仅需注册指定信号,当程序执行相应操作时,自动触发注册函数: 2、自定义信号 a. 定义信号 b. 注册信号 c. 阅读全文
摘要:
一、什么是哈希表 哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,而HashMap的实现原理也常常出现在各类的面试题中,重要性可见一斑。本文会对java集合框架中的对应实现HashM 阅读全文
摘要:
简介 Celery是由Python开发的一个简单、灵活、可靠的处理大量任务的分发系统,它不仅支持实时处理也支持任务调度。 user:用户程序,用于告知celery去执行一个任务。 broker: 存放任务(依赖RabbitMQ或Redis,进行存储) worker:执行任务 celery需要rabb 阅读全文
摘要:
HTTP协议简介 超文本传输协议(英文:Hyper Text Transfer Protocol,HTTP)是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP是万维网的数据通信的基础。HTTP有很多应用,但最著名的是用于web浏览器和web服务器之间的双工通信。 HTTP的发展是由蒂姆· 阅读全文
摘要:
由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者memcache中,5分钟内再有人来访问时,则不再去执行view中的操作,而是直接从内存或者Redis中之前缓存的内容拿到 阅读全文
摘要:
在理解元类之前,你需要先掌握Python中的类。Python中类的概念借鉴于Smalltalk,这显得有些奇特。在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段。在Python中这一点仍然成立: 但是,Python中的类还远不止如此。类同样也是一种对象。是的,没错,就是对象。只要你使用 阅读全文
摘要:
摘要:OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此OAUTH是安全的。同时,任何第三方都可以使用OAUTH认证服 阅读全文