memcached介绍:

memcached相当于一个内存的缓存系统,数据原本是存储在数据库当中,memcached是一个内存级别的缓存系统,可以把数据存到内存当中,此时的访问速度就会更快。设计它的初衷就是加速网站的访问速度。

memcached是一个高性能的,分布式的内存对象缓存系统,不少企业采用这个缓存项目来构建大负载的网站,来分担数据库的压力。memcached是通过在内存里维护一个统一的,巨大的hash表。memcached能存储各种各样的数据,包括图像,时评,文件,以及数据库检索的结果。简而言之就是将数据调到内存里,然后从内存中读取,从而大大提高读取速度。

适合使用memcached的场景:存储验证码(图形验证码,短信验证码), 登陆session等所有不是至关重要的数据。

安装和启动memcached

windows下安装,以及启动memcached:

1. 首先下载memcached安装文件:window下1.4.4版本

以管理员身份运行cmd, cd到memcached的安装文件路径下:

安装,启动memcached如上所示:
可以在任务管理器中,看到memcached服务已经启动:

这里省略Linux下安装memcached, 以及用telnet操作memcached:

python操作memcached:

首先安装python-memcached,然后通过这个包操作memcached:

1. 连接memcached服务

2. 添加数据

3. 查找数据

4. 删除数据

5. 自增

6. 自减

# -*- coding: utf-8 -*-
import memcache# 连接之前要确认memcached服务已经启动
mc = memcache.Client(["127.0.0.1"], debug=True)   # 链接memcached服务# 设置值   time的默认值是0,表示数据永远不过期,所以在使用的时候最好设定过期时间
mc.set(key="username", val="Tomcat", time=60)   # time表示过期的时间60susername = mc.get("username")
print(username)# set_multi方法,一次传递多个值,字典作为参数
mc.set_multi(mapping={"title": "Gone","author": "kitty","price": 12},time=60)res = mc.get_multi(keys=["title", "author"])
print(res)# 删除数据
mc.delete("username")
username = mc.get("username")
print(username)# 自增和自减
mc.set(key="age", val=10, time=60)
mc.incr(key="age", delta=1)    # 自增一
print(mc.get("age"))mc.decr(key="age")
print(mc.get("age"))

输出结果:

分布式的memcached:

memcached可以连接多台机器:可以在Client的列表中添加其他ip和端口号

Web后端学习笔记 Flask(13)memcached相关推荐

  1. Web后端学习笔记Flask(2)模板

    模板渲染: 在flask中,视图函数可以直接通过render_template进行模板渲染.在flask中,模板文件是存放在template文件夹中:在调用模板文件的时候,模板文件的路径从templa ...

  2. Web后端学习笔记 Flask(1)基础知识

    基础的准备 1. 使用的python版本 python3.6 2. pycharm编辑器 3. 安装python虚拟环境: python中的虚拟环境: python中的虚拟环境相当于一个抽屉,在这个抽 ...

  3. Web后端学习笔记 Flask(10)CSRF攻击原理

    CSRF(Cross Site Request Forgery,跨站域请求伪造)是一种网络的攻击方式,它在2007年曾被列为互联网20大安全隐患之一. CSRF攻击的原理: 网站是通过cookie实现 ...

  4. Web后端学习笔记 Flask(9)cookie and session

    Flask_wtf除了可以做表单验证,模板渲染之外,还可以防御CSRF攻击.要了解CSRF攻击的原理,首先需要了解cookie和session的知识点. cookie:在网站中,HTTP请求是无状态的 ...

  5. Web后端学习笔记 Flask (5) 数据库

    MySql数据库安装:省略 SQLAlchemy介绍和基本使用: 数据库是开发网站的基础,,在Flask中,支持的数据库有:MySql,PostgreSql,SQLite,Redis,MongoDB来 ...

  6. Web后端学习笔记 Flask (14)redis

    redis介绍: redis是一种noSQL数据库,它的数据是保存在内存中,同时,redis可以定时把内存中的数据同步到磁盘,即可以将数据持久化,并且它比memcached支持更多的数据结构,stri ...

  7. Web后端学习笔记 Flask(11)Local线程隔离对象

    flask中的上下文:应用上下文和请求上下文 1. 在flask中,是通过request对象获取用户提交的数据,但是在整个程序运行中,只有一个request对象.在实际应用场景中,会有多个用户同时进行 ...

  8. Web后端学习笔记 Flask(8) WTForms 表单验证,文件上传

    Flask-WTF是简化了WTForms操作的一个第三方库.WTForms表单的两个主要功能是验证用户提交数据的合法性以及渲染模板.同时还包含一些其他的功能.例如CSRF保护,文件上传等功能,安装fl ...

  9. Web后端学习笔记 Flask(7)数据库

    高级查询: 1. group_by 根据某个字段进行分组,比如说需要根据某个字段分组,来统计每组有多少人. 2. having having是对查询结果进一步过滤,比如只想看到未成年人的数量,那么首先 ...

最新文章

  1. Eclipse 创建web项目后没有 Java EE 5 Library,没有web开发相关基础java包,myeclipse中有。...
  2. win10专业版关闭smartscreen
  3. 【9018题解】2109 卡德加的兔子
  4. 去除input填充颜色
  5. java package public_Java中的public,protected,package-private和private有...
  6. 恢复Cisco路由器口令
  7. mysql主库从库在同一台服务器_通过两种方式增加从库——不停止mysql服务
  8. 男人 30 岁前要做的 22 件事
  9. 实现自定义背景色、前景色、显示进度的进度条
  10. linux下计算md5值,Linux下使用md5sum计算和检验MD5码
  11. debian10编译安装mysql
  12. 推荐10本必读的心理学书籍
  13. 北京大学公开课《数据结构与算法Python版》
  14. 海航科技集团要寻人才去火星喽!
  15. [NOIP2017模拟]Blash数集
  16. idea中java版本设置
  17. LabVIEW使用VI Server的时候出现1003错误
  18. python 中的“_,“有什么用途
  19. java rnn生成古诗_Char-RNN生成古诗
  20. Ethernet协议

热门文章

  1. k8s集群资源监控-搭建监控平台(prometheus和grafana)---K8S_Google工作笔记0053
  2. k8s核心技术-资源编排(yaml)的介绍---K8S_Google工作笔记0018
  3. Netty工作笔记0084---通过自定义协议解决粘包拆包问题2
  4. NuGet学习笔记001---了解使用NuGet给net快速获取引用
  5. oracle零碎要点---ip地址问题,服务问题,系统默认密码问题
  6. 杭电1422 重温世界杯
  7. boost学习之简介
  8. 随想录(软件逆向与OllyDbg)
  9. 随想录(对比着c学java)
  10. 嵌入式操作系统内核原理和开发(固定内存分配算法)