当前位置:首页 > 科技  > 软件

微信红包高性能架构复杂度分析

来源: 责编: 时间:2023-10-30 09:07:21 454观看
导读红包复杂度总体分析图片红包业务应该属于质量复杂度图片红包高性能复杂度分析图片做性能分析,我们计算的都是按峰值来计算,上图是我们得出的一些数据。软件系统的性能都是用峰值TPS/QPS来衡量的,其时间单位是秒。红包高

红包复杂度总体分析

图片图片LQC28资讯网——每日最新资讯28at.com

红包业务应该属于质量复杂度

LQC28资讯网——每日最新资讯28at.com

LQC28资讯网——每日最新资讯28at.com

图片图片LQC28资讯网——每日最新资讯28at.com

LQC28资讯网——每日最新资讯28at.com

红包高性能复杂度分析

图片图片LQC28资讯网——每日最新资讯28at.com

做性能分析,我们计算的都是按峰值来计算,上图是我们得出的一些数据。软件系统的性能都是用峰值TPS/QPS来衡量的,其时间单位是秒。LQC28资讯网——每日最新资讯28at.com

红包高性能复杂度应对思路:LQC28资讯网——每日最新资讯28at.com

对照复杂度

图片图片LQC28资讯网——每日最新资讯28at.com

进程模型:主从模型、生产者-消费者模型、管道模型...LQC28资讯网——每日最新资讯28at.com

网络模型:TCP/IP模型、五层模型、OSI模型...LQC28资讯网——每日最新资讯28at.com

缓存模型:应用程序缓存模型、数据库缓存模型、内存缓存模型...LQC28资讯网——每日最新资讯28at.com

红包高性能复杂度应对思路-发红包:LQC28资讯网——每日最新资讯28at.com

图片图片LQC28资讯网——每日最新资讯28at.com

因为你不是新开发一个系统,那进程模型、网络模型、缓存模型基本都是跑在原有的框架之上,基本不要改,用springboot就用springboot。LQC28资讯网——每日最新资讯28at.com

存储模型考虑点是红包的读写业务还是比较复杂的,不是一个简单的查询模型,所以暂时用B+树,B+树的高度保持平衡,使查找操作效率高,在插入和删除操作时性能相对稳定,支持范围查询,因为它的叶子节点有序排列LQC28资讯网——每日最新资讯28at.com

集群方面:计算高性能 发红包是个简单的业务,任务分配就行了。存储方面,关系数据库的分片存储 一个数据库支持2.5万个红包, 还是比较吃力的。LQC28资讯网——每日最新资讯28at.com

发红包架构图:LQC28资讯网——每日最新资讯28at.com

图片图片LQC28资讯网——每日最新资讯28at.com

上面是一个初步的架构 草稿纸也能画得出来。LQC28资讯网——每日最新资讯28at.com

看红包

图片图片LQC28资讯网——每日最新资讯28at.com

存储不用 Redis List   用数据库是否可以?其实也是可以,性能要关注 ,Mysql的成本比较高,同等的条件范围下,一般来说数据库的服务器的成本要比负责运算的机器要高。LQC28资讯网——每日最新资讯28at.com

为啥 hash ?抢红包分配在一个机器,业务会简单,实现简单不要分布式的消费LQC28资讯网——每日最新资讯28at.com

不过中间增加机器,hash的过程肯定会变。LQC28资讯网——每日最新资讯28at.com

看红包:LQC28资讯网——每日最新资讯28at.com

图片图片LQC28资讯网——每日最新资讯28at.com

看红包架构= 抢红包架构

图片图片LQC28资讯网——每日最新资讯28at.com

红包高性能方案  整体架构

图片图片LQC28资讯网——每日最新资讯28at.com

红包整体架构图-单机房示意图:LQC28资讯网——每日最新资讯28at.com

图片图片LQC28资讯网——每日最新资讯28at.com

红包高性能方案 - 更高一级的架构决策

图片图片LQC28资讯网——每日最新资讯28at.com

LQC28资讯网——每日最新资讯28at.com

高性能架构的成本优化思路:LQC28资讯网——每日最新资讯28at.com

图片图片LQC28资讯网——每日最新资讯28at.com

假设现在红包业务总共部署了1000台服务器,老板觉得运营成本太高,希望能够节省一些成本。LQC28资讯网——每日最新资讯28at.com

优化:LQC28资讯网——每日最新资讯28at.com

1. 服务器改为 Go 实现?LQC28资讯网——每日最新资讯28at.com

2. 发红包的时候拆分?LQC28资讯网——每日最新资讯28at.com

3. 红包业务和其它业务共用服务器?LQC28资讯网——每日最新资讯28at.com

创新:LQC28资讯网——每日最新资讯28at.com

1. 开发红包数据库?LQC28资讯网——每日最新资讯28at.com

2. 弹性扩容/缩容?LQC28资讯网——每日最新资讯28at.com

LQC28资讯网——每日最新资讯28at.com

红包架构 - 全部用数据库存储

图片图片LQC28资讯网——每日最新资讯28at.com

其中的变化是:去掉了RedisClusterLQC28资讯网——每日最新资讯28at.com

LQC28资讯网——每日最新资讯28at.com

LQC28资讯网——每日最新资讯28at.com

优化方案-发红包拆分:这还是比较投机取巧的LQC28资讯网——每日最新资讯28at.com

图片图片LQC28资讯网——每日最新资讯28at.com

【小结】

  1. 红包的复杂度主要体现在质量复杂度
  2. 每天1亿的请求量不一定是高性能
  3. 将发红包、拆红包分为不同的服务,可以提升性能
  4. 红包业务可以作为支付业务的功能,也可以按照独立业务来看
  5. 降本不只是主要靠提升单机处理性能

本文链接:http://www.28at.com/showinfo-26-15759-0.html微信红包高性能架构复杂度分析

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 如何避免Java内存泄漏,来看看这个

下一篇: 阿里二面:双亲委派机制?原理?能打破吗?

标签:
  • 热门焦点
  • 影音体验是真的强 简单聊聊iQOO Pad

    大公司的好处就是产品线丰富,非常细分化的东西也能给你做出来,例如早先我们看到了新的vivo Pad2,之后我们又在iQOO Neo8 Pro的发布会上看到了iQOO的首款平板产品iQOO Pad。虽
  • 轿车从天而降电动车主被撞身亡 超速抢道所致:现场视频让网友吵翻

    近日,上海青浦区法院判决轿车从天而降电动车主被撞身亡案,轿车车主被判有期徒刑一年。案件显示当时男子驾驶轿车在上海某路段行驶,前车忽然转弯提速超车,
  • 线程通讯的三种方法!通俗易懂

    线程通信是指多个线程之间通过某种机制进行协调和交互,例如,线程等待和通知机制就是线程通讯的主要手段之一。 在 Java 中,线程等待和通知的实现手段有以下几种方式:Object 类下
  • JavaScript学习 -AES加密算法

    引言在当今数字化时代,前端应用程序扮演着重要角色,用户的敏感数据经常在前端进行加密和解密操作。然而,这样的操作在网络传输和存储中可能会受到恶意攻击的威胁。为了确保数据
  • 2纳米决战2025

    集微网报道 从三强争霸到四雄逐鹿,2nm的厮杀声已然隐约传来。无论是老牌劲旅台积电、三星,还是誓言重回先进制程领先地位的英特尔,甚至初成立不久的新
  • AI芯片初创公司Tenstorrent获三星和现代1亿美元投资

    Tenstorrent是一家由芯片行业资深人士Jim Keller领导的加拿大初创公司,专注于开发人工智能芯片,该公司周三表示,已经从现代汽车集团和三星投资基金等
  • iQOO Neo8 Pro抢先上架:首发天玑9200+ 安卓性能之王

    经过了一段时间的密集爆料,昨日iQOO官方如期对外宣布:将于5月23日推出全新的iQOO Neo8系列新品,官方称这是一款拥有旗舰级性能调校的作品。随着发布时
  • 利用职权私自解除被封帐号 Meta开除20多名员工

    11月18日消息,据外媒援引知情人士表示,过去一年时间内,Facebook母公司Meta解雇或处罚了20多名员工以及合同工,指控这些人通过内部系统以不当方式重置用户帐号,其
  • 中关村论坛11月25日开幕,15位诺奖级大咖将发表演讲

    11月18日,记者从2022中关村论坛新闻发布会上获悉,中关村论坛将于11月25至30日在京举行。本届中关村论坛由科学技术部、国家发展改革委、工业和信息化部、国务
Top