Python中使用内存缓存
在编写Python应用程序时,缓存很重要。使用缓存来避免重新处理数据或访问一个缓慢的数据库可以提高你的性能。
在Python中,我们可以使用memcached 模块来在我们的脚本中加入内存缓存。本文将讨论准备内存缓存操作和主要的memcached 使用。
我们还将学习使用Pythoncache 和set 的高级模式。
安装Memcached 模块
Memcached 包可用于许多平台:
- 对于Linux,我们可以使用yum install memcached 或apt-get install memcached 来安装它。这个脚本将从预先建立的包中安装memcached 包。
- 对于macOS,最简单的选择是利用Homebrew。安装Homebrew软件包管理器后,输入brew install memcached 。
- 对于Windows,你将不得不通过访问官方网站memcached ,自己编译memcached 。
一旦安装完毕,可以通过调用memcached 命令来启动memcached :
memcached
使用Python设置和获取缓存值
如果你从来没有使用过memcached 包,就可以直接掌握它。此外,它还可以通过网络访问一个相当大的词汇表。
这个字典在几个方面与传统的 Python 字典不同,主要是:
- 值和键必须是字节数据类型的
- 值和键在给定的过期时间后被自动删除
因此,set 和get 是处理memcached 的两个基本程序。正如我们所想象的那样,它们被用来给一个键一个值或从一个键获得一个值。
下面的代码演示了如何在你的Python应用程序中利用memcached 作为一个网络分布式的缓存:
import memcache
mcobject = memcache.Client(['127.0.0.1:11212'], debug=0)
mcobject.set("some_key", "Some value")
value = mc.get("some_key")
mcobject.set("another_key", 3)
mcobject.delete("another_key")
mcobject.set("key", "1")
mcobject.incr("key")
mcobject.decr("key")
#Python小白学习交流群:711312441
memcached 网络协议是直接的。由于其闪电般的实现,存储那些原本需要很长时间才能计算或从数据的正则源获得的数据是很有优势的。
虽然简单明了,但这个例子允许在网络上存储key-value 图元,并通过你的应用程序的多个分布式运行副本来访问它们。
这个过程是简单而强大的。而且它是优化你的应用程序的重要第一步。