写点什么

冰河整理 深入理解高并发编程 | 内容精选合集

作者:冰河
  • 2021 年 12 月 13 日
  • 本文字数:1729 字

    阅读完需:约 6 分钟

冰河整理 深入理解高并发编程 | 内容精选合集

并发编程一直是程序员们比较头疼的,如何编写正确的并发程序相比其他程序来说,是一件比较困难的事情,并发编程中出现的 Bug 往往也是特别诡异的,之所以说并发编程出现的 Bug 比较诡异,是因为在并发编程中,很多时候出现的 Bug 不一定能完美的复现出来,也就是说,并发编程的 Bug 是很难重现,很难追踪的。为此,冰河精心挑选了一些自己在并发编程领域的技术沉淀和踩坑心得,希望能够为大家在并发编程领域带来实质性的帮助。

1.高并发秒杀系统架构解密,不是所有的秒杀都是秒杀!

作者:冰河


在电商领域,存在着典型的秒杀业务场景,那何谓秒杀场景呢。简单的来说就是一件商品的购买人数远远大于这件商品的库存,而且这件商品在很短的时间内就会被抢购一空。 比如每年的 618、双 11 大促,小米新品促销等业务场景,就是典型的秒杀业务场景。本文详细的解密了高并发秒杀系统的各项架构细节,带你彻底理解高并发秒杀系统架构。

2.Redis 如何助力高并发秒杀系统,看完这篇我彻底懂了!!

作者:冰河


之前,我们在《【高并发】高并发秒杀系统架构解密,不是所有的秒杀都是秒杀!》一文中,详细讲解了高并发秒杀系统的架构设计,其中,我们介绍了可以使用 Redis 存储秒杀商品的库存数量。很多小伙伴看完后,觉得一头雾水,看完是看完了,那如何实现呢?这篇文章,就让我们一起来看看 Redis 是如何助力高并发秒杀系统的!

3.什么是缓存穿透?击穿?雪崩?如何解决?

作者:冰河


在前面的《【高并发】Redis如何助力高并发秒杀系统?看完这篇我彻底懂了!!》一文中,我们以高并发秒杀系统中扣减库存的场景为例,说明了 Redis 是如何助力秒杀系统的。那么,说到 Redis,往往更多的场景是被用作系统的缓存,说到缓存,尤其是分布式缓存系统,在实际高并发场景下,稍有不慎,就会造成缓存穿透、缓存击穿和缓存雪崩的问题。那什么是缓存穿透?什么是缓存击穿,又什么是缓存雪崩呢?它们是如何造成的?又该如何解决呢?这篇文章,我们就一起来探讨这些问题。

4.高并发分布式锁架构解密,不是所有的锁都是分布式锁!!

作者:冰河


本文深度解析了使用 Redis 实现分布式的过程。首先,详细阐述了锁用来解决的问题,并以电商场景中”库存超卖“的典型案例说明了使用分布式锁的必要性。接下来,详细说明了 JVM 中的锁。随后,以大量图解的形式详细说明了使用 Redis 实现分布式锁的过程。分析了在实现分布式锁的过程中,如何实现分布式锁的可重入性、阻塞与非阻塞、锁失效等问题。从而总结出实现分布式锁的基本要求和通用的分布式锁方案,并介绍了分布式系统中典型的 CAP 理论,红锁的实现。最后,结合冰河实际的工作场景,总结出高并发的“黑科技”与致胜奇招。

5.学好并发编程,关键是要理解这三个核心问题

作者:冰河


不少小伙伴都认为并发编程很难,学习了很多的知识,但是在实际工作中却无从下手。对于一个线上产生的并发问题,又不知产生这个问题的原因究竟是什么。对于并发编程,感觉上似乎是掌握了,但是真正用起来却不是那么回事!


其实,造成这种现象的本质原因就是没有透彻的理解并发编程的精髓,而学好并发编程的关键是需要弄懂三个核心问题:分工、同步和互斥

6.为什么局部变量是线程安全的?

作者:冰河


多个线程同时访问共享变量时,会导致并发问题。那么,如果将变量放在方法内部,是不是还会存在并发问题呢?如果不存在并发问题,那么为什么不会存在并发问题呢?本文带你从本质上一探究竟。

7.我们该如何正确的中断一个线程的执行??

作者:冰河


本文来源于冰河刚接触并发编程不久时踩过的坑,当我们在调用 Java 对象的 wait()方法或者线程的 sleep()方法时,需要捕获并处理 InterruptedException 异常。如果我们对 InterruptedException 异常处理不当,就会发生意想不到的后果。这篇文章深度分析了在多线程编程中,明明中断了线程的执行,却为何不起作用。

8.ReadWriteLock 怎么和缓存扯上关系了?!

作者:冰河


在实际工作中,有一种非常普遍的并发场景:那就是读多写少的场景。在这种场景下,为了优化程序的性能,我们经常使用缓存来提高应用的访问性能。因为缓存非常适合使用在读多写少的场景中。而在并发场景中,Java SDK 中提供了 ReadWriteLock 来满足读多写少的场景。本文我们就来说说使用 ReadWriteLock 如何实现一个通用的缓存中心。

发布于: 3 小时前阅读数: 11
用户头像

冰河

关注

公众号:冰河技术 2020.05.29 加入

互联网高级技术专家,《深入理解分布式事务:原理与实战》,《海量数据处理与大数据技术实战》和《MySQL技术大全:开发、优化与运维实战》作者,mykit-data与mykit-transaction-message框架作者。【冰河技术】作者。

评论

发布
暂无评论
冰河整理 深入理解高并发编程 | 内容精选合集