广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >PHP中redis和memcache区别是什么
  • 443
分享到

PHP中redis和memcache区别是什么

redismemcache别是 2022-10-18 14:10:44 443人浏览 薄情痞子
摘要

这篇文章给大家分享的是有关PHP中Redis和memcache区别是什么的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。PHP中redis和memcache区别php中memcac

这篇文章给大家分享的是有关PHPRedis和memcache区别是什么的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。

PHP中redis和memcache区别

php中memcached 和 redis 都很类似:都是内存型数据库,数据保存在内存中,通过tcp直接存取,优势是速度快,并发高,缺点是数据类型有限,查询功能不强,一般用作缓存

那么题主说 memcached 的事情 redis 都可以做,那么为什么 memcached 还有人用?那是因为它们两者并不是完全可以相互替代的,它们也有各自的长短优缺点:

Memcached

Memcached的优点:

Memcached可以利用多核优势,单实例吞吐量极高,可以达到几十万QPS(取决于key、value的字节大小以及服务器硬件性能,日常环境中QPS高峰大约在4-6w左右)。

适用于最大程度扛量,有效为服务器减压。

支持直接配置为session handle。

配置维护的坑比较少。

Memcached的局限性:

数据结构很简单单一,只支持简单的key/value数据结构,不像Redis可以支持丰富的数据类型。

无法进行持久化,数据不能备份,只能用于缓存使用,且重启后数据全部丢失。

无法进行数据同步,不能将MC中的数据迁移到其他MC实例中。

Memcached内存分配采用Slab

Allocation机制管理内存,value大小分布差异较大时会造成内存利用率降低,并引发低利用率时依然出现踢出等问题。需要用户注重value设计。

memcached服务端原生不支持水平扩展,必须在客户端编写缓存分布策略来实现分布式缓存,并且由于无法进行数据同步,因此生产环境中出现单机故障时可能会影响部分业务运行。

Redis

Redis的优点:

支持多种数据结构,比如 string(字符串)、

list(双向链表)、dict(hash表)、set(集合)、zset(排序set)、hyperloglog(基数估算)等等。

支持持久化操作,可以进行aof及rdb数据持久化到磁盘,从而进行数据备份或数据恢复等操作,较好的防止数据丢失的手段。

支持通过Replication进行数据复制,通过master-slave机制,可以实时进行数据的同步复制,支持多级复制和增量复制,master-slave机制是Redis进行HA的重要手段。

线程请求,所有命令串行执行,并发情况下不需要考虑数据一致性问题。

支持pub/sub消息订阅机制,可以用来进行消息订阅与通知。

支持简单的事务需求,但业界使用场景很少,并不成熟。

Redis的局限性:

Redis只能使用单线程,性能受限于CPU性能,故单实例CPU最高才可能达到5-6wQPS每秒(取决于数据结构,数据大小以及服务器硬件性能,日常环境中QPS高峰大约在1-2w左右)。

支持简单的事务需求,但业界使用场景很少,并不成熟,既是优点也是缺点。

Redis在string类型上会消耗较多内存,可以使用dict(hash表)压缩存储以降低内存耗用。

总结

在我看来,Redis在很多方面具备数据库的特征,或者说就是一个数据库系统,而Memcached只是简单的K/V缓存。

而且到底是用 redis 还是 memcached 这个还是看题主的需求,因为单纯是做缓存的话,memcached已经足够应付绝大部分的需求,redis 的出现只是提供了一个更加好的选择,但是不代表redis就能完全替代 memcached ,还是那句话,看你的需求是怎么样的。

按照技术的新旧来讲,redis 比 memcached 还更加新,但是成熟醒来说,memcached 应该更加好,再说现在潮流也有开始转投 mongoDB了,因为redis 的数据库特征,monGodb更胜一筹。

很多公司的缓存策略中使用memcached的还是占大多数的,再者是redis,最后才是mongodb,发现没有,最新的技术在公司团队的应用还是需要时间的,旧的技术策略还是很多公司团队在用,因为技术成型而且稳定性要好,这也是memcached比redis要被提及的更多的原因。

感谢各位的阅读!关于PHP中redis和memcache区别是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: PHP中redis和memcache区别是什么

本文链接: https://www.lsjlt.com/news/51123.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • PHP中redis和memcache区别是什么
    这篇文章给大家分享的是有关PHP中redis和memcache区别是什么的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。PHP中redis和memcache区别PHP中memcac...
    99+
    2022-10-18
    redis memcache 别是
  • Memcache和Redis的区别是什么
    这篇文章将为大家详细讲解有关Memcache和Redis的区别,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Memcache与Redis的概念memcach...
    99+
    2022-10-18
    redis memcache 别是
  • Redis和Memcache有什么区别
    今天就跟大家聊聊有关Redis和Memcache有什么区别,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。总结一:memcache官方定义Free &...
    99+
    2022-10-18
    redis emcache
  • Redis与Memcache有什么区别
    这篇文章主要介绍了Redis与Memcache有什么区别,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。Redis和Memcache 都是基于内存...
    99+
    2022-10-18
    redis memcache he
  • php中Redis和Memcached的区别是什么
    本篇文章为大家展示了php中Redis和Memcached的区别是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1、不同点(1)Redis和Memcache将数据存储在存储器中,是存储器数据库。...
    99+
    2023-06-15
  • redis和rabbitmq区别是什么
    这篇文章主要介绍redis和rabbitmq区别是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!           ...
    99+
    2022-10-18
    redis 别是 edi
  • mq和redis区别是什么
    这篇文章主要介绍了mq和redis区别是什么,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。       ...
    99+
    2022-10-18
    mq 别是 edi
  • Redis中ServiceStack.Redis和StackExchange.Redis区别是什么
    本文小编为大家详细介绍“Redis中ServiceStack.Redis和StackExchange.Redis区别是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“Redis中ServiceStack.Redis和StackExcha...
    99+
    2023-06-30
  • es和redis的区别是什么
    小编给大家分享一下es和redis的区别是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!es和redis区别RedisRed...
    99+
    2022-10-18
    redis es 别是
  • redis和hbase的区别是什么
    小编给大家分享一下redis和hbase的区别是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!HBase和Redis的功能上...
    99+
    2022-10-18
    redis 别是 edi
  • HBase和Redis的区别是什么
    这篇文章给大家分享的是有关HBase和Redis的区别是什么的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。HBase和Redis的功能上比较相似。都是nosql类型的数据库。但是...
    99+
    2022-10-18
    hbase redis 别是
  • Redis和Memcached 的区别是什么
    Redis和Memcached 的区别是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。了解过两者的同学有那么个大致的印象:1、redi...
    99+
    2022-10-18
    redis memcached
  • MySQL和Redis的区别是什么
    这篇文章主要介绍“MySQL和Redis的区别是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“MySQL和Redis的区别是什么”文章能帮助大家解决问题。 ...
    99+
    2022-10-19
    redis mysql
  • MongoDB和Redis有什么区别
    这篇文章主要介绍MongoDB和Redis有什么区别,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!MongoDB 更类似 MySQL,支持字段索引、游标操作,其优势在于查询功能比较强...
    99+
    2022-10-18
    mongodb redis edi
  • redis和mongodb有什么区别
    这篇文章主要介绍redis和mongodb有什么区别,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! RedisRedis是一个开源的使用ANSI C语言编写、支持网络、可基...
    99+
    2022-10-18
    redis mongodb edi
  • elasticsearch和redis有什么区别
    这篇文章主要介绍了elasticsearch和redis有什么区别,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。Redis是现在最热门的key-...
    99+
    2022-10-18
    elasticsearch redis edi
  • swoole和redis有什么区别
    本篇内容主要讲解“swoole和redis有什么区别”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“swoole和redis有什么区别”吧!区别:1、redis是由“Salvatore Sanfi...
    99+
    2023-06-29
  • php === 和==的区别是什么
    本文操作环境:windows7系统、PHP7.1版、DELL G3电脑php === 和==的区别是什么?php中的==和===的用法及区别在开发中进场遇到数值匹配的问题,那么在进行匹配时,遇到下面的情况,你觉得结果是什么?<php ...
    99+
    2021-03-17
    php
  • php和java区别是什么
    php和java区别:java是一种静态编程语言,而php是动态的。php适合于快速开发,中小型应用系统,而java适合于开发大型的应用系统。Java通过JDBC来访问数据库,访问数据库的接口比较统一,而php对于不同的数据库采用不同的数据...
    99+
    2022-10-19
    Java PHP
  • redis主从和集群的区别是什么
    redis主从和集群的区别是什么?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!主从:通过持久化功能,Redis保证了即使在...
    99+
    2022-10-18
    redis 别是 edi
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作