并发

探索抽象同步队列 AQS

AbstractQueuedSynchronizer抽象同步队列简称AQS,它是实现同步器的基础组件,并发包中锁的底层就是使用AQS实现的。大多数开发者可能永远不会直接使用AQS,但是知道其原理对于架构设计还是很有帮助的。 ... »

emanjusaka

呕血回顾一次提高接口并发的经历,很实用

最近在开发一个打卡接口,其实只需要做些判断,保存一下打卡结果即可,预计同时段1000多人在线打卡,但是第一次写完之后,压测效果非常糟糕,可以看到只有十几的并发,喝下的水都要喷出来了,那么简单的接口都能耗时那么久的吗,我预估100ms以内准可以的,那还有上百的并发才对。于是开始了我的优化之路。 看看主 ... »

ljy-1471914707

从 5s 到 0.5s!CompletableFuture 异步任务优化技巧,确实优雅!

一个接口可能需要调用 N 个其他服务的接口,这在项目开发中还是挺常见的。举个例子:用户请求获取订单信息,可能需要调用用户信息、商品详情、物流信息、商品推荐等接口,最后再汇总数据统一返回。 如果是串行(按顺序依次执行每个任务)执行的话,接口的响应速度会非常慢。考虑到这些接口之间有大部分都是 无前后顺序 ... »

javaguide

Go协程揭秘:轻量、并发与性能的完美结合

Go协程为并发编程提供了强大的工具,结合轻量级、高效的特点,为开发者带来了独特的编程体验。本文深入探讨了Go协程的基本原理、同步机制、高级用法及其性能与最佳实践,旨在为读者提供全面、深入的理解和应用指导。 关注公众号【TechLeadCloud】,分享互联网架构、云服务技术的全维度知识。作者拥有10 ... »

xfuture

解决Promise的多并发问题

提起控制并发,大家应该不陌生,我们可以先来看看多并发,再去聊聊为什么要去控制它 多并发一般是指多个异步操作同时进行,而运行的环境中资源是有限的,短时间内过多的并发,会对所运行的环境造成很大的压力,比如前端的浏览器,后端的服务器,常见的多并发操作有: 前端的多个接口同时请求 前端多条数据异步处理 No ... »

Java并发Map的面试指南:线程安全数据结构的奥秘

简介 在计算机软件开发的世界里,多线程编程是一个重要且令人兴奋的领域。然而,与其引人入胜的潜力相伴而来的是复杂性和挑战,其中之一就是处理共享数据。当多个线程同时访问和修改共享数据时,很容易出现各种问题,如竞态条件和数据不一致性。 本文将探讨如何在Java中有效地应对这些挑战,介绍一种强大的工具——并 ... »

flydean

java中有哪些并发的List?只知道一种的就太逊了

java中有很多list,但是原生支持并发的并不多,我们在多线程的环境中如果想同时操作同一个list的时候,就涉及到了一个并发的过程,这时候我们就需要选择自带有并发属性的list,那么java中的并发list到底有哪些呢?今天要给大家介绍的是ArrayList、CopyOnWriteArrayLis ... »

flydean

高并发系统设计之限流

当我们谈论Web应用或者服务,一个重要的话题就不能避免:限流。这是一种保护系统和维持服务稳定性的重要手段。 ... »

booksea

杰哥教你面试之一百问系列:java中高级多线程concurrent的使用

[toc] 提到多线程,当然要熟悉java提供的各种多线程相关的并发包了,而java.util.concurrent就是最最经常会使用到的,那么关于concurrent的面试题目有哪些呢?一起来看看吧。 ### 问题1:什么是`ConcurrentHashMap`?它与`HashMap`的区别是什么 ... »

flydean

升讯威在线客服系统的并发高性能数据处理技术:高性能TCP服务器技术

客户组织多名客服上线后,所有员工**同一时间**打开访客页面**疯狂不停**的给在线客服发消息,系统稳定**无异常无掉线**,客服回复消息正常。消息**实时到达**无任何延迟。我会通过一系列的文章详细分析升讯威在线客服系统的并发高性能技术是如何实现的,使用了哪些方案以及具体的做法。 ... »

sheng_chao

Java并发(十五)----synchronized解决共享的问题

为了避免临界区的竞态条件发生,有多种手段可以达到目的。 阻塞式的解决方案:synchronized,Lock 非阻塞式的解决方案:原子变量 此次介绍使用阻塞式的解决方案:synchronized,来解决上述问题,即俗称的【对象锁】,它采用互斥的方式让同一时刻至多只有一个线程能持有【对象锁】,其它线程 ... »

升讯威在线客服系统的并发高性能数据处理技术:具体化视图

客户组织多名客服上线后,所有员工**同一时间**打开访客页面**疯狂不停**的给在线客服发消息,系统稳定**无异常无掉线**,客服回复消息正常。消息**实时到达**无任何延迟。我会通过一系列的文章详细分析升讯威在线客服系统的并发高性能技术是如何实现的,使用了哪些方案以及具体的做法。 ... »

sheng_chao

c# .NET 高级编程 高并发必备技巧(二) - 分布式锁

上一篇文章简单的介绍了单机的情况下如何进行加锁,防止高并发带来的问题。 然而现实中,一般会高并发的应用,很少会单机部署。当用户量达到一定的程度,分布式、集群部署是必然的选择。在分布式部署的情况下,之前的单机锁还会有效吗?代码还是之前的代码: > private static object lck = ... »

pzscit .NET

解放生产力orm并发更新下应该这么处理求求你别再用UpdateById了

# 解放生产力orm并发更新下应该这么处理求求你别再用UpdateById了 ## 背景 很多时候为了方便我们都采用实体对象进行前后端的数据交互,然后为了便捷开发我们都会采用DTO对象进行转换为数据库对象,然后调用`UpdateById`将变更后的数据存入到数据库内,这样的一个做法有什么问题呢,如果 ... »

xuejiaming

c# .NET 高级编程 高并发必备技巧 - 锁

锁 最为常见的应用就是 高并发的情况下,库存的控制。本次只做简单的单机锁介绍。 直接看代码: 每请求一次库存-1. 假如库存1000,在1000个人请求之后,库存将变为0。 > public int Reduce0() > { > int r = 0; > string key = "stock"; ... »

pzscit .NET

实战:工作中对并发问题的处理

本文是一次工作中对并发问题的处理案例,问题发生在快递分拣的流程中,我尽可能将业务背景简化,让大家只关注并发问题本身。 ... »

jingdongkeji

CI+JUnit5并发单测机制创新实践

针对现如今高并发场景的业务系统,“并发问题” 终归是必不可少的一类(占比接近10%),每次出现问题和事故后,需要耗费大量人力成本排查分析并修复。那如果能在事前尽可能避免岂不是很香? ... »

jingdongkeji

并发工具类Phaser

# 前言 在面试这一篇我们介绍过[CountDownLatch和CyclicBarrier](https://github.com/jmilktea/jtea/blob/master/%E9%9D%A2%E8%AF%95/CountDownLatch%E5%92%8CCyclicBarrier.md ... »

jtea