Redis从入门到进阶

栏目: 数据库 · Redis · 发布时间: 5年前

内容简介:Redis从入门到进阶今天跟大家交流一下Redis的一些学习材料,希望通过今天的分享,能够带领大家简单入门Redis。首先介绍一下什么是Redis? Redis全称是Remote Dictionary Server,是一种Key-Value类型的开源缓存中间件。可用于数据库前端缓存、事件发布或订阅、高速队列等多种场景。提供字符串(String)、哈希(Hash)、列表(List)、集合结构(Set、Sorted Set)、流(Stream)等数据类型的直接存取。同时提供了基于内存的读取的方式,可以把内存的数

Redis从入门到进阶

今天跟大家交流一下 Redis 的一些学习材料,希望通过今天的分享,能够带领大家简单入门Redis。

首先介绍一下什么是Redis? Redis全称是Remote Dictionary Server,是一种Key-Value类型的开源缓存中间件。可用于数据库前端缓存、事件发布或订阅、高速队列等多种场景。提供字符串(String)、哈希(Hash)、列表(List)、集合结构(Set、Sorted Set)、流(Stream)等数据类型的直接存取。同时提供了基于内存的读取的方式,可以把内存的数据同步到磁盘上。Redis是当前最流行的内存数据库,在AWS最大的公有云厂商,MySQL是数据库排名第一的,而排名第二的是Redis。数据库还有一个流行的排行榜叫DBEngines,DBEngines里面Redis在K-V 存储里面排名第一,在所有数据库里面排名第七。除此之外,Redis其实不仅局限在K-V领域,下图是在RedisConf最新发布的一张图:

Redis从入门到进阶

在这张图中可以看得出,Redis除了可以当K-V数据库之外,它还可以当做文本搜索,相当于Elasticsearch;可以当做图数据库;同时它可以当文档数据库,开源的有MongoDB;它可以在消息领域有所建树,相当于卡夫卡,它可有提供streams类型的能力。此外在2019年的Redisconf上,Redis作者演示了一个实时聊天demo,这表明Redis可以把AI能力带进来,可以做机器学习的。大大扩展了Redis的疆界,Redis是源于K-V,但是远远超于K-V。

接下来介绍一下哪些用户会使用到Redis。基本上来说所有的大、中、小型分布式系统应用都会使用到Redis。因为缓存是分布式系统中的重要的组件,主要解决高并发、大数据场景之下热点数据的访问的性能问题。提供高性能的数据快速访问的能力。

接下来我会举几个生活中的案例给大家。首先是微信抢红包的例子,微信抢红包是一个很高频的操作。大家想一下春晚的时候,有几十亿的华人同时点击抢红包操作,这会带来非常大的流量。如果这个流量直接压到数据库上,那基本上数据库就直接崩掉了,毫无疑问。但如果在 MySQL 前面加设一个Redis,那么可以把MySQL中高频的、99%以上的流量卸载到Redis上。那我们只需要应用的这两步的操作:首先应用先到Redis里面去查取这个红包是不是还有还有金额?同时确认人数是不是达到了上限。如果条件满足的情况之下,再对数据库进行读取的二次的确认操作。这样它就只会把有效的流量透传到数据库上,而把大部分的数据拦截在Redis这一侧,从而达到了保护MySQL数据库的作用。

还有一个案例,就是我们在华为商城销售华为手机的时候遇到的购物车的案例。购物车到底选择用什么数据库比较好,我们最早的时候使用的是MySQL,因为毕竟他是跟客户的数据相关。但在实际的使用过程中,我们发现购物车的逻辑其实也是比较多的,因为它涉及到赠品,它涉及到物品的关联打折,所以它涉及到比较复杂的 SQL 操作。在这种情况之下MySQL的操作很容易有性能瓶颈问题。曾经我们有黑客尝试考验我们的购物车能力,就只是把购物车的数量做自动增减,一直并发的刷,就可以把那个数据库给搞坏掉了。我们在优化的过程中就发现了这个性能瓶颈问题,把MySQL数据库卸载成为Redis数据库。使用Redis之后,有几个效果,一是它可以把非关键流量给卸载下来。那另外一方面,就是我们利用到Redis高性能的能力,能够把针对是高频的一些操作,变成一个简单的一个K-V操作,那对整个系统的效率的提升其实是有很大的帮助的。除此之外,Redis在很多产品中都有应用,比如说在小视频领域中,它可以缓存一些用户的关系;比如游戏中的积分排行榜,可以使用到Redis的排行的能力,很快就可以把属于Top级的用户显示出来;比如在订票系统里面,可以用Redis来缓存一些用户的信息。通过这种方式,Redis基本上不带行业属性的,可以进入到任何一个分布式系统里面,广泛应用。

以上简单介绍了Redis的发展概况和使用场景,接下来还有Redis数据结构、实例参数配置、备份恢复与迁移等操作的讲解和演示,想要学习吗,立即报名华为云学院( https://edu.huaweicloud.com/ )《Redis超速入门》课程,一起用七天的时间通过实战环境快速掌握Redis。


以上所述就是小编给大家介绍的《Redis从入门到进阶》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Programming PHP

Programming PHP

Rasmus Lerdorf、Kevin Tatroe、Peter MacIntyre / O'Reilly Media / 2006-5-5 / USD 39.99

Programming PHP, 2nd Edition, is the authoritative guide to PHP 5 and is filled with the unique knowledge of the creator of PHP (Rasmus Lerdorf) and other PHP experts. When it comes to creating websit......一起来看看 《Programming PHP》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具