Redis怎么弥补传统MySQL架构的不足

56次阅读
没有评论

共计 1348 个字符,预计需要花费 4 分钟才能阅读完成。

这篇文章将为大家详细讲解有关 Redis 怎么弥补传统 MySQL 架构的不足,丸趣 TV 小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

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

传统数据库的读 / 写速度对会话存储等用例不友好; 引入新表或修改现有模式非常复杂,这也导致了添加新功能和应用程序会有困难;

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

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

Redis 作为“参与型系统”

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

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

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

缓存:为内存访问提供一个分层模型,Redis 中存储应用程序中常用、重复读取的数据。缓存也可帮助应用程序快速检索数据并限制数据库服务器上的负载。

会话存储:在所有交互式应用程序中,服务器为每个活动用户维护一个唯一会话。相比于依赖 MySQL 等关系型数据库来持久化会话数据,Redis 在具有足够 RAM 大小的服务器上,单个集群就可以管理数千个会话。

实时分析:通过排行榜、仪表板、民意测验、消息、计数器和其他实时聚合器进行的游戏或操作需要与最终用户进行持续的互动和通信。而 Redis 强大、高效的数据结构可以收集和处理数百万个同时进行的活动或对象,并将其发送到活动用户手中。

度量:Redis 可以通过速率限制应用程序在一定时间内的调用次数,帮助开发人员在高峰使用时间内高效地管理传统服务器上的负载。

加 Java 后端高级技术群:479499375
,免费获取 Java 架构学习资料。

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

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

关于“Redis 怎么弥补传统 MySQL 架构的不足”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-27发表,共计1348字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)