Redis和Memcached的主要区别如下表格所示 -

比较项 Memcached Redis
定义 Memcached 是内存中键值存储,最初用于缓存目的。 Redis 是内存数据结构存储,用作数据库、缓存和消息代理。
说明/描述 Memcached 简单、设计简单但功能强大。其简单的设计促进了快速部署,易于夸大,并解决了与大数据缓存相关的许多问题。它具有内置的 API,可提供分布在多台机器上的非常大的哈希表,并使用内部内存管理来提供更高的效率。 Memcached 仅支持适合存储只读数据的 String 数据类型。 Memcached 是一个易失的内存键值源。它是多线程的,主要用于缓存对象。 Redis 是一个开源的内存数据结构存储,它也可以用作数据库和缓存。它支持几乎所有类型的数据结构,例如字符串、哈希、列表、集合、带范围查询的排序集合、位图、超日志和通过半径查询的地理空间索引。 Redis 也可用于用作发布/订阅的消息传递系统。
主数据库模型 Memcached 遵循键值存储数据库模型。 Redis 也遵循 Key-value 存储数据库模型。
开发者 由 Memcached 开发由 Danga Interactive 开发。 Redis 由 Salvatore Sanfilippo 开发。
初始版本 Memcached 最初于 2003 年发布。 Redis 最初于 2009 年发布。
许可证 Memcached 是免费和开源的。 Redis 也是免费和开源的。
基于云
实现语言 Memcached 是用 C 语言实现的。 Redis 也是用 C 语言实现的。
服务器操作系统 FreeBSD Linux OS X Unix Windows BSD Linux OS X Windows
支持的编程语言 .Net、C、C++、ColdFusion、Erlang、Java、Lisp、Lua、OCaml、Perl、PHP、Python、Ruby C、C#、C++、Clojure、Crystal、D、Dart、Elixir、Erlang、Fancy、Go , Haskell, Haxe, Java, JavaScript (Node.js), Lisp, Lua, MatLab, Objective-C, OCaml info, Perl, PHP, Prolog, Pure Data, Python, R, Rebol, Ruby, Rust, Scala, Scheme, Smalltalk, Tcl
服务器端脚本 没有 Lua
触发器
分区方法 分片
复制方式 主从复制
MapReduce
外键
事务概念 乐观锁定,命令块和脚本的原子执行
并发
持久性
用户概念 简单的基于密码的访问控制
安装 Memcached 的安装和运行有点复杂。 安装 Redis 要容易得多,不需要依赖项。
内存使用 Memcached 比 Redis 更节省内存,因为它消耗的元数据内存资源相对较少。 Redis 的内存效率更高,但只有在使用 Redis 哈希之后。
持久性 Memcached 不使用持久性数据。使用 Memcached 时,数据可能会因重新启动而丢失,并且重建缓存是一个代价高昂的过程。 Redis 可以处理持久数据。默认情况下,它至少每 2 秒将数据同步到磁盘,提供可选和可调整的数据持久性,用于在计划关闭或意外故障后引导缓存。虽然我们倾向于将缓存中的数据视为易失和瞬态的,但将数据持久化到磁盘在缓存场景中可能非常有价值。
复制 Memcached 不支持复制。 Redis 支持主从复制。
存储类型 MemcacheD 将变量存储在其内存中,并直接从服务器内存中检索任何信息,而不是再次访问数据库。 Redis 就像一个驻留在内存中的数据库。它从其数据库中执行(读取和写入)键/值对以返回结果集。这就是为什么它被开发者用于实时指标和分析的原因。
执行速度和性能 MemcacheD 非常适合处理高流量网站。它可以一次读取许多信息,并在极好的响应时间内给反馈。 Redis 既不能处理高流量读取,也不能处理大量写入。
数据结构 MemcacheD 在其数据结构中仅使用字符串和整数。因此保存的所有内容都可以是字符串或整数。这很复杂,因为对于整数,唯一可以做的数据操作就是添加或减去它们。如果您需要保存数组或对象,则必须先将它们序列化,然后再保存。要读回它们,需要取消序列化。 Redis 具有更强大的数据结构,它不仅可以处理字符串整数,还可以处理二进制安全字符串、二进制安全字符串列表、二进制安全字符串集和排序集。
键的长度 Memcached 键的长度最大为 250 字节。 Redis 的键的长度最大为 2GB。
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果。
转载请注明:文章转载自 有区别网 [http://www.vsdiffer.com]
本文标题:Redis和Memcached的区别
本文链接:https://www.vsdiffer.com/vs/redis-vs-memcached.html
免责声明:以上内容仅是站长个人看法、理解、学习笔记、总结和研究收藏。不保证其正确性,因使用而带来的风险与本站无关!如本网站内容冒犯了您的权益,请联系站长,邮箱: ,我们核实并会尽快处理。