码迷,mamicode.com
首页 > Web开发 > 详细

[同事转帖] .net core的服务器模式和工作站模式

时间:2019-01-25 11:40:40      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:div   占用   配置   服务器   image   back   serve   runtime   跨平台   

发现自己的服务器上面的进程占用越来越厉害 所以就跟同事讨论了一下 性能组同事 说已经发现 并且给了一个 网址  
这里转帖记录一下 避免以后找不到. 

 

.NET Core是一个开源通用的开发框架,具有跨平台能力,我们在享受其性能飙升的同时,也面临了一些问题。通过观察 NetCore 程序的线上运行情况发现 ,负载高的情况下应用程序占用内存较大,本文将针对这个问题展开讨论,对比分析不同GC工作模式下的.NetCore性能与内存管理的表现。通过查找资料,得知.Net Core的GC工作模式大致可以分为四种工作模式。接下来直接针对这四种模式进行测试,下文列出了每种模式的配置方式 、程序内存占用情况与压测聚合报告:

服务器:CPU : E5-2609 v3 @ 1.9G

    内存 : 8G。

测试工具:jmeter  100个线程 10万次请求。

工作模式配置可以在项目文件中进行修改

<ServerGarbageCollection>false</ServerGarbageCollection>

ConcurrentGarbageCollection>

也可以直接修改发布包中的runtimeconfig文件。

 

一 、Concurrent & Workstation GC (工作站模式,启用并发垃圾回收)   

技术分享图片 

 技术分享图片

技术分享图片

 

二、Background & Workstation GC (工作站模式 ,禁用并发垃圾回收)

技术分享图片 

 技术分享图片 

  技术分享图片 

三 、Concurrent & Server GC (服务器模式,启用并发垃圾回收)

 技术分享图片  

技术分享图片

技术分享图片 

四 、Background & Server GC (服务器模式,禁用并发垃圾回收)

技术分享图片

技术分享图片

技术分享图片

 

五 、结论

  通过对比四个测试结果可以看出,工作站模式内存控制要明显优于服务器模式,gc工作频繁,但是随之带来的后果是性能的下降,可以看出服务器模式的相应时间和吞吐量要优于工作站模式,其中服务器模式是默认的工作模式。以上测试结果仅供参考,通过反复的测试,结果大致不变。

[同事转帖] .net core的服务器模式和工作站模式

标签:div   占用   配置   服务器   image   back   serve   runtime   跨平台   

原文地址:https://www.cnblogs.com/jinanxiaolaohu/p/10315394.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!