如果你正在面试,被问到了这些问题:
怎么给数据库加缓存?
数据库加缓存有哪些好的方案?
怎么保证数据库和缓存的数据一致性?
你会怎么回答?
这些问题可能大概率都是围绕着MySQL+Redis展开,一直以来,Redis因其全内存、架构简洁、丰富数据模型和多指令方面的特性,在性能和效率上表现出色,亚毫秒的响应时延使得Redis在缓存场景成为开发者的首选。
除了Redis,各大互联网厂商中有数十个自研的KV存储,这些KV存储在互联网的业务中起着至关重要的作用。以Redis为代表的的这些产品虽然有着优秀的KV存储基因,但全内存带来的高昂成本,以及在安全性和容量上的挑战,使得其在存储场景没有得到大规模的使用。
因此,Tendis诞生了。
1
Tendis是什么?
腾讯云数据库Tendis是集腾讯众多海量KV存储优势于一身的Redis存储解决方案, 并100%兼容Redis协议和Redis4.0所有数据模型。作为一个高可用、高性能的分布式KV存储数据库,从访问时延、持久化需求、整体成本等不同维度的考量,腾讯云数据库Tendis推出了混合存储版和存储版两种不同产品形态,并将存储版开源。为客户提供更丰富的数据结构和更灵活的存储方式,满足不同场景下的业务需求,并完美解决了Redis在存储场景的成本、安全和容量挑战,让业务在存储场景中使用更放心和高效。
一、混合存储版的应用场景
Tendis混合储存方案融合缓存和存储的设计,天然解决缓存场景的一致性、缓存击穿、缓存雪崩等难题,无需要开发者重复的做安全防御设计,同时使用混合存储方案开发者仅需一次建模,访问一个Redis接口,无需再同时更新缓存和存储,并且Tendis提供的动态TTL和延迟缓存机制完全革新了缓存的使用,开发者无需再关心数据缓存时长,这个通过运维人员的一个配置即可动态调整。
二、存储版的应用场景
Tendis大容量储存方案兼容Redis生态,具备“单机50万写入、70万读取、P99 < 3ms”高性能,以及支持PB级规模的大容量优势,适合成本考虑为首要选型因素,业务数据有高持久化要求、且访问频度较低和性能要求较宽松的大容量温冷数据存取场景。
1
社区开源共建
其实Tendis开源已经有半个月了,在20年12月的Techo大会上,Tendis正式开源,并将和社区开源共建。
Tendis和Redis使用场景并不冲突,相反他们是互补的关系。Redis基于内存的设计在缓存和计算场景提供低延迟、高并发的方案,Tendis基于磁盘的设计在存储场景提供大容量、低成本、高效率的方案,Redis的数据模型是Tendis的基因,同时和Redis相互补位,因此腾讯云数据库团队决定将Tendis开源出来,一方面作为对Redis社区的回馈,同时也希望众多的开发者参与进来,将Redis生态的能力建设完整。
同时腾讯云数据库还发布了“Tendis开发者扶持计划”,为每一位开发者提供一年的免费实例(存储版),云数据库Tendis开箱即用的特性,为开发者快速的熟悉Tendis提供了便捷的环境(免费领取实例正在紧密筹备中,后续将正式通知领取方式及入口)。
Tendis存储版目前已在腾讯内外部包括游戏、视频、社交、电商等多个行业提供数据库支撑。我们期望通过将Tendis开源,能够有助于业界其他相关领域的应用。同时通过Tendis开源项目的平台,打造一个行业标杆级的分布式KV存储数据库产品,期待与您一起共建Tendis项目!
1
Tendis开发者线上交流会
我们将在1月20日(周三)进行第一次Tendis开发者线上交流会,由腾讯专家分享Tendis的架构和开源之路,扫描图片二维码即可预约观看~
点击「阅读原文」,直达Tendis开源地址,期待您的 Star、 issue 和 PR!