`
javarails
  • 浏览: 410 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

memcached全面剖析学习笔记

阅读更多
1、slab allocation机制

   根据设置的大小,预先在内存分配一块存储区域。把分配的内存按照预定的大小分割成各种尺寸的块,在把相同的块分成一个组。当有数据要放入内存中时,根据存入数据的大小放到合适的块中。
 
   三个术语:
       page:分配给slab的内存空间
       chunk:用于存数据的内存空间
       Slab Class:相同大小chunk的组

   优点:避免了对内存的频繁申请好释放,避免了内存碎片化的问题
   缺点:造成了内存的浪费,但借助配置选项可以进行调优,减少浪费情况
2、删除机制
   Lazy expiration
   LRU:最近最少使用算法
3、分布式算法
   根据余数选择服务器hasj(key)%n:根据服务器台数的余数进行分散。根据键值的hash整数值除以服务器台数的余数,选择服务器。
分享到:
评论

相关推荐

    Memcached 学习资料(memcached Memcached使用手册 Memcached源码剖析笔记)

    Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的...

    memcached-笔记资料

    2. "memcached权威指南.pdf":这是一份全面介绍Memcached的参考资料,可能包括了Memcached的工作原理、配置选项、API接口、性能调优、故障排查等方面的内容,适合初学者和进阶用户阅读。 3. ...

    memcached-笔记资料.rar

    标题 "memcached-笔记资料.rar" 暗示了这个压缩包包含的是关于 memcached 的学习资料,这是一款广泛使用的分布式内存对象缓存系统。它主要用于减轻数据库的负载,通过在内存中存储常用数据,提高应用程序的响应速度...

    redis学习笔记

    ### Redis 学习笔记知识点概览 #### 一、Redis 简介及特性 - **Redis**(Remote Dictionary Server)是一种开源的、基于内存的数据结构存储系统,它支持多种数据结构,如字符串(strings)、散列(hashes)、列表...

    Java架构面试专题汇总(含答案)和学习笔记.zip

    这个压缩包包含的学习笔记和习题集全面覆盖了Java架构师所需的核心知识点,下面我们将深入探讨其中的关键内容。 1. **Java基础** - **数据类型与变量**:理解基本数据类型、引用数据类型,以及它们在内存中的存储...

    《PHP and MySQL Web开发(原书第4版)》学习笔记.zip

    【描述】的学习笔记涵盖了许多关键知识点,包括基础语法、数据库交互、用户认证、会话管理、安全性实践以及更高级的主题,如面向对象编程(OOP)、模板引擎和数据缓存。笔记中可能还包括了实际项目案例和实践经验,...

    redis 缓存技术学习笔记

    ### Redis缓存技术学习笔记 #### 一、Redis概述 Redis是一个开源的、高性能的键值存储系统。它提供了一种灵活的方式来进行数据管理和存储,适用于多种应用场景,如缓存、消息队列等。与传统的键值存储系统...

    Mysql数据库优化学习笔记

    MySQL数据库优化学习笔记 在数据库管理系统中,MySQL是一款广泛应用的关系型数据库,因其开源、免费、高效的特点,被广泛用于各种规模的项目。然而,随着数据量的增长和业务复杂度的提高,性能优化变得至关重要。本...

    B站【编程不良人】Redis学习笔记

    本学习笔记基于"B站【编程不良人】"的Redis教程,深入浅出地介绍了Redis的各种特性和使用方法,旨在帮助读者全面掌握Redis的基础与进阶知识。 一、Redis基础知识 1. 数据类型:Redis提供了五种基本数据类型,包括...

    6天MySQL数据库学习笔记

    ### MySQL数据库学习笔记知识点概述 #### 一、数据库分类及关系型数据库介绍 - **数据库类型**:数据库根据规模和用途可分为大型、中型和小型数据库。此外还有非关系型数据库。 - **大型数据库**:如Oracle和DB2...

    mysql学习笔记,记录生活点点滴滴

    MySQL学习笔记 本篇笔记对MySQL数据库进行了详细的介绍,涵盖了数据库的基本概念、关系型数据库的特点、SQL语言的介绍、MySQL数据库的架构、服务器对象的结构、基本操作等方面。 数据库的基本概念 数据库是存储...

    Mysql\学习笔记\mysql优化

    7. 对于频繁查询的数据,考虑使用缓存(如Memcached或Redis)来提高响应速度。 8. 调整数据库配置,如内存分配、连接数限制等,以适应应用的需求。 9. 数据库设计的优化,如合理划分表结构,避免数据冗余,使用...

    Java后端学习笔记。包括Linux、maven、git、互联网架构、大数据体系等.zip

    这份"Java后端学习笔记"涵盖了Linux、Maven、Git、互联网架构和大数据体系等多个关键知识点,是提升Java开发者技能的重要资料。 首先,让我们深入了解一下这些主题: 1. **Linux**:作为服务器操作系统,Linux在...

    linux运维学习笔记:企业Shell面试题总结-1.pdf

    根据提供的文件信息,本文将总结其中的Linux运维学习笔记中提及的多个企业Shell面试题及其解决方案和知识点。 1. 批量生成随机字符文件名案例 该案例主要考察使用Shell脚本批量创建文件,并为每个文件赋予随机生成...

    SSM实战项目——Java高并发秒杀API,详细流程+学习笔记

    SSM实战项目——Java高并发秒杀API是一个深入学习Java后端开发的重要实践,...通过对seckill-master源码的学习和分析,我们可以更直观地看到这些设计思想如何在实际代码中体现,从而提升我们的编程技巧和架构设计能力。

    谷粒商城官方笔记.zip

    总的来说,这个压缩包提供了一个全面的学习路径,帮助开发者深入了解和实践Java前后端分离技术,以及如何构建高可用、分布式的电商系统。对于想要提升自己在电商领域技术能力的Java开发者来说,这是一个不可多得的...

    基于PHP的minIsayphp笔记程序源码.zip

    5. **用户认证和授权**:笔记应用可能涉及用户登录和权限管理,通过分析这部分代码,可以学习如何实现安全的用户认证和授权机制。 6. **前端技术**:可能结合HTML、CSS和JavaScript构建用户界面,了解前后端如何...

    Java笔记,从基础到进阶到源码分析,包括但不限于SSM,SpringBoot,SpringCloud,中间件.zip

    这份名为“Java笔记,从基础到进阶到源码分析,包括但不限于SSM,SpringBoot,SpringCloud,中间件”的压缩包文件,显然是一个全面学习Java技术体系的宝贵资源。我们将详细探讨其中涵盖的关键知识点。 首先,基础...

Global site tag (gtag.js) - Google Analytics