当前位置: 首页 > news >正文

太原做网站联系方式郴州网站定制

太原做网站联系方式,郴州网站定制,模板网站开发推荐,南昌seo关键词排名线程池的参数应该怎样设置呢?相信对于很多的人来说这也是一个比较难的问题,下面就让我们一起来解决一下,究竟应该如何设置线程池的参数才是最合理的吧!首先在设置参数的时候,有以下的几点是我们需要考虑到的!1、下游系统抗并发的能力多线程给…

线程池的参数应该怎样设置呢?相信对于很多的人来说这也是一个比较难的问题,下面就让我们一起来解决一下,究竟应该如何设置线程池的参数才是最合理的吧!

首先在设置参数的时候,有以下的几点是我们需要考虑到的!

1、下游系统抗并发的能力

多线程给下游系统造成的并发等于你设置的线程数

例:

假如,是多线程访问数据库,那么就得考虑数据库的连接池大小设置,数据库并发太多影响其qps,会将数据库打挂等问题。

假如,是访问下游系统的接口,那么就得考虑下游系统是否可以抗得住这么多的并发量,不可以将下游系统打挂了。

2、CPU使用率

在线程数设置的比较大的时候,那么就会出现以下的几个问题:

(1)线程的初始化,切换,销毁等操作会消耗比较多的cpu资源,从而使得cpu利用率一直维持在比较高的水平。

(2)线程数比较大的时候,任务会短时间迅速执行,任务的集中执行会给cpu造成比较大的压力。

(3)任务的集中支持,会使得cpu的使用率呈现锯齿状,也就是说在短时间内cpu升高,之后,迅速下降到闲置状态。

cpu使用的不合理,应该减小线程数,让任务在队列等待,使得cpu的使用率应该持续稳定在一个合理,平均的数值范围。

所以,在cpu在够用的时候,不应该过大,注意,并不是越大越好。

这个时候,可以通过上线之后,观察机器的cpu使用率和cpu负载,观察这两个参数来判断线程数是否合理。

能够通过命令查看cpu使用率是不是主要花在线程切换上。

cpu负载是正在执行的线程和等待执行的线程之和。

注意了,这里的等待指的是线程处在running状态,可是,还没有被cpu调度的等待,负载较高,也就意味着cpu竞争激烈,进而的说明,线程设置的比较大,在抢cpu资源。

负载的值通常约等于cpu核数是比较合理的数值。

3、线程池中执行的任务性质

计算密集型的任务比较占cpu,所以说,通常线程数设置的大小等于或者是略微大于cpu的核数。

可是,IO型任务主要时间消耗在IO等待上,cpu压力不是很大,所以,线程数一般设置的比较的大。

例:

多线程访问数据库,数据库有128个表,这样的话,就直接考虑使用128个线程。

4、内存使用率

线程数过多以及队列的大小对于这个数据都会造成影响。

队列的大小应该通过前期计算线程池任务的条数,来合理的设置队列的大小,不适合太小,让它不会溢出,因为,溢出会走拒绝策略,多多少少对于它的性能会造成一定的影响,与此同时,复杂度也会被增加,所以,这里需要我们好好的考量拒绝策略的选择。

拒绝策略包括了AbortPolicy(抛异常), CallerRunsPolicy(主线程执行) 和

DiscardPolicy(丢弃),也不适合过大,过大的话也用不上,还会消耗比较大的内存。

以上的四点是我们一定要去考虑的,之后给大家介绍一个很多人都会容易犯的错误。

如下:

线程池的配置

这里的话,发现任务执行的比较慢,机器的cpu,内存等也比较的低,所以,做出了加大线程的决定。

大约还需要100个线程,所以修改配置:

问题:

线程池是不是要创建新的线程,要做以下考虑:

1、假如,线程数小于corePoolSize,那么就直接添加新的线程。

2、假如,线程数大于等于corePoolSize,那么就放进队列进行等待,假如,放进队列成功了,那么就不添加新的线程。

3、假如对列满了,线程数小于maxPoolSize,那么就会新建线程,假如,大于maxpoolSize,那么就会走到拒绝策略。

所以,队列设置较大,一般来说是不会满,所以线程数其实是一直达不到maxPoolSize的,所以,其实一致用的是50个线程。

解决:

将核心线程和最大线程设置成一个值,都为100就可以了。

bbca0e2252eaa0d348a42fc5d09173d7.png

以上就是对于线程池参数设置的一个简单介绍了,你都了解了吗?更多内容,请继续关注奇Q工具网的常见问题栏目了解吧。

推荐阅读:

http://www.lbrq.cn/news/2561059.html

相关文章:

  • 鞍山做网站模板网站建站公司
  • 自己做首饰的好网站深圳关键词seo
  • 网站制作公司 信科网络今日头条国际新闻
  • 做淘宝客网站php百度爱采购推广平台
  • 做网站需要哪方面的编程昆明seo网站建设
  • wordpress站点很慢全网整合营销
  • 网站服务器在那里找小熊猫seo博客
  • 江苏网站seo平台关键词优化报价查询
  • wordpress footer的代码seo国外推广软件
  • 网络服务类型有哪几种惠州seo优化服务
  • 太原做网站个人营销方案
  • 做网站的类型搜索引擎优化论文
  • 中山制作网站的公司吗百度统计数据
  • 新乡公司做网站广州推广优化
  • 网站展示效果图搜索引擎排名的三大指标
  • 新东方广州门户网站百度网页制作
  • 网站布局怎么写seo优化包括哪些内容
  • 如何 做镜像网站免费自制app软件
  • 惠州做棋牌网站建设哪家好新手怎么做网络销售
  • 做涂鸦的网站百度云网盘资源搜索引擎
  • 郑州网站制作选择乐云seo如何自创网站
  • 做网站和做程序一样吗如何引流被动加好友微信
  • 公共频道18点新闻廊坊优化外包
  • 温州网站排名优化公司牡丹江seo
  • 专业建设网站公司排名市场调研分析报告
  • 天津企业网站策划公司甘肃新站优化
  • 个人设计师网站 青春seo线上培训班
  • 找设计师做网站在线磁力搜索引擎
  • wordpress 标签数长沙seo免费诊断
  • 成都网站创建百度商店应用市场
  • 市政污水厂变频器联网改造方案-profibus转ethernet ip网关(通俗版)
  • Docker 镜像打包为 ZIP 文件便于分享和转发
  • 在 AKS 中运行 Azure DevOps 自托管代理-2
  • C语言字符函数和字符串函数全解析:从使用到模拟实现
  • 8.1.1 不一样的kv存储RocksDB的使用场景
  • 因为想开发新项目了~~要给老Python项目整个虚拟环境