java服务启动脚本

  • mvn打包命令

    # build.sh
    mvn clean package -Dcheckstyle.skip=true -DskipTests
    
    • 注意:Maven中 -DskipTests-Dmaven.test.skip=true 都是跳过测试用例。
      -DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下。
      -Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类。
  • 启动java服务

    # start.sh
    echo "Starting..."
    app_memory_size=4096
    java 
    -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m \   # 元空间最小值、元空间最大值 
    -Xms${app_memory_size}m  -Xmx${app_memory_size}m \   # 最小堆内存、最大堆内存
    -Xmn2731m \   # 年轻代大小 
    -Xss1024k \   # 栈内存大小。设置单个线程栈大小,一般默认512kb~1024kb。
    -XX:SurvivorRatio=8 \   # 幸存者比例 
    
    -XX:+UseConcMarkSweepGC \   # 对老生代采用并发标记交换算法进行GC
    
    -verbose:gc \   # 输出每次GC的相关情况 
    -Xloggc:/tmp/gc-%t.log \   # 将每次GC事件的相关情况记录到一个文件中。文件名是“gc-时间戳.log”
    -XX:+PrintGCDetails \   # 打印GC详细信息 
    -XX:+PrintGCDateStamps \   # 打印GC时间,使用的是系统时间
    -XX:+PrintGCTimeStamps \   # 打印GC时间,使用的是JVM启动到GC时的相对时间
    -XX:+UseGCLogFileRotation \   #  设置使用GC日志 
    -XX:NumberOfGCLogFiles=10 \   # GC日志文件最多生成10个,使用Xloggc指定的名字,默认名字是gc.log.0、gc.log.1、gc.log.2 ...,
    -XX:GCLogFileSize=100M \   # 每个GC日志文件最多100M 
    
    -XX:+HeapDumpOnOutOfMemoryError \   # 当首次遭遇OOM时导出此时堆中相关信息
    -XX:HeapDumpPath=/tmp/heapdump.hprof \   # 指定导出堆信息时的路径或文件名 
    -XX:OnOutOfMemoryError="sh ~/test.sh" \    # 当首次遭遇OOM时执行自定义命令 
    
    -jar xxx.jar 
    
  • 启动java服务

    java -jar xxx.jar 
    
  • 启动java服务,将日志追加到文本文件

    java -jar xxx.jar > log.txt 2>&1 & 
    
  • 启动java服务使其后台运行,并将日志追加到文本文件

    nohup java -jar xxx.jar > log.txt 2>&1 & 
    
  • 停止java服务

    # stop.sh
    #!/bin/bash
    function stop()
    {
        echo "Stopping..."
        boot_id=`ps -ef |grep java|grep xxx.jar|grep -v grep|awk '{print $2}'`
        count=`ps -ef |grep java|grep xxx.jar|grep -v grep|wc -l`
    
        if [ $count != 0 ];then
            kill -9 $boot_id
            echo "Stop java pid: "$boot_id
        else
            echo "java Already Stop"
        fi
    }
    
    stop
    

  • 后台执行脚本
nohup ./script_name.sh 2>&1 > /dev/null &

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值