03 2022 档案
LRU算法及实现方式
摘要:LRUCache(Least-Recently-Used) 替换掉最近最少使用的对象 缓存剔除策略,当缓存空间不够用的时候需要一种方式剔除key 通过使用一个循环双端队列不断把最新访问的key放到队头实现 先进先出,放到队尾则是最后出 实现 利用dict+collections.OrderedDic
Python并发编程之线程池/进程池
摘要:##前言 python标准库提供线程和多处理模块来编写相应的多线程/多进程代码,但当项目达到一定规模时,频繁地创建/销毁进程或线程是非常消耗资源的,此时我们必须编写自己的线程池/进程池来交换时间空间。但是从Python3.2开始,标准库为我们提供了并发的。Futures模块,它提供两个类:Threa
python面试10问
摘要:生成器send的应用场景 当生成器生成一个新值时,通过send函数传递一个新的参考值(赋值给=yield的左边),然后根据这个参考值去做事情 可以了理解为用于和生成器通信 第一次生成器启动必须使用next()或者send(None) 如何动态创建类,应用场景是什么 type 使用type()函数创建
同步与异步
摘要:多路复用概念 监听多个描述符(文件描述符(windows下暂不支持)、网络描述符)的状态,如果描述符状态改变则会被内核修改标志位,进而被进程获取进行读写操作 I/O多路复用 简单解释:一个进程(线程)可以同时对多个客户请求进行服务 用于提升效率,单个进程可以同时监听多个网络连接IO 监视多个文件描述
数据结构与算法【进阶】
摘要:贪心算法 在对问题求解时,总市做出当前看来时最好的选择。 不从整体最优上考虑 局部最优解 找零问题 假设商店老板需要找零n元钱,钱币的面额:100元、50元、20元、5元、1元,如何找零使得所有钱币数量最少? t = [100,50,20,5,1] def change(t,n): m = [0 f
Django项目云部署
摘要:DJango项目部署 网站备案 在国内,互联网必须由开发者或者拥有者进行实名备案: 进入某云网站(腾讯云,阿里云,华为云)进行备案 网站备案需要有合法的公网服务器,并且服务器可用时长超过3个月 域名备案 目的是减少IP重复和记忆对用户带来的困难 需要有网站备案 网站备案之后就会得到备案号(这是必须的
Ubuntu虚拟机固定IP地址
摘要:Ubuntu虚拟机固定IP地址 设置 VMware 虚拟机网络连接方式为桥接模式 设置静态IP地址 首先在命令行执行 ifconfig 命令,看一下我们的网卡 可以看到我们的网卡名字为ens33 sudo vim /etc/network/interfaces # 使用 sudo vim /etc/
Ubuntu+Nginx+uWSGI+DJango+python3部署
摘要:流程 客户端请求服务资源 nginx作为直接对外的服务接口,接收到客户端发送过来的http请求,会解包、分析 如果是静态文件请求就根据nginx配置的静态文件目录,返回请求的资源 如果是动态的请求,nginx就通过配置文件,将请求传递给uWSGI uWSGI 将接收到的包进行处理,并转发给wsgi,