springboot linux启动方式

手动启动

java -Xms128m -Xmx256m -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8081,suspend=n 
-jar /data/app/test.jar --spring.profiles.active=dev > catalina.out 2>&1 &

 


 

参数说明:

  • -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

posted @ 2019-03-02 17:30  楼下有位  阅读(1815)  评论(0编辑  收藏  举报