你是否在春运抢票过程中遇到12306 APP瘫痪? 你是否在双十一抢好物的时候显示系统繁忙?
你是否在微博刷某个爆了的娱乐新闻时显示页面走丢了? 前几天热搜上好像又说小红书又崩溃了?
当用户请求量过高,数据库无法支撑时,应用程序或软件就会从客户的界面“出逃”。出逃的结果是:用户丢失,对产品的技术能力产生不信任感。
如何扩展请求扼杀应用程序或软件界面的“出逃计划”?最好的方法是缓存!
印度科技公司Freshworks的数据库负载问题
对于任何一家企业而言,优质的服务才是客户成功的业务关键。
作为一家超过100亿美元估值的印度科技公司,Freshworks让“客户成功”变得简单!
自2010年成立以来,Freshworks已成为客户服务平台的领导者,其基于云的商业软件套件被全球超过150000家组织使用,包括松下、惠普、纽约大学和美国运通等。
在过去的10多年时间里,Freshworks的年增长率超过了50%,年度总收入早已超过了1亿美元。随着七款新产品的上市,这种非同凡响的增长速度正在使Freshwork的应用程序架构和开发运营能力变得紧张起来!
随着公司数据库负载的增长,其在性能扩展方面遇到了麻烦:Freshworks需要减轻其主数据库MySQL的负担,但当前的缓存解决方案(由Amazon ElastiCache提供的开源Redis)却产生了很多问题。
Freshworks的工程师Abhishek Dhulipudi表示:ElastiCach不支持实时迁移,如果我们想将数据从一个实例迁移到另一个实例,则需要数周的人工操作以避免停机,这种限制会减慢我们的产品开发生命周期。
Freshworks选择Redis企业云缓存解决方案
在评估了Aerospike和Hazelcast等多个NoSQL内存数据库后,Freshworks决定继续使用具有极高性能和灵活性的Redis。最终,该公司选择了Redis企业云(Redis Enterprise Cloud)来替换性能不佳的Amazon ElastiCache缓存解决方案。
Redis企业云(Redis Enterprise Cloud):唯一的实时多云数据层,完全托管的无服务器云数据库服务
【功能】
将Redis用作一体化数据库和缓存数据库
存储和搜索具有复杂关系的JSON文档
启用实时分析、流式传输和微服务将
获得即时故障转移和备份恢复
同时写入多个地理位置分布式主数据库
安全且经济高效地存储TB级数据
【优势】
灵活部署:部署在任何云、混合或多云架构上
内置耐用性:主分片和副本分片上多个持久性选项
大规模性能:小于1ms的数据库响应时间,每秒支持数百万次操作
低延迟:基于CRDT的 Active-Active 部署维护亚毫秒级数据
成本效益:使用Redis on Flash节省高达 70% 的基础架构成本
Freshworks的工程总监 Naren Janakiraman 说:Redis企业云提供了非常好的服务,我们可以使用市场上最高的内存性能和灵活的数据结构以在各种用例中实现极高的效率,这种完全托管的操作还可以加快应用程序交付。
除了使用 Redis企业版数据库(Redis Enterprise)作为其MySQL数据库的前端缓存之外,Freshworks还将Redis Enterprise用于如下几个方面:
- 计量:出于限速目的,Freshworks 使用 Redis Enterprise Cloud 高度优化的Hash、List和 Sorted Sets 数据结构和内置命令来计量进入Freshdesk的API请求。
- 数据持久存储:Freshworks使用Redis Enterprise Cloud作为后台作业的持久存储,存储在磁盘中。
- 身份验证微服务-会话存储:随着Freshworks过渡到微服务,它开始将关键工作负载从其单一的Ruby on Rails Web应用程序框架中分离出来,身份验证则是首批微服务之一。身份验证微服务可以使用Redis Enterprise Cloud作为会话存储。
- 实时分析:Freshworks利用Redis Enterprise Cloud的强大数据结构(包括HyperLogLog、位图和集合)作为用户分析的前端数据库。
Freshworks的工程师 Dhulipudi表示:进入Freshdesk的每个请求都会以某种方式触及Redis Enterprise Cloud,通过将几个关键数据库功能卸载到Redis Enterprise Cloud,我们能够减少 MySQL数据库实例的数量,同时显著提高应用程序响应时间和扩展能力。
Redis Enterprise帮助Freshworks的业务软件保持高水平性能
作为一个完全托管的数据库即服务产品,Redis企业云的操作非常简单,其自动扩展、故障转移、集群创建、持久性和高可用性是也成为了Freshworks软件产品的巨大卖点。
Janakiraman说: Freshworks有67项服务都在使用Redis Enterprise Cloud。如果没有它的无缝功能和自动化功能,我们将会在基础设施和运营管理上投入非常多的资金。Redis Enterprise Cloud的Redis on flash技术将常用的数据放到内存,不常用的数据放到SSD(固态硬盘),这样既可以提高处理速度,又可以节约成本,不仅帮助我们的团队专注于创新和业务增长,还扩展了我们的产品组合并将业务服务发展到新的地区。
Freshworks非常看好Redis Enterprise的技术能力,它认为 Redis Enterprise Cloud的作用正在扩大,在未来能够承担更大的工作负载。Dhulipudi说:借助Redis企业云,我们将实施更多创造性的缓存、持久数据存储、微服务和用户分析用例,使我们的业务软件在行业内保持最高水平的性能。
推荐阅读:
《 Redis企业云如何通过缓存轻松扩展到亿级请求?》
《Redis企业版数据库简介》
虹科云科技,主要分享云计算、数据库、商业智能、数据可视化、高性能计算等相关知识、产品信息、应用案例及行业信息,为学习者传输前沿知识、为技术工程师解答专业问题、为企业找到最适合的云解决方案!