springboot linux启动方式
手动启动
java -Xms128m -Xmx256m -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8081,suspend=n |
参数说明:
- -Xms128m 设置的是JVM堆最小内存为128m
- -Xmx256m 设置的是JVM堆最大内存为256m
- 这里个问题是-Xmx指定的内存不包括jvm运行中使用的本地内存,所以如果有NIO等涉及到本地内存的情况时,该java进程占用的总内存会超过-Xmx设定的数值
- -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8081,suspend=n
- 设置debug模式,允许tomcat远程连接服务器调试,调试端口可指定,此处为8081
- /data/app/test.jar 指定需要执行的jar包的路径
- --spring.profiles.active=dev 设定SpringBoot运行环境为dev环境
- > catalina.out将标准输出指向制定文件catalina.out
- 2>&1 输出所有的日志文件
- & 后台模式执行
脚本启动
#!/bin/sh #功能简介:启动上层目录下的jar文件 #参数简介: # $1:jar文件名(包含后缀名) # 注意:jar文件必须位于startup.sh目录的上一层目录。 #启动参数 JAVA_OPTS="-server -Xms400m -Xmx400m -Xmn300m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m -Xverify:none -XX:+DisableExplicitGC -Djava.awt.headless=true" jar_name=$1 this_dir="$( cd "$( dirname "$0" )" && pwd )" parent_dir=`dirname "${this_dir}"` log_dir="${parent_dir}/logs" log_file="${log_dir}/catalina.out" jar_file="${parent_dir}/userapps/${jar_name}" #参数个数<1或者参数空值时,中断执行 if [ $# -lt 1 ] || [ -z $1 ]; then echo -e "\033[31m请输入要部署的jar包名称!\033[0m" exit 1 fi #日志文件夹不存在,则创建 if [ ! -d "${log_dir}" ]; then mkdir "${log_dir}" fi #父目录下jar文件存在 if [ -f "${jar_file}" ]; then #启动jar包;重定向标准错误输出到文件,丢掉标准输出 java $JAVA_OPTS -jar ${jar_file} 1>/dev/null 2>"${log_file}" & exit 0 else echo -e "\033[31m${jar_file}文件不存在!\033[0m" exit 1 fi
启动方式
./startup.sh xxx.jar |
参考:https://www.cnblogs.com/woms/p/6145688.html