网站首页 > 技术教程 正文
现在java,go和csharp都可以编译成多个平台的本地可执行程序了,我们今天就来对比测试下他们生成本地程序后对系统资源的占用差别。
java的我用quarkus框架来做个测试,虽然springboot也有,但还处于实验中还不能处于实际运用中。
我使用官方最简单的样例:
可以看到生成的程序大小约为40m,内存占用约为21m,和在内存方面和通常使用的jvm运行比来是要小了很多很多。
csharp我用net6的asp.net core来做测试。
内存占用和java的差不多,由于java的静态资源是打在包中的,而csharp是裸露在外的,这个wwwroot约7mb,加上主程序也就和java的差不多了。
go的测试我用的是iris框架,gin也很不错,只是没法把静态目录映射到根地址这让我很纠结,只好选择了iris。
go生成的包就特别的小,只有16m,内存占用也只有18.9m。
从本次测试结果看,go的优势还是最大的。net虽然也很接近,但是生成linux的可执行程序放到docker中用乌班图或者centos去跑的话会报错误,缺少某个依赖,但是放到宿主机的linux中跑就没有问题,似乎精简后的镜像把net需要的东西也给精简掉了,所以还是有兼容性问题。java虽然也达到了效果了,但是由于java不支持交叉编译并且不是所有的api都支持本地化编译,所以目前只能极小项目上使用。
欢迎三连哦!
猜你喜欢
- 2024-11-19 C# 文字识别(OCR)
- 2024-11-19 c#手机开发Maui实现条形码扫描
- 2024-11-19 CSharp学习笔记(7)
- 2024-11-19 CSharp学习笔记(10)
- 2024-11-19 37岁辞职自学C#上位机开发通信类库第2天:进度记录
- 2024-11-19 CSharp学习笔记(16)
- 2024-11-19 python调用CSharp动态库
- 2024-11-19 C# 读取CSV文件
- 2024-11-19 CSharp学习笔记(14)
- 2024-11-19 C#委托—马工教你轻松玩转委托
你 发表评论:
欢迎- 最近发表
-
- 阿里P8大佬总结的Nacos入门笔记,从安装到进阶小白也能轻松学会
- Linux环境下,Jmeter压力测试的搭建及报错解决方法
- Java 在Word中合并单元格时删除重复值
- 解压缩软件哪个好用?4款大多数人常用的软件~
- Hadoop高可用集群搭建及API调用(hadoop3高可用)
- lombok注解@Data没有toString和getter、setter问题
- Apache Felix介绍(apache fineract)
- Spring Boot官方推荐的Docker镜像编译方式-分层jar包
- Gradle 使用手册(gradle详细教程)
- 字节二面:为什么SpringBoot的 jar可以直接运行?
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)