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

电子商务网站建设定位设想长沙seo研究中心

电子商务网站建设定位设想,长沙seo研究中心,网页效果图设计流程,海口网站建设公司哪家好1. ParallelGCThreads参数含义JVM垃圾回收(GC)算法的两个优化标的:吞吐量和停顿时长。JVM会使用特定的GC收集线程,当GC开始的时候,GC线程会和业务线程抢占CPU时间,吞吐量定义为CPU用于业务线程的时间与CPU总消耗时间的比值。为了承…

1. ParallelGCThreads参数含义

JVM垃圾回收(GC)算法的两个优化标的:吞吐量和停顿时长。JVM会使用特定的GC收集线程,当GC开始的时候,GC线程会和业务线程抢占CPU时间,吞吐量定义为CPU用于业务线程的时间与CPU总消耗时间的比值。为了承接更大的流量,吞吐量越大越好。

为了安全的垃圾回收,在GC或者GC某个阶段,所有业务线程都会被暂停,也就是STW(Stop The World),STW持续时间就是停顿时长,停顿时长影响响应速度,因此越小越好。生产实践中,需要根据业务特点设置一个合理的GC线程数,取得吞吐量和停顿时长的平衡。

目前广泛使用的GC算法,包括PS MarkSweep/PS Scavenge, ConcurrentMarkSweep/ParNew, G1等,都可以通过ParallelGCThreads参数来指定JVM在并行GC时参与垃圾收集的线程数。该值设置过小,GC暂停时间变长影响RT,设置过大则影响吞吐量,从而导致CPU过高。

2. ParallelGCThreads参数查看

 java -XX:+PrintFlagsFinal -version | grep ParallelGCThreads

3. ParallelGCThreads参数设置

GC并发线程数可以通过JVM启动参数: -XX:ParallelGCThreads=<N>来指定。在未明确指定的情况下,JVM会根据逻辑核数ncpus,采用以下公式来计算默认值:

◦当ncpus小于8时,ParallelGCThreads = ncpus

当ncpus大于8时,ParallelGCThreads = 8 + (ncpus - 8 ) ( 5/8 )

一般来说,在无特殊要求下,ParallelGCThreads参数使用默认值就可以了。但是在JRE版本1.8.0_131之前,JVM无法感知Docker的CPU限制,会使用宿主机的逻辑核数计算默认值 比如部署在128核物理机上的容器,JVM中默认ParallelGCThreads为83,远超过了容器的核数。过多的GC线程数抢占了业务线程的CPU时间,加上线程切换的开销,较大的降低了吞吐量。因此JRE 1.8.0_131之前的版本,未明确指定ParallelGCThreads会有较大的风险。

4. ParallelGCThreads参数实验

创建 8C12G 容器,宿主机是128C。模拟线上真实流量,采用相同QPS,观察及对比JVM YoungGC,JVM CPU,容器CPU等监控数据。场景如下:

◦场景1: JVM ParallelGCThreads 默认值,QPS = 420,持续5分钟,CPU恒定在70%

◦场景2: JVM ParallelGCThreads=8,QPS = 420,持续5分钟,CPU恒定在65%

◦场景3: JVM ParallelGCThreads 默认值,QPS瞬时发压到420,前1min CPU持续100%

◦场景4: JVM ParallelGCThreads=8,QPS瞬时发压到420,前2s CPU持续100%,后面回落

从监控数据来看,各场景下CPU差距较明显,特别是场景3和场景4的对比。场景3由于GC线程过多,CPU持续100%时长达1分钟。可以得出以下两个结论:

1.修改 ParallelGCThreads = 8后,同等QPS情况下,CPU会降低5%左右

2.修改 ParallelGCThreads = 8后,瞬间发压且CPU打满情况下,CPU恢复较快

5. ParallelGCThreads修改建议

ParallelGCThreads配置存在风险的应用,修改方式为以下两种方案(任选一种):

◦升级JRE版本到1.8.0_131以上,推荐1.8.0_192

◦在JVM启动参数明确指定 -XX:ParallelGCThreads=<N>,N为下表的推荐值:

容器核数

2

4

8

16

32

64

推荐值

2

4

8

13

23

43

建议上下界

1~2

2~4

4~8

8~16

16~32

32~64

附带:

1、CPU总核数 = 物理CPU个数 * 每颗物理CPU的核数

2、总逻辑CPU数 = 物理CPU个数 * 每颗物理CPU的核数 * 超线程数

3、相关命令:

查看CPU信息(型号)

cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
28  Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz 

查看物理CPU个数

cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
1

查看每个物理CPU中core的个数(即核数)

cat /proc/cpuinfo| grep "cpu cores"| uniq
cpu cores : 14

查看逻辑CPU的个数

cat /proc/cpuinfo| grep "processor"| wc -l
12
http://www.zhongyajixie.com/news/55361.html

相关文章:

  • 建网上商城的第三方网站哪个好开网店如何运营和推广
  • 网站浏览成交指标哪个推广网站好
  • seo网站制作怎样在网上做推广
  • 成都网站改版起飞页自助建站平台
  • 伴游网站开发百度推广一天烧多少钱
  • 网上做计算机一级的网站是营销计划书7个步骤
  • 网站专题页怎么做软文推广500字
  • 免费b站网页推广今天热点新闻
  • 网站做301将重定向到新域名网络服务运营商
  • 洛阳网站排名google搜索免费入口
  • 个人交互式网站备案百度大全免费下载
  • 网站的推广代码是什么广州十大营销策划公司
  • 做视频网站需要流媒体吗百度点击软件
  • 代做网站在哪找活站长统计网站
  • 论坛门户网站建设给我免费播放片高清在线观看
  • 属于门户网站的平台有长沙百度推广优化排名
  • 望牛墩镇仿做网站我想学做互联网怎么入手
  • php网站后台无法上传图片百度小说排行榜总榜
  • 什么网站能看到专业的做面包视频网络广告的特点
  • 昆明网站制作工具友情链接适用网站
  • 郑州做网站的大公司一份完整的营销策划书
  • 网站开发的完整流程公司网站设计需要多少钱
  • 手机做任务的网站有哪些app引导页模板html
  • 佛山三水区有没有网站建设公司seo快速收录快速排名
  • html5 响应式音乐网站万能推广app
  • 做网站什么主题好太原网站优化公司
  • 网站优化需要做什么如何在网上推广
  • 网站建设技巧武汉企业seo推广
  • 零基础学计算机难吗厦门seo
  • 卧龙区2015网站建设口碑北京seo百度推广