填坑利器?Redis如何弥补传统MySQL架构的不足

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

内容简介:传统MySQL架构难以满足的现代应用程序需求包括:传统数据库会受到每秒可执行操作的数量和并发连接数的限制,所以在数据库实例增多的情况下,基础架构和维护成本也会增加。Redis和传统数据库结合会产生哪些化学反应呢?首先,如果应用程序的数据是存储在MySQL或其它关系型数据库中,那么Redis可以作为前端数据库处于应用程序和MySQL之间;其次,还可以利用Redis来设计旁路读出式和写通式缓存解决方案、会话存储和速率限制器,这样可以提高性能、加速创新,以更少的资源扩展来获得最佳的用户体验。

传统 MySQL 架构难以满足的现代应用程序需求包括:

传统数据库的读/写速度对会话存储等用例不友好;

引入新表或修改现有模式非常复杂,这也导致了添加新功能和应用程序会有困难;

传统数据库会受到每秒可执行操作的数量和并发连接数的限制,所以在数据库实例增多的情况下,基础架构和维护成本也会增加。

Redis和传统数据库结合会产生哪些化学反应呢?首先,如果应用程序的数据是存储在MySQL或其它关系型数据库中,那么 Redis 可以作为前端数据库处于应用程序和MySQL之间;其次,还可以利用Redis来设计旁路读出式和写通式缓存解决方案、会话存储和速率限制器,这样可以提高性能、加速创新,以更少的资源扩展来获得最佳的用户体验。

填坑利器?Redis如何弥补传统MySQL架构的不足

Redis作为“参与型系统”

Redis内存中键值数据存储可为用户提供低延迟响应,其内置的数据结构(例如Lists、Hashes、 Sets、Sorted Sets、Bitmaps、Hyperloglog和Geospatial Indices),较于关系型数据库能够更有效地执行某些数据操作。

所以,我们建议在数据访问层后使用Redis作为“参与型系统”来存储热数据,同时将MySQL指定为“记录系统”。

另外,Redis如果应用于以下用例,那么就可以规避掉很多可能在原有应用程序、数据库或网络层中出现的瓶颈:

  • 缓存:为内存访问提供一个分层模型,Redis中存储应用程序中常用、重复读取的数据。缓存也可帮助应用程序快速检索数据并限制数据库服务器上的负载。
  • 会话存储:在所有交互式应用程序中,服务器为每个活动用户维护一个唯一会话。相比于依赖MySQL等关系型数据库来持久化会话数据,Redis在具有足够RAM大小的服务器上,单个集群就可以管理数千个会话。
  • 实时分析:通过排行榜、仪表板、民意测验、消息、计数器和其他实时聚合器进行的游戏或操作需要与最终用户进行持续的互动和通信。而Redis强大、高效的数据结构可以收集和处理数百万个同时进行的活动或对象,并将其发送到活动用户手中。
  • 度量:Redis可以通过速率限制应用程序在一定时间内的调用次数,帮助开发人员在高峰使用时间内高效地管理传统服务器上的负载。

当然,除了上面的用例,Redis在消息代理、数据结构存储和临时数据存储等用例中表现也很突出。总结一下就是Redis能更快地收集和获取数据并反馈给终端用户。再进一步的话,Redis Enterprise提供高可用性、内存复制、自动伸缩和重新分片,以及基于前沿CRDT的分布式数据库和内置Redis模块(如RediSearch、ReJSON、Rebloom和Redis Graph)。

借助于Redis,我们在传统解决方案中也可以享受到“即时体验”,其在性能、灵活性和可扩展性方面的优势值得我们尝试!


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

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

IT不再重要

IT不再重要

(美)尼古拉斯·卡尔 / 闫鲜宁 / 中信出版社 / 2008-10 / 29.00元

在这部跨越历史、经济和技术领域的著作中,作者从廉价的电力运营方式对社会变革的深刻影响延伸到互联网对我们生活的这个世界的重构性影响。他批判式的认为,企业想应用网络或应用程序,不再需要自建资料中心、自组IT团队维护和管理系统,因为互联网就像自来水或电力一样,可由专门公司提供服务,你可以付费使用。而如果他的设想真的会实现,我们的世界将会变成什么样子?IT产业的命运又将如何?这又对企业的IT领域投资产生什......一起来看看 《IT不再重要》 这本书的介绍吧!

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

在线 XML 格式化压缩工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

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

HEX CMYK 互转工具