摘要: 学习本章需要先知道IO多路复用,不清楚的请移步:IO多路复用 网络通信中,阻塞IO两大阻塞的地方:socket链接阻塞,等待读取文件阻塞。 本地文件io就只有一个等待文件阻塞 一.Reactor模型(Netty线程模型) 说Netty之前先说一下高性能网络模式Reactor。由于NIO是面向过程编写 阅读全文
posted @ 2022-02-10 22:44 小猴子_X 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 先说明一个问题:在Java API中提供了两套NIO,一套是针对标准输入输出NIO,另一套就是网络编程NIO。网络编程其实就是多了一个连接的过程,常用在Netty一些框架。本文主要讲述标准输入输出NIO 一.BIO,NIO,AIO的区别 先说一些IO的模式 我们发现,IO不是我们想象中那么简单。要想 阅读全文
posted @ 2022-02-10 00:58 小猴子_X 阅读(351) 评论(0) 推荐(1) 编辑
摘要: 介绍锁之前,先介绍一下JUC(java util concurrent)。它是java提供的一个工具包,里面有我们常用的各种锁,它分为3个包 java.util.concurrent //如:volatile,CountDownLatch,CyclicBarrier,Semaphore java.u 阅读全文
posted @ 2022-02-09 13:45 小猴子_X 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 一.概述 消息队列模式: 点对点: 1:1。就是一个队列只能由一个消费者进行消费,这个消费者消费完毕就把消息进行删除,不会再给别的消费者。只能消费者拉消息。 发布/订阅: 1:多 消息队列主动推送消息。 缺点:推送速率难以适应消费速率,不知道消费者的处理效率,造成浪费。 消费方主动从消息队列拉取消息 阅读全文
posted @ 2022-02-08 14:36 小猴子_X 阅读(761) 评论(1) 推荐(4) 编辑
摘要: 一.为什么使用线程池? 降低资源的消耗 线程的复用 控制最大的并发数 管理线程 二.执行流程 在创建了线程池后,开始等待请求 当调用execute()方法添加一个请求任务时,线程池会做出如下判断: 如果正在运行的线程数量小于corePoolSize,那么马上创建线程运行这个任务: 如果正在运行的线程 阅读全文
posted @ 2022-02-08 11:30 小猴子_X 阅读(75) 评论(0) 推荐(1) 编辑
摘要: 一.JVM概述 JVM是java是二进制字节码的运行环境 特点: 一次编译,到处运行(跨平台) 自动内存管理 自动垃圾回收功能 常见的JVM Sun Classic VM:世界上第一款商用的java虚拟机,但是这款虚拟机只提供解释器,不提供编译器。 HotSpot VM :由sun公司开发,是jdk 阅读全文
posted @ 2022-02-07 00:17 小猴子_X 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 一.MQ的相关概念 什么是MQ? Message Queue,消息队列。简单的来说,就是一个先进先出的队列,用来发送消息(信息)。 为什么要用 MQ? 流量消峰:在电商系统中,比如双11下单太多,来不及处理,生产者就把下单的信息先放在MQ中,后来慢慢交给消费者进行消费。 异步任务:有些服务的调用,比 阅读全文
posted @ 2022-02-06 18:23 小猴子_X 阅读(189) 评论(2) 推荐(1) 编辑
摘要: 一.一个Java程序最少开几个线程? 3个:主线程;gc线程;异常处理线程 二.线程的生命周期以及状态? 阻塞的分类: 等待阻塞:执行wait(),需要notify()/notifyAll()唤醒 同步阻塞:等待拿到锁 其他阻塞:执行sleep(),join(),或者发出I/O请求。都会进入阻塞 三 阅读全文
posted @ 2022-02-05 16:27 小猴子_X 阅读(66) 评论(0) 推荐(0) 编辑
摘要: 一.Redis 支持的数据类型有哪些? 基本数据类型 String:存放的是k-v键值对。如:set k v; 使用场景:常规计数,缓存等 List:有序,可重复。如:lpush mylist v1 v2 v3; 使用场景:Redis的list是每个子元素都是String类型的双向链表, 可以通过p 阅读全文
posted @ 2022-02-05 12:05 小猴子_X 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 一.体系 Collection:单列 list:有序可重复,可以放多个Null Arraylist ;Linkedlist ;Vector Set:无序不可重复,只能放一个Null HashSet ;LinkedHashSet ;TreeSet Queue: Deque:双端队列 ;Blocking 阅读全文
posted @ 2022-02-04 23:46 小猴子_X 阅读(111) 评论(0) 推荐(0) 编辑