多线程与分布式
周课介绍:
1:线程池的基本使用、特点、注意点
2:ThreadLocal的基本使用、原理、注意事项
3:分布式基础、核心概念
4:Docker的下载、安装和基本使用命令
5:独立制作Docker容器
6:Nginx的安装、基本使用和常用命令
7:使用Nginx搭建文件服务
8:消息队列RabbitMQ的核心概念queue、message和exchange
9:RabbitMQ的四种交换机模式
10:SpringBoot整合RabbitMQ实例
初始化线程池——线程池,治理线程的法宝
1:线程池的自我介绍
2:新建和停止线程池
3:常见线程池的特点和用法
4:任务大多线程,如何拒绝
5:钩子方法,给线程池加点料
6:实现原理,源码分析
7:使用线程池的注意点
线程池的重要性:
什么是池:软件中的“池”,可以理解为计划经济,避免创建线程带来的大开销,可复用线程,可控制资源总量。
如果不使用线程池,每一个任务新开一个线程:
一个线程
for循环创建线程
当数量上升到1000
这样开销大,我们希望有固定数量的线程,来执行者1000个线程,这样就避免了反复创建并销毁线程所带来的开销问题。
问题一:反复创建线程开销大
问题二:过多的线程会占用太多内存
解决以上两种问题的思路:
一、用少量的线程——避免内存的过多使用
二、让这部分线程都保持工作,且可以反复执行任务——避免生命周期的损耗
线程池的好处:
加快响应速度
合理利用CPU和内存
统一管理资源
线程池使用的场景:
服务器接收大量请求时,使用线程池技术是非常合适的,可以大大减少线程的创建和销毁次数,提高服务器的工作效率
实际上,在开发过程中,如果需要创建5个以上的线程,那么就可以使用线程池来管理。



