Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!
当前位置: 主页 > Java文档 > Java基础相关 >

2020美团技术年货-后台篇 PDF 下载


分享到:
时间:2021-02-06 09:24来源:http://www.java1234.com 作者:转载  侵权举报
2020美团技术年货-后台篇 PDF 下载
失效链接处理
2020美团技术年货-后台篇 PDF 下载


本站整理下载:
提取码:fpbq 
 
 
相关截图:
 
主要内容:


一、写在前面
1.1 线程池是什么
线程池(Thread Pool)是一种基于池化思想管理线程的工具,经常出现在多线程服
务器中,如 MySQL。
线程过多会带来额外的开销,其中包括创建销毁线程的开销、调度线程的开销等等,
同时也降低了计算机的整体性能。线程池维护多个线程,等待监督管理者分配可并发
执行的任务。这种做法,一方面避免了处理任务时创建销毁线程开销的代价,另一方
面避免了线程数量膨胀导致的过分调度问题,保证了对内核的充分利用。
而本文描述线程池是 JDK 中提供的 ThreadPoolExecutor 类。
2 > 美团 2020 技术年货
当然,使用线程池可以带来一系列好处:
● 降低资源消耗:通过池化技术重复利用已创建的线程,降低线程创建和销毁造
成的损耗。
● 提高响应速度:任务到达时,无需等待线程创建即可立即执行。
● 提高线程的可管理性:线程是稀缺资源,如果无限制创建,不仅会消耗系统资
源,还会因为线程的不合理分布导致资源调度失衡,降低系统的稳定性。使用
线程池可以进行统一的分配、调优和监控。
● 提供更多更强大的功能:线程池具备可拓展性,允许开发人员向其中增加更多
的功能。比如延时定时线程池 ScheduledThreadPoolExecutor,就允许任
务延期执行或定期执行。
1.2 线程池解决的问题是什么
线程池解决的核心问题就是资源管理问题。在并发环境下,系统不能够确定在任意
时刻中,有多少任务需要执行,有多少资源需要投入。这种不确定性将带来以下若干
问题:
1. 频繁申请 / 销毁资源和调度资源,将带来额外的消耗,可能会非常巨大。
2. 对资源无限申请缺少抑制手段,易引发系统资源耗尽的风险。
3. 系统无法合理管理内部的资源分布,会降低系统的稳定性。
为解决资源分配这个问题,线程池采用了“池化”(Pooling)思想。池化,顾名思义,
是为了最大化收益并最小化风险,而将资源统一在一起管理的一种思想。
Pooling is the grouping together of resources (assets, equipment, personnel,
effort, etc.) for the purposes of maximizing advantage or minimizing risk to
the users. The term is used in finance, computing and equipment management.——wikipedia
“池化”思想不仅仅能应用在计算机领域,在金融、设备、人员管理、工作管理等领
域也有相关的应用

 

------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐