写点什么

并发

2 人感兴趣 · 209 次引用

  • 最新
  • 推荐
https://static001.geekbang.org/infoq/04/049ac7dd371febc5f189fb414fa17fcd.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

前端如何处理「并发」问题?

在项目中我们会遇到一次请求多个接口,当所有请求结束后进行操作,也会遇到多个请求(大量)同时进行请求资源,本文就并发问题通过axios对这两种现象进行优化处理,主要通过 axios中all、spread、请求拦截以及响应拦截进行处理。

https://static001.geekbang.org/infoq/4b/4b044126206f4e024379e1d50cf7c95d.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

神册!出自阿里 P8 的深入理解 Java 虚拟机最新版,让我涨薪 60%

作为一名软件工程师,在日常工作中除了Java这个关键词之外,还有另一个名词经常提及,那就是JVM,在武侠世界中,想要炼制一把睥睨天下的宝剑,是需要下一番功夫的。除了要有上等的铸剑技术,还需要一鼎经百炼的剑炉,而工程师就相当于铸剑的剑师,JVM便是剑炉

【源码分析】【netty】FastThreadLocal 为什么快?

接下来几篇文章,我们来聊一聊netty相关的。这里作者想先从FastThreadLocal开始说,而不是可能大家更熟悉的reactor啊,责任链设计啊,ByteBuf啊,池化啊等等。不过虽然说FastThreadLocal熟知程度不如其他的,但是其实还是很有内容的。比如最核心的为啥快呢?

阿里蚂蚁金服 4 面面经(已拿 Offer)附答案!突如其来的意外之喜

由于作者面试过程中高度紧张,本文中只列出了自己还记得的部分题目。

翻遍 GitHub 帮你总结了一份并发图册 + 高并发笔记,一次性搞懂并发编程

现在的面试,动不动就是“三高”,Java并发编程已然成为名企大厂面试的必考问题,其重要性不⾔⽽喻。

兼顾可扩展、高并发与数据一致性:咸鱼优惠系统设计实践

在闲鱼上,针对闲鱼交易中的粉丝购买和粉丝回购的优惠促销场景,提供了一种定向一口价的优惠能力:

如何解决注册并发问题并提高 QPS

前面在本地的windows通过apache的ab工具测试了600并发下“查询指定手机是否存在再提交数据”的注册功能会出现重复提交的情况,并且在注册完成时还需要对邀请人进行奖励,记录邀请记录,对该新用户自动发布动态信息,发短信或发邮件等其他业务功能。

别再说你不懂 Java 内存模型了!!!

JMM(Java Memory Model)并发模型是Java多线程编程中的重要概念之一。在Java多线程编程中,我们需要了解JMM并发模型,才能够编写高效、可靠的多线程程序。我们将探讨JMM并发模型的基本概念,以及如何在Java多线程编程中使用它。我们将深入探讨JMM内存模型、

https://static001.geekbang.org/infoq/99/993db93952a0333cdffa1f976d5b62f2.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

阅读完 synchronized 和 ReentrantLock 的源码后,竟发现其完全相似

并发编程在互联网技术使用如此广泛,几乎所有的后端技术面试官都要在并发编程的使用和原理方面对小伙伴们进行 360° 的刁难。

https://static001.geekbang.org/infoq/51/517ef308de6697ec414f7ce1249b05d3.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

从 ReentrantLock 角度解析 AQS

基于JDK8,今天重点来聊下JUC并发包下的一个类,AbstractQueuedSynchronizer。首先,浅显的从名字上看,抽象的队列同步器;实际上,这名字也跟它的作用如出一辙。

肝完阿里最新 Java 并发编程全优笔记,我成功晋升公司架构组

现在Java面试,问的是越来越底层。基本上规模大点的互联网公司都会对JVM,OS,算法,线程,IO等底层知识进行深入考察;其中粉丝反馈近期出去面试被问的最多,频次最高的技术栈当属多线程并发编程了。

Java 中让两个线程交替执行的实现方式

用户头像
Janwee
03-14

Question: There're 2 threads, one prints 'A', 'B' and 'C', the other prints '1', '2' and '3', how to make them print "1A2B3C"?

https://static001.geekbang.org/infoq/a4/a4c7fc9cf43df6ad054ad40bc5fcd8d4.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

【开发宝典】Java 并发系列教程

本文将给大家分享Java并发编程相关的知识点,具体将对Java常见的并发编程方式和手段进行总结,以便可以从使用角度更好地感知Java并发编程带来的效果。

https://static001.geekbang.org/infoq/1c/1cf70c6fbf312d5983cadf4ddb032b0a.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

随机高并发查询结果一致性设计实践

物流合约中心是京东物流合同管理的唯一入口。为商家提供合同的创建,盖章等能力,为不同业务条线提供合同的定制,归档,查询等功能。

https://static001.geekbang.org/infoq/e9/e9190ab333976a29acc133310cea6658.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

介绍四大并发集合类并结合单例模式下的队列来说明线程安全和非安全的场景及补充性能调优问题。

用户头像
C++后台开发
2022-12-16

一. 四大并发集合类 背景:我们目前使用的所有集合都是线程不安全的 。 A. ConcurrentBag:就是利用线程槽来分摊Bag中的所有数据,链表的头插法,0代表移除最后一个插入的值. (等价于同步中的List) B. ConcurrentStack:线程安全的Stack是使用Interlocked

https://static001.geekbang.org/infoq/ea/ea59c92a2e578ce64f705a34a456f129.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

真希望你也明白 runtime.Map 和 sync.Map

One of the most useful data structures in computer science is the hash table. Many hash table implementations exist with varying properties, but in general they offer fast lookups, adds, and deletes. Go provides a built-in map type that im

https://static001.geekbang.org/infoq/8a/8a1177b21c79afc6837c0c438ca7eeae.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

看完这篇,还不懂 JAVA 内存模型 (JMM) 算我输

用户头像
JAVA旭阳
2022-12-03

本文讲解了JAVA并发的3大特性,可见性、有序性和原子性。从而引出了JAVA内存模型规范,这主要是为了解决并发情况下带来的可见性和有序性问题,主要就是定义了一些规则,需要我们程序员懂得这些规则,然后根据实际场景去使用,就是使用volatile、synchronize

https://static001.geekbang.org/infoq/a9/a99c70fda1518e4e36e7f5615a087372.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

【JUC】循环屏障 CyclicBarrier 详解

用户头像
JAVA旭阳
2022-12-01

jdk中提供了许多的并发工具类,大家可能比较熟悉的有CountDownLatch,主要用来阻塞一个线程运行,直到其他线程运行完毕。而jdk还有一个功能类似并发工具类CyclicBarrier,你知道它的作用吗?和CountDownLatch有什么区别呢?

集群并发下的数据覆盖问题

用户头像
苏格拉格拉
2022-11-04

集群并发场景下,如何解决数据覆盖问题,保证数据库与缓存的一致性。

告别丑陋判空,一个 Optional 类搞定

用户头像
JAVA旭阳
2022-10-18

最近项目组内做code review,充斥着大量的、原始的、丑陋的判空语句,大致类似下面的代码:

读写锁还不会用 StampedLock 就 Out 了

用户头像
JAVA旭阳
2022-10-18

想到读写锁,大家第一时间想到的可能是ReentrantReadWriteLock。实际上,在jdk8以后,java提供了一个性能更优越的读写锁并发类StampedLock,该类的设计初衷是作为一个内部工具类,用于辅助开发其它线程安全组件,用得好,该类可以提升系统性能,用不好,容易

图解 ReentrantReadWriteLock 读写锁的实现原理

用户头像
JAVA旭阳
2022-10-17

ReentrantReadWriteLock读写锁是使用AQS的集大成者,用了独占模式和共享模式。本文和大家一起理解下ReentrantReadWriteLock读写锁的实现原理。在这之前建议大家阅读下下面3篇关联文章:

通俗易懂读写锁 ReentrantReadWriteLock 的使用

用户头像
JAVA旭阳
2022-10-17

ReentrantReadWriteLock不知道大家熟悉吗?其实在实际的项目中用的比较少,反正我所在的项目没有用到过。

深入浅出理解 Java 并发 AQS 的共享锁模式

用户头像
JAVA旭阳
2022-10-17

这篇文章深入浅出理解Java并发AQS的独占锁模式讲解了AQS的独占锁实现原理,那么本篇文章在阐述AQS另外一个重要模式,共享锁模式,那什么是共享锁呢?

https://static001.geekbang.org/infoq/44/4435b4e5d586c90cbabfbf2f64705011.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

什么时候用 Goroutine?什么时候用 Channel?

用户头像
王中阳Go
2022-10-16

通过全局变量加锁同步来实现通讯,并不利于多个协程对全局变量的读写操作。 加锁虽然可以解决goroutine对全局变量的抢占资源问题,但是影响性能,违背了原则。

https://static001.geekbang.org/infoq/b5/b5369fef44de57d8eca75a3afa9882db.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

图解 ReentrantLock 的条件变量 Condition 机制

用户头像
JAVA旭阳
2022-10-15

想必大家都使用过wait()和notify()这两个方法把,这两个方法主要用于多线程间的协同处理,即控制线程之间的等待、通知、切换及唤醒。而RenentrantLock也支持这样条件变量的能力,而且相对于synchronized 更加强大,能够支持多个条件变量。

https://static001.geekbang.org/infoq/8d/8d22dee544f95231ab5b79b2cdfe0aed.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

ReentrantLock 可重入、可打断、锁超时实现原理

用户头像
JAVA旭阳
2022-10-15

前面讲解了ReentrantLock加锁和解锁的原理实现,但是没有阐述它的可重入、可打断以及超时获取锁失败的原理,本文就重点讲解这三种情况。建议大家先看下这篇文章了解下ReentrantLock加锁的基本原理,图解ReentrantLock公平锁和非公平锁实现。

并发_并发技术文章_InfoQ写作社区