java高并发
文章平均质量分 76
Netty+Redis+Zookeeper高并发
田埂、
不惊于荣辱,不借于鼓吹,正余之心,穷于之力
展开
-
常见的限流算法分析以及手写实现(计数器、漏斗、令牌桶)
吊打面试官系列:常见的限流算法分析以及手写实现(计数器、漏斗、令牌桶)原创 2022-03-17 22:00:34 · 1576 阅读 · 39 评论 -
epoll底层原理
epoll作为linux下高性能网络服务器的必备技术至关重要,java NIO、nginx、redis、skynet和大部分游戏服务器都使用了这一多路复用技术。epoll是select和poll的增强版本。原创 2021-05-03 19:16:20 · 3683 阅读 · 1 评论 -
java线程池介绍
java高并发应用频繁创建和销毁线程的操作将是非常低效的,而且不被编程规范所允许的。如何降低java线程的创建成本,就必须用到线程池。原创 2021-05-02 12:28:10 · 165 阅读 · 0 评论 -
java中线程的使用
java中线程的使用java中创建线程的几种方法:创建线程(Thread实例)的方式一:继承Thread类创建线程类,让后创建线程实例创建线程(Thread实例)的方式二:实现Runnable接口创建线程目标类,让后创建线程实例Future接口和FutureTask异步任务类使用Callable和FutureTask创建异步任务,让后创建线程实例通过线程池创建线程原创 2021-04-30 12:21:28 · 139 阅读 · 1 评论 -
start方法和run方法的区别
start方法和run方法的区别start()用start()启动线程,实现了真正意义上的启动线程,此时会出现异步执行的效果start()启动了Thread实例的生命周期run()直接调用Thread实例的run(),相当于当前线程执行一次其业务逻辑,是同步执行的就不是异步执行了,不会达到使用线程的意义run()没有启动线程的生命周期启动生命周期的意思是: 线程的执行状态发生改变(即state的值变了)...原创 2021-04-30 12:13:12 · 110 阅读 · 0 评论 -
进程和线程的区别
详细分析进程和线程什么是进程什么是线程进程与线程的区别原创 2021-04-29 17:34:58 · 99 阅读 · 0 评论 -
Guava 的异步回调介绍
Guava 的异步回调介绍Guava 对 Java 的异步回调机制,做了以下的增强:(1)引入了一个新的接口 ListenableFuture,继承了 Java 的 Future 接口,使得 Java 的 Future异步任务,在 Guava 中能被监控和获得非阻塞异步执行的结果。(2)引入了一个新的接口 FutureCallback,这是一个独立的新接口。该接口的目的,是在异步任务执行完成后,根据异步结果,完成不同的回调处理,并且可以处理异步结果。原创 2021-04-23 12:36:21 · 1061 阅读 · 1 评论 -
join 异步阻塞介绍
join 异步阻塞介绍join 操作的原理是:阻塞当前的线程,直到准备合并的目标线程的执行完成。线程的 join 合并流程:在 Java 中,线程(Thread)的合并流程是:假设线程 A 调用了线程 B 的 B.join 方法,合并 B线程。那么,线程 A 进入阻塞状态,直到 B 线程执行完成。使用 join 实现异步泡茶喝的实践案例流程图:代码实现:public class JoinDemo { public static final int SLEEP_GAP = 5原创 2021-04-23 11:14:32 · 505 阅读 · 0 评论 -
FutureTask 异步回调介绍
FutureTask 异步回调介绍FutureTask 方式包含了一系列的 Java 相关的类,在 java.util.concurrent 包中。其中最为重要的是 FutureTask 类和 Callable 接口。原创 2021-04-23 11:12:23 · 544 阅读 · 0 评论 -
Java NIO 通信基础介绍
高性能的 Java 通信,绝对离不开 Java NIO 技术,现在主流的技术框架或中间件服务器,都使 用了 Java NIO 技术,譬如:Tomcat、Jetty、Netty。原创 2021-04-22 00:31:13 · 433 阅读 · 4 评论