Memcached 是一个开源的,高性能的内存绶存软件,从名称上看Mem 就是内存的意思, 而Cache 就是缓存的意思。Memcached 的作用: 通过在事先规划好的内存空间中临时绶存数据库中的各类数据,以达到减少业务对数据库的直接高并发访问, 从而达到提升数据库的访问性能,加速网站集群动态应用服务的能力。

memcached 服务在企业集群架构中有哪些应用场景?

一、作为数据库的前端缓存应用

a、完整缓存( 易) ,静态缓存

例如:商品分类(京东),以及商品信息,可事先放在内存里, 然后再对外提供数据访问,这种先放到内存,我们称之为预热,( 先把数据存缓存中), 用户访问时可以只读取memcached 缓存,不读取数据库了。

b、执点缓存(难)

需要前端web 程序配合,只缓存热点的数据, 即缓存经常被访问的数据。
先预热数据库里的基础数据,然后在动态更新,选读取缓存,如果缓存里没有对应的数据,程序再去读取数据库,然后程序把读取的新数据放入缓存存储。

特殊说明:

  • 如果碰到电商秒杀等高并发的业务,一定要事先预热,或者其它思想实现,例如:称杀只是获取资格,而不是瞬间秒杀到手商品。

那么什么是获取资格?

  • 就是在数据库中,把0 标成1.就有资格啦。再慢慢的去领取商品订单。因为秒杀过程太长会占用服务器资源。
  • 如果数据更新,同时触发缓存更新,防止给用户过期数据。
  • 对于持久化缓存存储系统,例如:redis,可以替代一部分数据库的存储,一些简单的数据业务,投票,统计,好友关注,商品分类等。nosql= not only sql

二、作业集群的session 会话共享存储。

  • Memcached 服务在不同企业业务应用场景中的工作流程

  • 当web 程序需要访问后端数据库获取数据时会优先访问Memcached 内存缓存,如果缓存中有数据就直接获取返回前端服务及用户,如果没有数据(没有命中),在由程序请求后端的数据库服务器,获取到对应的数据后,除了返回给前端服务及用户数据外,还会把数据放到Memcached 内存中进行缓存,等待下次请求被访问,Memcache 内存始终是数据库的挡箭牌,从而大大的减轻数据库的访问压力,提高整个网站架构的响应速度,提升了用户体验。

  • 当程序更新,修改或删除数据库中已有的数据时,会同时发送请求通知Memcached 已经缓存的同一个ID 内容的旧数据失效,从而保证Memcache中数据和数据库中的数据一致。

  • 如果在高并发场合,除了通知Memcached 过程的缓存失效外,还会通过相关机制,使得在用户访问新数据前,通过程序预先把更新过的数据推送到memcache 中缓存起来,这样可以减少数据库的访问压力,提升Memcached中缓存命中率。

  • 数据库插件可以再写入更新数据库后,自动抛给MC 缓存起来,自身不Cache.

Memcached是什么,有什么作用?相关推荐

  1. php mysql xa_分布式事务之——MySQL对XA事务的支持

    MySQL 从5.0.3开始支持XA分布式事务,且只有InnoDB存储引擎支持.MySQL Connector/J 从5.0.0版本之后开始直接提供对XA的支持. 需要注意的是, 在DTP模型中,my ...

  2. 并发下常见的加锁及锁的PHP具体实现-转载

    php并发编程-转自:http://www.cnblogs.com/jingzhishen/p/4328740.html 并发下常见的加锁及锁的PHP具体实现 http://www.cnblogs.c ...

  3. 深度剖析Apache Shardingsphere对分布式事务的支持

    Apache ShardingSphere 是一套开源的分布式数据库中间件解决方案组成的生态圈,它由 JDBC.Proxy 和 Sidecar(规划中)这 3 款相互独立,却又能够混合部署配合使用的产 ...

  4. 《深入理解分布式事务》第七章 XA 强一致性分布式事务原理

    <深入理解分布式事务>第七章 XA 强一致性分布式事务原理 文章目录 <深入理解分布式事务>第七章 XA 强一致性分布式事务原理 一.X/Open DTP 模型与 XA 规范 ...

  5. Flickr 网站架构分析

    http://www.itivy.com/ivy/archive/2011/3/7/634351294385186067.html Flickr.com 是网上最受欢迎的照片共享网站之一,还记得那位给 ...

  6. 手动部署OpenStack之环境部署

    手动部署OpenStack之环境部署 一.虚拟机信息 二.基础环境配置 三.系统环境配置 一.虚拟机信息 1.控制节点ct CPU:双核双线程-CPU虚拟化开启 内存:8G 硬盘:300G+300G( ...

  7. 各大网站架构总结笔记

     各大网站架构总结笔记 记得在大学里不止一次关注网站架构方面的东西了,但每次都是泛泛了解,也没有着重记录,一段时间后对各种架构的思想也就模糊了.这几天不知怎么的又心血来潮(可能是快毕业了冲动了)想 ...

  8. 从中级到架构透彻讲解PHP面试必考题【2021版】

    精选了一些目前PHP面试经常遇到的题型,这可能对更多的面试者有很大的帮助,此课程适合中级到高级的跃进,学习的时候请深入学习 面试题整理 1 一份PHP核心技术面试题,跳槽必备! 2 面试官问:你是如何 ...

  9. 详细分析Memcached缓存与Mongodb数据库的优点与作用

    http://www.mini188.com/showtopic-1604.aspx 本文详细讲下Memcached和Mongodb一些看法,以及结合应用有什么好处,希望看到大家的意见和补充. Mem ...

  10. 常用的高性能 KV 存储 Redis、Memcached、etcd、Zookeeper 区别

    1. 什么是 KV 存储 KV 是 Key-Value 的缩写,KV 存储也叫键值对存储.简单来说,它是利用 Key 做索引来实现数据的存储.修改.查询和删除功能. 常用的高性能 KV 存储主要有 R ...

最新文章

  1. R语言format函数保留几位小数实战
  2. hdu-You can Solve a Geometry Problem too
  3. 和python哪个容易胖_为什么有些人特别容易胖?
  4. 原创 | 万万没想到,JVM内存结构的面试题可以问的这么难?
  5. 约瑟芬公主把乔治放在了第三位,对吧
  6. 多线程中,NSOperationQueue和GCD的区别
  7. WCF存储图片到指定文件夹下
  8. Windows 系统部署之创建应答文件
  9. Atitit Major island groups and archipelagos 主要的岛群和群岛目录资料目录1. 岛群 波利尼西亚(Polynesia, 美拉尼西亚(Melanesia,
  10. java发送短信功能工具类及思路详解
  11. 名师出高徒,VS 2005 调试心得。个人信息管理页面(部分)
  12. linux操作系统课程内容,《linux操作系统及应用》课程标准
  13. Linux环境变量PSI指什么,psi是什么单位(pSI指标应用原则)
  14. 单元格内容分列多行_excel如何将同一个单元格的多行内容拆分
  15. 任意输入一个年份 判断是否为闰年
  16. C语言关于输入某天日期求是本年第几天(计算天数)
  17. 微信支付签名失败(几种解决方案)
  18. 基于matlab的电机,基于MATLAB的电机仿真研究
  19. 【SpringBoot】3、SpringBoot中整合Thymeleaf模板引擎
  20. python红楼梦人物词频统计_通过数据挖掘能分析《红楼梦》各回的真伪吗?

热门文章

  1. Movidius神经计算棒初体验
  2. 计算机软件专业硕士,软件工程硕士与计算机硕士区别
  3. 服务器win2003修复,win2003服务器svchost.exe异常
  4. 精确率、准确率、召回率、ROC、AUC的概念,计算方式和代码实现
  5. 计算机桌面隔几秒闪一下,电脑最近怎么老是隔一段时间显示器就要闪一下
  6. 计算机如何重新连接打印机,打印机脱机怎么处理 打印机重新连接方法教程
  7. hp390计算机硬盘模式设置,Bios设置中三种硬盘模式详解
  8. 2020年中国电子商务服务行业现状及发展趋势分析,行业集中度将不断提升「图」
  9. C1能力认证训练题解析 _ 第一部分 _ 计算机通识
  10. 如何在阿里云服务器上安装爱快软路由系统