当前位置: 首页 > wzjs >正文

深圳外贸网站推广公司手机网站怎么优化

深圳外贸网站推广公司,手机网站怎么优化,淘客网站建设带app,网站建设公司友情链接【1】启动命令 nohup java -jar your-application.jar > /dev/null 2>&1 &> /dev/null 2>&1:这条命令将标准输出和标准错误都重定向到/dev/null,这意味着它们不会输出到控制台或任何文件。这样做是因为我们希望所有日志都由Log…

【1】启动命令

nohup java -jar your-application.jar > /dev/null 2>&1 &

> /dev/null 2>&1:这条命令将标准输出和标准错误都重定向到/dev/null,这意味着它们不会输出到控制台或任何文件。这样做是因为我们希望所有日志都由Logback处理并写入到配置文件中指定的日志文件里。

然而,如果你想要保留控制台输出(例如,对于调试目的),你可以省略这部分重定向,让Logback同时处理日志输出:

nohup java -jar your-application.jar &

【2】三个脚本

为了创建启动、重启和停止脚本,我们可以编写简单的Shell脚本来管理你的Java应用程序(study-0.0.1-SNAPSHOT.jar),并确保它在指定端口(8080)上运行。以下是每个脚本的示例代码。

启动脚本 start.sh

#!/bin/bash# 应用程序名称
APP_NAME="study-0.0.1-SNAPSHOT.jar"# 检查应用是否已经在运行
if pgrep -f "$APP_NAME" > /dev/null; thenecho "$APP_NAME is already running."
else# 使用nohup启动应用,并将日志输出到nohup.outnohup java -jar $APP_NAME --server.port=8080 > /dev/null 2>&1 &echo "$APP_NAME started."
fi

停止脚本 stop.sh

#!/bin/bash# 应用程序名称
APP_NAME="study-0.0.1-SNAPSHOT.jar"# 查找并终止应用进程
PIDS=$(pgrep -f "$APP_NAME")
if [ -z "$PIDS" ]; thenecho "$APP_NAME is not running."
elsekill $PIDSecho "Stopped $APP_NAME (PID(s): $PIDS)."
fi

重启脚本 restart.sh

#!/bin/bash# 调用停止脚本
./stop.sh# 等待几秒钟以确保应用完全停止
sleep 5# 调用启动脚本
./start.sh

注意事项

  1. 权限:确保脚本具有可执行权限。你可以通过以下命令为所有脚本添加执行权限:

    chmod +x start.sh stop.sh restart.sh
    
  2. 路径:确保脚本与你的JAR文件位于同一目录下,或者在脚本中使用绝对路径来引用JAR文件。

  3. 日志重定向:在start.sh脚本中,我们使用了nohup命令并将标准输出和错误重定向到nohup.out。如果需要自定义日志文件名或位置,可以修改这部分配置。

  4. 检查应用状态pgrep -f "$APP_NAME"用于查找正在运行的应用实例。这种方式依赖于应用名称的唯一性,如果存在多个同名应用,可能需要更精确的方法来识别目标进程。

运行脚本

  • 启动应用:

    ./start.sh
    
  • 停止应用:

    ./stop.sh
    
  • 重启应用:

    ./restart.sh
    

【3】优化后的 restart.sh

为了优化重启脚本,使其不依赖于start.shstop.sh,我们可以直接在restart.sh中实现停止和启动逻辑。这样做不仅可以减少对外部脚本的依赖,还能使整个流程更加简洁高效。

#!/bin/bash# 应用程序名称
APP_NAME="study-0.0.1-SNAPSHOT.jar"
PORT=8080# 函数:检查应用是否正在运行
is_running() {pgrep -f "$APP_NAME" > /dev/null 2>&1
}# 停止应用
stop_app() {if is_running; thenecho "Stopping $APP_NAME..."PIDS=$(pgrep -f "$APP_NAME")kill $PIDS# 等待几秒钟确保进程已完全停止for i in {1..10}; doif ! is_running; thenecho "$APP_NAME stopped."return 0fisleep 1doneecho "Failed to stop $APP_NAME gracefully, forcing termination."kill -9 $PIDSelseecho "$APP_NAME is not running."fi
}# 启动应用
start_app() {if is_running; thenecho "$APP_NAME is already running."elseecho "Starting $APP_NAME..."nohup java -jar $APP_NAME --server.port=$PORT > /dev/null 2>&1 &# 确认应用是否成功启动for i in {1..10}; doif is_running; thenecho "$APP_NAME started successfully."return 0fisleep 1doneecho "Failed to start $APP_NAME."exit 1fi
}# 主逻辑
echo "Restarting $APP_NAME..."
stop_app
start_app

脚本解释

  1. is_running函数:用于检查应用程序是否正在运行。它使用pgrep命令查找与应用名称匹配的进程。

  2. stop_app函数

    • 首先检查应用是否正在运行。
    • 如果是,则发送终止信号给进程,并等待几秒钟以确保应用已经完全停止。
    • 如果应用没有在规定时间内停止,则强制终止(通过发送kill -9信号)。
  3. start_app函数

    • 检查应用是否已经在运行。
    • 如果没有运行,则使用nohup命令启动应用,并将输出重定向到nohup.out
    • 等待几秒钟以确认应用是否成功启动。
  4. 主逻辑部分:调用stop_app函数停止应用,然后调用start_app函数启动应用。

使用方法

  • 直接运行restart.sh脚本来重启你的Java应用:
    ./restart.sh
    

注意事项

  • 权限:确保脚本具有可执行权限。可以通过以下命令添加执行权限:

    chmod +x restart.sh
    
  • 路径:确保脚本与JAR文件位于同一目录下,或者在脚本中使用绝对路径引用JAR文件。

  • 日志管理:当前的日志被重定向到了nohup.out。如果需要更复杂的日志管理策略(如按日期分割日志),可以考虑使用Logrotate或其他工具。

通过这种方式,你可以简化脚本的管理和维护,同时确保重启过程可靠且易于控制。

http://www.dtcms.com/wzjs/594564.html

相关文章:

  • 网站建设的类型或分类福建建设工程设计备案网站
  • 海阳建设局网站网站建设 源代码
  • 一个网站需要多少容量wordpress 背景特效插件
  • 唐山哪里建设网站wordpress最能玩
  • 国外网站布局做海鱼的网站
  • 佛山集团网站建设天津港电子商务信息网
  • 重庆网站建设首选承越wordpress中视频播放
  • 如何建设营销型的网站医院网站前置审批
  • 佛山格尔做网站的公司风控网站开发
  • 北京建站模板厂家做网站需要用c语言吗
  • 网站建设怎么找客源?网络营销的培训课程视频
  • 东莞网站推广公司黄页现在的网站开发都用什么开发
  • 静态网站是什么意思包子店vi设计
  • 浙江金华市建设局网站3g微网站是什么
  • 微小店适合卖做分类网站吗打工网站校企合作建设
  • 将自己做的网站用电脑发到网上个人网站备案介绍
  • 网站制作公司教你怎么制作网站wordpress 附件插件下载失败
  • 做班级的活动的网站wordpress 密码忘记了
  • 营销型网站建设指导原则荣耀手机商城官方网站
  • 做网站需要执照吗自驾游自由行网站建设
  • 电子商务网站的特点北京千锋教育培训机构怎么样
  • 怎么再贴吧给自己的网站做宣传网业黑色
  • 怎么做自己的微信网站厉害的网站开发
  • 海口专业做网站公司哪家好wordpress导入微信
  • 专业网站建设设计公司深圳市住建设局网站
  • 百度小程序对网站seo网站开发html书籍下载
  • 网站建设的总体目标是什么软装设计公司名称
  • 英语网站新增两个栏目北京城建道桥建设网站
  • 做影视网站怎么亿星网站建设
  • 建筑类专业做教育的网站公众号引流推广