`
13146489
  • 浏览: 252844 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Redis 和 memcached

 
阅读更多
原文地址:http://www.ibm.com/developerworks/cn/java/j-javadev2-22/
Memcached 是一个众所周知的内存对象缓存系统,通过将目标键和值导入内存缓存运行。因此,Memcached 能回避读取磁盘时发生的 I/O 成本问题。在 Web 应用程序和数据库之间粘贴 memcached 时会产生更好的读取性能。因此,对于那些需要快速数据查询的应用程序,Memcached 是一个不错的选择。其中的一个例子为股票查询服务,需要另外访问数据库获取相对静态数据,如股票名称或价格信息。
MemcacheDB
将 Redis 与 memcached 相比较并不公平,它与 MemcacheDB 相比要好的多,MemcacheDB 是一个分布式键值对存储系统,专为数据持久化而设计。MemcacheDB 与 Redis 较为相似,其新增优势可以使其轻松地与 memcached 实现的客户端进行通信。
但是 memcached 也有其局限性,其中一个事实就是它所有的值均是简单的字符串。Redis 作为 memcached 的替代者,支持更加丰富的功能集。一些基准 (benchmarks) 也表明 Redis 的速度要比 memcached 快很多。Redis 提供的丰富数据类型使其可以在内存中存储更为复杂的数据,这是使用 memcached 无法实现的。同 memcached 不一样,Redis 可以持久化其数据。
Redis 解决了一个重大的缓存问题,而其丰富的功能集又为其找到了其他用途。由于 Redis 能够在磁盘上存储数据以及跨节点复制数据,因而可以作为数据仓库用于传统数据模式(也就是说,您可以使用 Redis,就像使用 RDBMS 一样)。Redis 还经常被用作队列系统。在本用例中,Redis 是备份和工作队列持久化存储(利用 Redis 的列表类型)的基础。GitHub 是以此种方法使用 Redis 的大规模基础架构示例



结束语
Redis 对于许多数据存储场景非常有用,因为它可以将数据持久化到磁盘(还因为它支持一个丰富的数据集),有时候,它是 memcached 的有力竞争对手。有些情况下,对于您的领域也是很有意义的,您可以使用 Redis 作为数据模型和队列的一个备份存储。Redis 客户端实现几乎可被移植到任何编程语言中。
Redis 不是 RDMBS 的完全替代品,也不是一个重量级存储,但是和 MongoDB 一样拥有丰富的功能。然而,在很多情况下,它可与这些技术共存。正如本文所述,Redis 是一个良好的应用程序单机数据解决方案,可以运行大量数据查询,或者其中的实时统计可通过 Redis 的快速原子操作完成。
分享到:
评论

相关推荐

    TreeNM在linux下的部署(用记访问redis和memcached)

    在Linux环境下部署TreeNM并使用Redis和Memcached进行数据访问,是一项涉及到缓存系统和网络监控软件的技术操作。为了更深入地理解这一过程,我们需要分别了解Redis、Memcached以及TreeNM三个主要技术组件的原理和...

    分布式缓存技术-Redis和Memcached选型对比-性能测试

    在众多的缓存解决方案中,Redis和Memcached是最受欢迎的两个选择。本文将深入探讨Redis与Memcached的选型对比,分析它们的性能测试结果,并探讨各自的优缺点。 Redis与Memcached都是基于NoSQL的内存数据结构存储...

    分布式缓存 Redis + Memcached 经典面试题!.zip

    Redis 和 Memcached 是其中最常用的两种分布式缓存系统。这里我们将深入探讨 Redis 和 Memcached 的核心概念、优缺点以及在面试中常遇到的经典问题。 1. Redis 简介: Redis 是一个开源的,基于键值对的高性能数据...

    ZendFramework 1 cache for Redis,Memcached

    标题"ZendFramework 1 cache for Redis,Memcached"表明这是一个关于使用 Zend Framework 1 框架来实现缓存功能的教程,重点在于集成和使用 Redis 和 Memcached 这两种流行的数据缓存系统。Zend Framework 是一个广泛...

    现代化内存存储:用于替代Redis和Memcached 它提供了高性能和可扩展的内存存储解决方案,适用于各种应用场景

    一个现代化的替代品,可用于替代Redis和Memcached。它提供了高性能和可扩展的内存存储解决方案,适用于各种应用场景。Dragonfly的设计目标是提供更好的性能、更好的扩展性和更好的稳定性,成为一个可靠的内存缓存和...

    TreeNMS for Redis, memcached v1.7.5

    TreeNMS 是一款由 TreeSoft 开发的数据库管理系统,特别针对 Redis 和 memcached 这两种流行的数据存储系统设计。这款工具提供了一种免费且高效的解决方案,用于管理和监控 Redis 以及 memcached 的运行状态。在 v...

    redis和memcached和MongoDB区别.xlsx

    之前用过redis和MongoDB,但都是没有系统的学习,新公司用到memcached,所以去了解他们的区别和应用场景,方便理解。

    使用 Amazon ElastiCache Redis 和 Memcached 的示例和文档.zip

    Amazon ElastiCache 示例使用与Redis OSS 兼容的Amazon ElastiCache和Memcached的示例和文档。博客在线特征存储使用兼容 Redis OSS 的 Amazon ElastiCache 在 AWS 上构建在线特征存储,以支持需要超低延迟和高吞吐量...

    使用各种策略和存储后端(如 redis 和 memcached)进行速率限制.zip

    限制 limits是一个 Python 库,用于对常用的存储后端(Redis、Memcached、MongoDB 和 Etcd)执行速率限制。支持的策略固定窗口此策略以固定间隔重置(分钟、小时、天等开始)。例如,给定10/minute策略的速率限制将...

    php mysql redis nginx memcached

    memcached和redis目录则可能包含各自服务的二进制文件和配置。 这个组合通常用于搭建一个高性能的Web环境,其中Nginx负责接收HTTP请求,通过FastCGI与PHP交互处理动态内容,MySQL存储数据,Redis和Memcached作为...

    10.1.1 redis相比memcached有哪些优势?.md

    10.1.1 redis相比memcached有哪些优势?

    深入理解redis_memcached失效原理(小结)

    Redis 和 Memcached 都是广泛使用的内存数据存储系统,它们常用于缓存和快速数据访问。本文主要讨论了这两种技术的缓存失效原理,特别是针对 Redis 的失效机制进行了深入解析。 首先,我们要明白如何触发 key 的...

    Redis和Memcached的区别详解

    Redis和Memcached是两种常见的内存数据存储系统,它们在数据结构、内存管理、性能等方面存在显著差异。这里我们将深入探讨它们的区别。 首先,Redis提供丰富的数据结构支持,这是它与Memcached最明显的区别。Redis...

    分布式缓存 Redis + Memcached 经典面试题!.pdf

    【分布式缓存Redis + Memcached】是现代互联网应用中常用的技术组合,用于高效地存储和检索数据,以提高系统的响应速度和并发处理能力。这里我们将深入探讨这两个分布式缓存系统的特点,以及它们在面试中经常遇到的...

    Python 磁盘支持缓存(与 Django 兼容) 比 Redis 和 Memcached 更快 纯 Python .zip

    这些进程中包括用作缓存的 Memcached(有时还有 Redis)。利用空闲磁盘空间进行缓存不是很好吗?Django 是 Python 最流行的 Web 框架,附带多个缓存后端。遗憾的是,Django 中基于文件的缓存本质上存在问题。剔除...

    memcached数据完整迁移到redis

    总结来说,从 memcached 迁移到 redis 是为了利用 redis 更强大的功能和更全面的数据管理能力。在迁移过程中,需要注意数据一致性、性能优化以及对现有应用程序的影响。通过合理的规划和测试,可以顺利完成这个转换...

    Tornado 的 Redis,Memcached 会话.zip

    皮克特这是一个会话库,专为与 Redis 或 Memcached 和 Tornado Web 服务器一起使用而编写。项目状态执照本软件遵循 BSD 2-Clause 许可(请参阅 LICENSE 文件)要求非 Python 要求Redis(使用 2.4.0 版本测试)或 ...

Global site tag (gtag.js) - Google Analytics