网站首页 > java教程 正文
今晚试了一下把用Go语言写的程序部署到服务器端,与用Java写的程序比对了一下硬件资源占用情况,Java程序用的Spring Boot框架写的,默认配置下内存占用悬殊还是挺大的,虽然Java可以设置最大堆内存使用量,但如果设置太小很容易内存溢出而导致程序直接崩掉,所以靠设置比较小数值的最大使用量来比对内存占用借鉴意义也不大,在实际生产中可行性不高。
至于为何在意默认启动服务后的内存占用,主要是考虑后续想同样的硬件配置环境下能跑更多的系统,对访问量不是很大的系统可以共用几台服务器即可,可以节省购买服务器的数量,同样数量的服务器可以为客户托管更多的业务系统。
虽然Spring Boot打包成Jar包后运行也简单,但毕竟还是要安装一下jre,并配置一下环境变量的;Go程序编译完后直接上传,设置一下运行权限直接执行就OK,后续不紧张的项目计划转成用Go研发。
注:用Docker和jeckins进行集成部署不在此文讨论范围,本文仅谈一下原生部署的优势。
附:【Go程序在Linux上部署运行步骤】
1、编译
go build
2、上传编译后的文件到服务器(本测试项目编译后的文件为:ishejiao,后边步骤用此文件举例)
3、设置权限
chmod 775 ishejiao
4、运行
nohup ./ishejiao &
猜你喜欢
- 2025-09-21 为什么Lawrence大神放弃了Go、转向Java?
- 2025-09-21 Go是新的Java?_go语言java
- 2025-09-21 Go语言和Java的三个不同点_go语言和java性能对比
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)