高并发
文章平均质量分 90
风平浪静如码
这个作者很懒,什么都没留下…
展开
-
Netty面试常驻题:你知道Netty的零拷贝机制吗?
理解零拷贝 零拷贝是Netty的重要特性之一,而究竟什么是零拷贝呢?WIKI中对其有如下定义:“Zero-copy” describes computer operations in which the CPU does not perform the task of copying data from one memory area to another.从WIKI的定义中,我们看到**“零拷贝”是指计算机操作的过程中,CPU不需要为数据在内存之间的拷贝消耗资源。**而它通常是指计算机在网络上发.原创 2021-05-25 16:23:28 · 235 阅读 · 2 评论 -
你真的懂并发吗?谈谈对JUC线程池ThreadPoolExecutor的认识吧
前提很早之前就打算看一次JUC线程池ThreadPoolExecutor的源码实现,由于近段时间比较忙,一直没有时间整理出源码分析的文章。之前在分析扩展线程池实现可回调的Future时候曾经提到并发大师Doug Lea在设计线程池ThreadPoolExecutor的提交任务的顶层接口Executor只有一个无状态的执行方法:public interface Executor { void execute(Runnable command);}而ExecutorService提供了很多.原创 2021-05-18 14:35:43 · 195 阅读 · 0 评论 -
Java常见并发编程方式和手段解密,看这篇就足够了!
今天的文章将给大家分享Java并发编程相关的知识点,虽然类似的文章已有很多,但本文将以更贴近实际使用场景的方式进行阐述。具体将对Java常见的并发编程方式和手段进行总结,以便可以从使用角度更好地感知Java并发编程带来的效果,从而为后续更深入的理解Java并发机制进行铺垫。Java多线程概述在Java中使用多线程是提高程序并发响应能力的重要手段,但同时它也是一把双刃剑;如果使用不当也很容易导致程序出错,并且还很难直观地找到问题。这是因为:1)、线程运行本身是由操作系统调度,具有一定的随机性;2)、Ja.原创 2021-05-10 15:52:29 · 228 阅读 · 0 评论 -
分布式架构高可用与高并发那些在工作中常用到的那些变态应用
反向代理服务上图展示了一个典型的三层架构的高性能 Web 应用。这种成熟的架构多年以来已被广泛部署于包括 Google、Yahoo、Facebook、Twitter、Wikipedia 在内的诸多大型 Web 应用中。位于三层构架中最外层的反向代理服务器负责接受用户的接入请求,在实际应用中,代理服务器通常至少还要完成以下列表中的一部分任务:连接管理:分别维护客户端和应用服务器的连接池,管理并关闭已超时的长连接。攻击检测和安全隔离:由于反向代理服务无需完成任何动态页面生成任务,所有与业务逻辑相关的请.原创 2021-01-25 14:26:29 · 179 阅读 · 0 评论 -
领统Java并发半壁江山的AQS你真的懂了吗?
一、JUC的由来synchronized 关键字是JDK官方人员用C++代码写的,在JDK6以前是重量级锁。Java大牛 Doug Lea对 synchronized 在并发编程条件下的性能表现不满意就自己写了个JUC,以此来提升并发性能,本文要讲的就是JUC并发包下的AbstractQueuedSynchronizer。在JUC中 CountDownLatch、ReentrantLock、ThreadPoolExecutor、ReentrantReadWriteLock 等底层用.原创 2021-01-04 16:03:21 · 259 阅读 · 0 评论 -
一文告诉你大厂亿级并发下高性能服务器是如何实现的!
多进程历史上最早出现也是最简单的一种并行处理多个请求的方法就是利用多进程。比如在Linux世界中,我们可以使用fork、exec等系统调用创建多个进程,我们可以在父进程中接收用户的连接请求,然后创建子进程去处理用户请求,就像这样:这种方法的优点就在于:编程简单,非常容易理解由于各个进程的地址空间是相互隔离的,因此一个进程崩溃后并不会影响其它进程充分利用多核资源多进程并行处理的优点很明显,但是缺点同样明显:各个进程地址空间相互隔离,这一优点也会变成缺点,那就是进程间要想通信就会变得比.原创 2020-12-24 14:37:28 · 252 阅读 · 0 评论 -
18张图让你搞懂高并发中的线程与线程池,看完还不会你来打我!
一切要从CPU说起你可能会有疑问,讲多线程为什么要从CPU说起呢?原因很简单,在这里没有那些时髦的概念,你可以更加清晰的看清问题的本质。CPU并不知道线程、进程之类的概念。CPU只知道两件事:从内存中取出指令执行指令,然后回到1你看,在这里CPU确实是不知道什么进程、线程之类的概念。接下来的问题就是CPU从哪里取出指令呢?答案是来自一个被称为Program Counter(简称PC)的寄存器,也就是我们熟知的程序计数器,在这里大家不要把寄存器想的太神秘,你可以简单的把寄存器理解.原创 2020-12-23 14:52:23 · 173 阅读 · 0 评论