当前位置:网站首页>每条你收藏的资讯背后,都离不开TA
每条你收藏的资讯背后,都离不开TA
2022-07-27 14:58:00 【华为云】
随着互联网信息技术的发展
个性化推荐早已融入我们的生活
手机里收藏的各类资讯内容
背后都有TA
作为国内领先的内容生态服务平台,上海阅客信息科技有限公司(简称“阅客”)通过数据分析驱动运营,规模化提供内容生态服务,并基于内容场景提供广告技术服务,以技术精准匹配内容和用户,实现内容收益的最大化。
阅客拥有强大的内容服务和广告能力,每日过万的内容更新以及上亿的曝光。庞大的数据体量和海量高并发,对支撑阅客业务应用的数据库发起了挑战。

数据量激增下的存储问题
数据库作为承载海量数据的基石,承担着守护企业数据资产的重任,也在企业数字化转型中发挥着关键作用。数据量激增下,阅客使用的基于ECS自建的Redis数据库在高并发和稳定性方面面临巨大压力,成本也随之攀升,具体痛点如下:
- 性能问题:在配置缓存场景中,阅客使用了Redis存储配置策略信息。这里通常会存在一些大key,大key在开源Redis中经常有阻塞请求的性能问题,因此经常出现慢查询问题,阅客自己的监控群里每天也有大量告警。
- 海量数据高并发访问:由于业务采用分布式部署,对Redis的并发请求量很大,自建sentinel哨兵Redis上连接数日常维持在3w,开源Redis无法承受,导致业务经常访问超时,甚至需要重启自建Redis。同样,每天也都会收到大量告警。
- 数据存储成本高昂:数据量激增,布隆过滤场景中的protobuf序列化数据也越来越多,增长到了TB级。而开源Redis内存成本痛点、稳定性痛点开始出现,给业务运营带来一定压力。
- 搬迁兼容顾虑:客户一开始就自建了两类不同架构的Redis集群,分别是Cluster集群和Sentinel集群。每个集群对应相应的客户端代码,且不互相支持。如果选择上云,阅客必须修改自己的业务代码,然后重新发版、上线,业务改造负担大。
云原生时代的个性化推荐
云原生时代,基于统一云基础设施的云原生数据库,成为企业上云首选。阅客紧随时代发展潮流,选择了华为云云原生数据库GaussDB(for Redis)作为企业数字化转型的数据底座,全数替换了原先自建的Redis数据库,业务发展迈上新台
性能卓越,内容推荐更快速
针对阅客配置缓存业务中的大key性能问题,GaussDB(for Redis)采用分布式架构和多线程结合的方式,提供了卓越的性能,保障业务持续高效运行。相比开源Redis的单线程架构,GaussDB(for Redis)的多线程架构更具优势,即使存在大key,也不会导致全局性能受损。成功搬迁后,阅客自己的监控群响应超时告警大幅减少,配置缓存业务响应及时高效,内容推荐更快速到达用户端。
海量存储,内容推荐更平稳
GaussDB(for Redis)提供独享的连接数资源,客户将自建哨兵Redis搬迁到4节点GaussDB(for Redis)实例后,业务实实在在独享4w连接数资源,且都在合适阈值内,运行非常稳定,彻底解决了阅客业务的连接数问题,亿级流量洪峰场景下也能从容面对,内容推荐更平稳。
布隆过滤器业务成本节省80%
GaussDB(for Redis)采用存算分离架构,可以独立购买计算、存储资源,避免开源Redis经常出现的算力成本浪费;拥有强大的数据压缩能力,尤其对布隆过滤场景中的protobuf序列化数据有奇效,实现了TB级数据到GB级的有效压缩,释放了80%的存储成本,完全超乎客户想象,也为客户今后的业务增长铺好了路。
应用无须改造,一键式搬迁
GaussDB(for Redis)提供”Proxy通用型”实例类型,同时兼容StandAlone客户端、Cluster客户端以及Sentinel客户端,无需修改客户端业务代码,真正做到了“一种架构全兼容”、“业务搬迁0改造”,彻底打消了阅客的搬迁兼容顾虑。在研发团队支撑下,一周就搞定了全部数十套自建Redis,实现了高效平滑无感迁移。
云原生数据库GaussDB(for Redis)不仅提升了阅客的服务效率,让个性化推荐更快更稳,还降低了存储和改造成本,为企业未来发展奠定了云化基础,助力阅客实现更高质量的资讯触达。
边栏推荐
猜你喜欢

C语言之枚举和联合体

自然排序:comparable接口,定制排序:compartor接口的区别

File class byte input and output stream
![[paper reading] a CNN transformer hybrid approach for coding visual neuralactivity into text](/img/31/d6d7ac43c3170c0d527d88053618c9.png)
[paper reading] a CNN transformer hybrid approach for coding visual neuralactivity into text

Dynamic memory allocation in C language

合工大苍穹战队视觉组培训Day7——视觉,jetson naon与D435i

选 择 结 构

Operators of C language

ES6数组新增属性

Mpc5744p clock module
随机推荐
项目练习:表格的查改功能
AS更换背景主题以及背景图片
Servlet用Cookie实现用户上次登录时间
In addition to "adding machines", in fact, your micro service can be optimized like this
Leader: who uses redis overdue monitoring to close orders and get out of here!
从零开始Blazor Server(1)--项目搭建
牛客题目——对称的二叉树
Enumeration and union of C language
Layoff quarrel, musk: I'm too hard; Mercilessly open source a public opinion acquisition project; Feature engineering is as simple as parameter adjustment?! Nerf boss shouted that he couldn't move; Cu
C语言之分支循环语句
Matplotlib drawing error: "! Latex error: file `type1cm.sty 'not found." solution
Database notes sorting
JDBC连接数据库
If you don't want to step on those holes in SaaS, you must first understand the "SaaS architecture"
Xcode 发布测试包TestFlight
移动端基础
Flex弹性盒布局
Polynomial locus of order 5
Structure and bit segment of C language
Ten thousand words analysis ribbon core components and operation principle