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

对号入座,快看看你的应用系统用了哪些高并发技术?

来源: 责编: 时间:2024-04-19 09:28:28 293观看
导读一 系统简介百舸流量运营平台承接着京东金融APP核心资源位和京东APP部分重要资源位,大促单接口QPS达到10w+,压测单接口到20w+,典型的c端读链路高并发场景。接下来,聊聊我们的系统都有哪些应对高并发的“武功秘籍”。二

一 系统简介

百舸流量运营平台承接着京东金融APP核心资源位和京东APP部分重要资源位,大促单接口QPS达到10w+,压测单接口到20w+,典型的c端读链路高并发场景。接下来,聊聊我们的系统都有哪些应对高并发的“武功秘籍”。Uu328资讯网——每日最新资讯28at.com

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

二 “武功秘籍”

1 缓存(redis缓存,本地缓存)

缓存是提高系统的并发和提升系统的性能利器。redis分布式缓存用来解决缓存容量和性能问题,本地缓存用来解决redis的热key问题和提升性能。Uu328资讯网——每日最新资讯28at.com

详情可以查看之前的文章《服务端应用多级缓存架构方案》。Uu328资讯网——每日最新资讯28at.com

2 限流

限流是保护系统的一种策略,限流是控制接受请求的速率,通过压测提前预知系统可承载的并发量,是对系统资源的前置保护,保证系统容量范围内的请求能够正常返回,超过容量的请求丢弃。Uu328资讯网——每日最新资讯28at.com

可通过JSF配置限流或者sentinel实现限流。经典算法:令牌桶,漏桶,滑动时间窗口。Uu328资讯网——每日最新资讯28at.com

3 熔断降级

熔断也是保护系统的一种手段,分布式系统中系统之间通过微服务调用,偶尔会出现依赖的某个服务不可用或者耗时骤增,导致耗尽业务线程池,从而拖垮整个服务,可通过sentinel配置慢调用比例或者异常比例策略,达到熔断阈值后,接下来的熔断时长内请求会自动被熔断。经过熔断时长后熔断器会进入探测恢复状态(HALF-OPEN 状态),若接下来的一个请求成功通过后,则结束熔断,否则继续熔断。 实际过程中,需要结合上下游链路,设置合理的超时时间以及兜底数据。Uu328资讯网——每日最新资讯28at.com

常见的降级类型有:日常降级;大促非核心接口降级;大促日志降级,只打印error级别日志。Uu328资讯网——每日最新资讯28at.com

4 异步(CompletableFuture,MQ)

系统解耦:完成一项业务指令通常需要多个微服务协作,核心业务完成后,可通过消息的方式进行异步解耦,让其他服务订阅消息,完成各自的业务逻辑,适用于无需用户等待感知的场景。Uu328资讯网——每日最新资讯28at.com

提升性能:在C端用户等待的感知的场景,需要多个微服务协作,如果串行RPC调用,耗时是每个服务耗时之和,可通过CompletableFuture实现RPC异步调用,当使用时汇总结果,提升系统的性能。Uu328资讯网——每日最新资讯28at.com

5 池化技术

池化技术思想: 池化思想的解决的核心思想是通过预先创建数据库连接或者线程放入池中,以便在需要时可以重复使用,减少创建和销毁的开销,提高系统的性能和并发。Uu328资讯网——每日最新资讯28at.com

数据库连接池:如果是部署多台机器,注意多台机器连接数是否超过数据库最大连接数,避免出现连接不上问题。Uu328资讯网——每日最新资讯28at.com

业务线程池:自定义线程池,根据业务采用合适的拒绝策略,注意线程隔离,避免某个接口异常拖垮整个应用。Uu328资讯网——每日最新资讯28at.com

6 代码优化

减少调用链路,优化代码逻辑执行顺序,将阻断校验流程前置,优化数据结构和算法,优化查询逻辑,减少IO次数等。Uu328资讯网——每日最新资讯28at.com

7 JVM调优

使用G1垃圾回收器,应用系统根据自己的业务情况配置JVM参数,常规4C8G通用配置可参考:Uu328资讯网——每日最新资讯28at.com

-Xms4096m -Xmx4096m -XX:MaxMetaspaceSize=256m -XX:MetaspaceSize=256m -XX:+UseG1GC -XX:MaxGCPauseMillis=80

核心参数:-Xms初始堆大小,-Xmx最大堆大小,MaxMetaspaceSize最大元空间大小,MetaspaceSize表示Metaspace首次使用不足时触发Full GC(全面垃圾回收)的阈值,垃圾回收机制使用G1回收器,MaxGCPauseMillis在jvm垃圾回收过程中允许停顿的最大毫秒时间。Uu328资讯网——每日最新资讯28at.com

8 分治思想,横向扩展,

应用服务应该设计为无状态的,可通过增加应用实例数量来应对突发流量,将流量分到每台机器上,同样可以将应用进行按照业务拆分,单独部署,提高系统并发。Uu328资讯网——每日最新资讯28at.com

合并批量请求,将多次调用改为一次批量调用,减少网络开销。Uu328资讯网——每日最新资讯28at.com

9 预热

通过定时任务或者初始化脚本提前将数据加载到内存,提高系统的性能,常见的有缓存数据预热,ES数据预热等。Uu328资讯网——每日最新资讯28at.com

针对应用升级或者重启抖动,可以通过JSF预热的方式,应用重启后,在预热时间内,流量逐渐增加的方式,减少抖动。Uu328资讯网——每日最新资讯28at.com

JSF预热可参考文章《后端服务之应用预热》Uu328资讯网——每日最新资讯28at.com

10 数据异构

业务数据通常存储在支持事务的关系型数据库中,当在面对复杂查询场景时捉襟见肘,可将数据通过binlog异构到ES中,ES支持复杂场景的查询并且有较高的性能,轻松突破数据库单表数据量大及多表关联查询瓶颈。Uu328资讯网——每日最新资讯28at.com

数据异构可参考文章《记一次生产慢sql索引优化及思考》 中的目录五:长期优化方案。Uu328资讯网——每日最新资讯28at.com

11 分库分表,数据库优化

分库和分表各抗什么?Uu328资讯网——每日最新资讯28at.com

分表:当一个表中的数据量过大时,会导致查询速度变慢、插入和更新操作效率下降等问题。通过分表,每个小表的数据量就相对较小,性能问题得以缓解。Uu328资讯网——每日最新资讯28at.com

分库:当一个数据库实例无法承受大量数据的存储和并发时,可通过分库来分散系统压力。Uu328资讯网——每日最新资讯28at.com

通常情况下,分库和分表是结合使用的。Uu328资讯网——每日最新资讯28at.com

数据库优化中常见的是sql优化,是否命中索引,提高服务器硬件配置。Uu328资讯网——每日最新资讯28at.com

三 总结

以上为百舸系统处理高并发问题的一些策略,高并发架构是演进而来,避免过度设计,没有一个技术能解决所有的问题,抓住关键矛盾,使用前一定要做好调研和评估,还有哪些?欢迎补充。Uu328资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-84020-0.html对号入座,快看看你的应用系统用了哪些高并发技术?

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

上一篇: 深入了解Python中的拷贝:浅拷贝与深拷贝的区别

下一篇: Formik:让用户体验更加出色的表单解决方案

标签:
  • 热门焦点
  • 中兴AX5400Pro+上手体验:再升级 双2.5G网口+USB 3.0这次全都有

    2021年11月的时候,中兴先后发布了两款路由器产品,中兴AX5400和中兴AX5400 Pro,从产品命名上就不难看出这是隶属于同一系列的,但在外观设计上这两款产品可以说是完全没一点关系
  • Temu起诉SHEIN,跨境电商战事升级

    来源 | 伯虎财经(bohuFN)作者 | 陈平安日前据外媒报道,拼多多旗下跨境电商平台Temu正对竞争对手SHEIN提起新诉讼,诉状称Shein“利用市场支配力量强迫服装厂商与之签订独家
  • 消费结构调整丨巨头低价博弈,拼多多还卷得动吗?

    来源:征探财经作者:陈香羽随着流量红利的退潮,电商的存量博弈越来越明显。曾经主攻中高端与品质的淘宝天猫、京东重拾“低价”口号。而过去与他们错位竞争的拼多多,靠
  • 大厂卷向扁平化

    来源:新熵作者丨南枝 编辑丨月见大厂职级不香了。俗话说,兵无常势,水无常形,互联网企业调整职级体系并不稀奇。7月13日,淘宝天猫集团启动了近年来最大的人力制度改革,目前已形成一
  • 阿里大调整

    来源:产品刘有媒体报道称,近期淘宝天猫集团启动了近年来最大的人力制度改革,涉及员工绩效、层级体系等多个核心事项,目前已形成一个初步的“征求意见版”:1、取消P序列
  • 华为Mate 60系列用上可变灵动岛:正式版体验将会更出色

    这段时间以来,关于华为新旗舰的爆料日渐密集。据此前多方爆料,今年华为将开始恢复一年双旗舰战略,除上半年推出的P60系列外,往年下半年的Mate系列也将
  • 三星获批量产iPhone 15全系屏幕:苹果史上最惊艳直屏

    按照惯例,苹果将继续在今年9月举办一年一度的秋季新品发布会,有传言称发布会将于9月12日举行,届时全新的iPhone 15系列将正式与大家见面,不出意外的话
  • 到手价3099元起!iQOO Neo8 Pro今日首销:安卓性能最强旗舰

    5月23日,iQOO如期举行了新品发布会,全新的iQOO Neo8系列也正式与大家见面,包含iQOO Neo8和iQOO Neo8 Pro两个版本,其中标准版搭载高通骁龙8+,而Pro版更
  • AI艺术欣赏体验会在上海梅赛德斯奔驰中心音乐俱乐部上演

    光影交错的镜像世界,虚实幻化的视觉奇观,虚拟偶像与真人共同主持,这些场景都出现在2019世界人工智能大会的舞台上。8月29日至31日,“AI艺术欣赏体验会”在上海
Top