[转帖]高并发下丢失更新的解决方案

京东云 ​ 已认证帐号 已关注 1 背景 关键词:并发、丢失更新预收款账户表上有个累计抵扣金额的字段,该字段的含义是统计商家预收款账户上累计用于抵扣结算成功的金额数。更新时机是,账单结算完成时,更新累计抵扣金额=累计抵扣金额+账单金额。 2 问题及现象 发现当账单结算完成时,偶尔会发生累计抵扣金额字

[转帖]高并发场景下JVM调优实践之路

https://www.jianshu.com/p/f5f5f99e2417 一、背景 2021年2月,收到反馈,视频APP某核心接口高峰期响应慢,影响用户体验。 通过监控发现,接口响应慢主要是P99耗时高引起的,怀疑与该服务的GC有关,该服务典型的一个实例GC表现如下图: image image

[转帖]高并发架构的TCP知识整理

https://zhuanlan.zhihu.com/p/344083588 做为一个有追求的程序员,不能只满足增删改查,我们要对系统全方面无死角掌控。掌握了这些基本的网络知识后,相信一方面日常排错中会事半功倍,另一方面日常架构中不得不考虑的高并发问题,理解了这些底层协议也是会如虎添翼。 本文不会单

[转帖]并发delete导致oracle死锁问题的解决

项目中有一个批处理任务,用来删除数据库中过期的数据(包括说话人的语音、模型、记录等),当程序被分布式部署后,就会有多个批处理线程同时进行删除,不过不同的线程,会根据元信息表得到不同的说话人信息,从而删除不同的数据,并不存在竞争的问题,但是,当项目使用oracle数据库在线上运行时,却频繁出现了ORA

[转帖]啃碎并发(11):内存模型之重排序

https://juejin.cn/post/6844903702327721992 0 前言 在很多情况下,访问一个程序变量(对象实例字段,类静态字段和数组元素)可能会使用不同的顺序执行,而不是程序语义所指定的顺序执行。具体几种情况,如下: 编译器 能够自由的以优化的名义去改变指令顺序; 在特定的

[转帖]并发控制- sched_yield 函数

函数说明 函数原型 #include int sched_yield(void); 12 sched_yield的作用是让出处理器,调用时会导致当前线程放弃CPU,进程管理系统会把该线程放到其对应优先级的CPU静态进程队列的尾端,然后一个新的线程会占用CPU。详细说明可以查看ma

[转帖]高并发系统中的尾延迟Tail Latency

开发和运维高并发系统的工程师可能都有过类似经验,明明系统已经调优完毕,该异步的异步,该减少互斥的地方引入无锁,该减少IO的地方更换引擎或者硬件,该调节内核的调节相应参数,然而,如果在系统中引入实时监控,总会有少量响应的延迟高于均值,我们把这些响应称为尾延迟(Tail Latency)。对于大规模分布

高并发环境下3种方式优化Tomcat性能

摘要:Tomcat作为最常用的Java Web服务器,随着并发量越来越高,Tomcat的性能会急剧下降,那有没有什么方法来优化Tomcat在高并发环境下的性能呢? 本文分享自华为云社区《【高并发】高并发环境下优化Tomcat性能》,作者: 冰 河 。 写在前面 Tomcat作为最常用的Java We

高并发下丢失更新的解决方案

作者:谢益培 1 背景 关键词:并发、丢失更新 预收款账户表上有个累计抵扣金额的字段,该字段的含义是统计商家预收款账户上累计用于抵扣结算成功的金额数。更新时机是,账单结算完成时,更新累计抵扣金额=累计抵扣金额+账单金额。 2 问题及现象 发现当账单结算完成时,偶尔会发生累计抵扣金额字段值更新不准确的

高并发场景下常见的限流算法及方案介绍

现代互联网很多业务场景,比如秒杀、下单、查询商品详情,最大特点就是高并发,而往往我们的系统不能承受这么大的流量,这时候限流熔断就发挥作用了,限制请求数,快速失败,保证系统满负载又不超限。本文为大家介绍几种常见的限流算法及方案

并发编程-CompletableFuture解析

CompletableFuture对象是JDK1.8版本新引入的类,这个类实现了两个接口,一个是Future接口,一个是CompletionStage接口。

高并发环境下构建缓存服务,你需要注意这6点

摘要:高并发环境下构建缓存服务需要注意哪些问题? 本文分享自华为云社区《【高并发】高并发环境下构建缓存服务需要注意哪些问题?》,作者:冰 河。 缓存特征 (1)命中率:命中数/(命中数+没有命中数) (2)最大元素(空间):代表缓存中可以存放的最大元素的数量,一旦缓存中元素的数量超过这个值,或者缓存

高并发场景下,如何优化服务器的性能

摘要:tcp_nodelay参数主要是对TCP套接字来说的,那对于服务器硬件,如果要使其能够支撑上百万甚至上千万的并发,我们该如何对其进行优化呢? 本文分享自华为云社区《【高并发】高并发场景下如何优化服务器的性能?》,作者: 冰 河 。 写在前面 最近,有小伙伴在群里提问:Linux系统怎么设置tc

5个高并发导致数仓资源类报错分析

摘要:集群运行过程中,有时候会执行并发量比较高的业务场景,一些数据库没有为这种高并发作业配置合适的参数,会导致作业大量报错,这篇文章让你玩转并发作业。 本文分享自华为云社区《【玩转PB级数仓GaussDB(DWS)】在线运维 - 高并发导致资源类报错分析解决》,作者:323老四。 集群运行过程中,有

高并发场景下,6种解决SimpleDateFormat类的线程安全问题方法

摘要:解决SimpleDateFormat类在高并发场景下的线程安全问题可以有多种方式,这里,就列举几个常用的方式供参考。 本文分享自华为云社区《【高并发】更正SimpleDateFormat类线程不安全问题分析的错误》,作者: 冰 河 。 解决SimpleDateFormat类在高并发场景下的线程

5个高并发场景优化的衡量指标

今天,我们就来说说在高并发场景下做性能优化有哪些衡量标准,以及做优化时需要注意哪些问题。

并发编程-FutureTask解析

通过本文可以了解FutureTask任务执行的方式以及Future.get已阻塞的方式获取线程执行的结果原理,并且从代码中可以了解FutureTask的任务执行状态以及状态的变化过程。

关于并发编程与线程安全的思考与实践

并发编程的意义是充分的利用处理器的每一个核,以达到最高的处理性能,可以让程序运行的更快。而处理器也为了提高计算速率,作出了一系列优化

[转帖]java并发-一些系统分析工具

https://segmentfault.com/a/1190000041541631 内存分析 java内存分析一般采用Java jmap dump下系统内存文件,使用 jmat 进行分析。 线程分析 线程栈一般通过 jstack 得到。 cpu分析 火焰图arthas 火焰图做为cpu调试的神器

[转帖]Redis的高并发及高可用,到底该如何保证?

https://zhuanlan.zhihu.com/p/404481762 一、redis如何通过读写分享来承载读请求QPS超过10万+ 1、redis高并发跟整个系统的高并发之间的关系 redis,你要搞高并发的话,不可避免,要把底层的缓存搞得很好 mysql,高并发,做到了,那么也是通过一系列