SprngBoot应用在linux作为服务启动

Android存储空间不足下,APP出现奔溃等情况 版权声明:本文为博主原创文章,未经博主允许不得转载。 1. 问题起因     实时录制视频,使用getExternalCacheDir()函数返回的路径作为文件缓存区 2. 问题产生     系统在空间不足的情况下第一清除getExternalCacheDir和getCache文件下的缓存,导致正在录制的视频出现Error。 3. 解决方案     第一 阅读详情

1.服务名和jar包名都为application
/etc/init.d application
application服务内容:
###############################
#!/bin/bash
# chkconfig: 2345 10 90  
#服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。
# description: Start and Stop application
. /etc/init.d/functions
SERVICE_NAME="application"
RETVAL=0
PID=-1
PIDFILE=/var/run/${SERVICE_NAME}.PID

start() {
  # 首先检查PID文件是否已存在
  if [ -f ${PIDFILE} ]; then
    echo "PID file ${PIDFILE} already exists, please stop the service !"
    exit
  fi
  echo "Starting service ${SERVICE_NAME} ..."
  # >/dev/null 2>&1 表示不输出stdout和stderr
  # 最后一个 & 表示整个命令在后台执行
  cd "/home/topideal/apps/tms/application"
  java -Djava.security.egd=file:/dev/./urandom -jar application.jar --spring.cloud.config.profile=dev --spring.cloud.config.label=test >/dev/null  2>&1  &
  PID=$!  # 获取本shell启动的最后一个后台程序的进程号(PID)
  if [ -z ${PID} ]; then # 检查有没有获取到pid
    echo "Failed to get the process id, exit!"
    exit
  else
    echo "Starting successfully, whose pid is ${PID}"
  fi
  touch $PIDFILE
  echo ${PID} > ${PIDFILE}
}
stop() {
  if [ -f $PIDFILE ]; then # 检查PIDFILE是否存在
    PID=`cat ${PIDFILE}`
    if [ -z $PID ]; then # 检查PID是否存在于PIDFILE中
      echo "PIDFILE $PIDFILE is empty !"
      exit
    fi
    # 检查该进程是否存在
    if [ -z "`ps axf | grep $PID | grep -v grep`" ]; then
      echo "Process dead but pidfile exists!"
      exit
    else
      kill -9 $PID
      echo "Stopping service successfully , whose pid is $PID"
      rm -f $PIDFILE
    fi
  else
    echo "File $PIDFILE does NOT exist!"
  fi
}
restart() {
  stop
  start
}
status() {
  # 检查pid file是否存在
  if [ -f $PIDFILE ]; then
    PID=`cat $PIDFILE`
    # 检查pid file是否存在pid
    if [ -z $PID ] ; then
      echo "No effective pid but pidfile exists!"
    else
      # 检查pid对应的进程是否还存在
      if [ -z "`ps axf | grep $PID | grep -v grep`" ]; then
        echo "Process dead but pidfile exist"
      else
        echo "Running"
      fi
    fi
  else
    echo "Service not running"
  fi
}
case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  restart)
    restart
    ;;
  status)
    status
    ;;
  *)
    echo "Usage: application {start|stop|restart|status}"
    ;;
esac
###############################
2.授权
chmod 777 application
#开机启动需要额外配置 chkconfig --add application;chkconfig application on/off
3.开启服务
service application start
# systemctl start/restart/stop/status application(!!!注意观察打印日志是否报错:如找不到文件)
4.红色变绿色
chmod +x application.jar

参考博客:https://blog.youkuaiyun.com/zks_4826/article/details/80606036

SpringBoot官网上也有安装方式,这里补充一些链接:

https://www.jianshu.com/p/b61d3c913d15

http://www.hicode.club/2018/06/03/centos-start-sh/

https://juejin.im/post/5b8d2533e51d4538b35c327b

https://blog.youkuaiyun.com/ly690226302/article/details/79260875

https://blog.youkuaiyun.com/fwk19840301/article/details/80065723

https://blog.youkuaiyun.com/paulangsky/article/details/51321707

学Simulink——十二脉波整流电路(移相变压器)谐波抵消仿真 Y:Δ = 1:√3(若 DC 同压)— 此处同相电压故 220V(Y)=220V(Δ phase)Y(相电压=220V)、Δ(线电压=380V ⇒ 相=220V,30° 移相)可经 Lbal​=0.5mH(平衡电抗)或直接短(大 L_dc 下均流尚可)✅ 直流输出纹波频率 = 12·f_line(vs 6·f_line)直流输出 → Ldc​=50mH→Cdc​=2200µF→R=30Ω。Line‑Line RMS = 380 V(⇒ 相=220V)Vdc​≈1.35⋅380≈513V(同 6‑脉波) 阅读详情

相关推荐

手把手教你用Microsoft AEC Challenge数据集训练自己的回声消除模型(附完整代码)

本文详细介绍了如何使用Microsoft AEC Challenge数据集训练专业的回声消除模型,包括环境准备、数据清洗、模型架构设计、训练流程和实际部署注意事项。通过完整的代码示例和实战指南,帮助开发者快速掌握AEC技术,提升语音通信系统的回声消除效果。

weixin_27697385的博客 456

crond dead but pid file exists 问题解决办法

之前写过一个定时关机的crontab,后来关掉之后发现还是每天定时关机 查看crontab状态 1 [root@puppetclient var]# service crond status 2 crond dead but pid file exists 提示报错:crond dead but pid file exists 解决过程 ps -ef | grepcro...

weixin_34402090的博客 2092

2023-10-20 - MacBook - 优化外接2k显示器体验:告别字小与字虚的终极指南

本文针对MacBook外接2K显示器时普遍遇到的字体过小和边缘发虚问题,提供了终极解决方案。通过深入解析macOS的HiDPI与Retina显示原理,并详细指导使用SwitchResX等工具开启隐藏的HiDPI模式,实现完美的2倍整数缩放,从而在保证字体大小合适的同时获得清晰锐利的显示效果,彻底告别字小与字虚的困扰。

solidity8miner的博客 476

DM7启动报错管道文件已存在的解决方法

DM7服务已停止,启动报错“ dmap init failed, code[-7157]: 管道文件已存在”。 [root@qilin init.d]# ./DmAPService start Starting DmAPService: [ FAILED ] os_pipe2_create_server_with_name, name:[/dm7/bin/DM_PIPE_DMAP_LSNR_RD], error:[17] dmap V7.6.0.142-Build(2019.03.12-103811)ENT

baidu_39362177的博客 1347

告别CNN局限:用Transformer+迁移学习搞定高光谱图像分类(附Pytorch代码)

本文探讨了如何利用Transformer的自注意力机制和迁移学习策略解决高光谱图像分类中的挑战。通过结合CNN的局部特征提取和Transformer的全局建模能力,提出的DenseTransformer架构在多个数据集上实现了显著的性能提升。文章还提供了详细的PyTorch实现代码和工程优化技巧,帮助开发者快速应用这一技术。

weixin_32771907的博客 604

微信小程序获取用户手机号全流程实战(附完整代码)

本文详细介绍了微信小程序获取用户手机号的全流程实战,包括前端授权、后端解密及安全合规要点。通过传统授权按钮和新版手机号快速验证组件两种方案,帮助开发者高效实现功能,并附完整代码示例。重点解析了微信小程序接口的使用技巧和常见问题解决方案,确保数据安全与用户体验。

weixin_29280219的博客 568

cloudera-scm-service 已死,但 pid 文件存在的解决办法

查阅了网上的解决方式,大致有两种情况,分别如下 1.删除对应的pid文件,我的目录为/opt/cloudera-manager/cm-5.7.2/run/cloudera-scm-server.pid(即安装目录下的run/目录下) 注:这种情况一般是强制关机后服务无法启动,删除掉就可以了,个人理解是异常关机时,服务未关闭,导致对应的pid文件没能被删除,从而导致的无法启动 2.执行以下语句,cdh1是主机名,对应的切换成自己的mysql节点主机名即可。 /opt/cloudera-manager

lwz18642660013的博客 1297

DSP在线升级方案:TMS320C6678使用网络或者串口输出升级数据进行固件升级

下面这段先引用创龙的说明 IBL 运行后, 将从 NOR FLASH 或 NAND FLASH 的 0x00080000 地址引导 ELF/BBLOB 格式 用户程序。 当引导 ELF 格式用户程序时, IBL 会解析用户程序头部信息,并根据头部信息 拷贝不同的代码段至指定 CPU 内存地址,然后将 PC 指针跳转至_c_int00, 再运行用户程 序。当引导 BBLOB 格式用户程序时,由于无头部信息, IBL 会将用户程序拷贝至 0x9E000000 (该内存地址为 IBL 代码指定),并将 PC..

ToneChip的专栏,一个传统的嵌入式码农,裸机编程 1941

达梦DM7数据库服务启动异常,管道文件已存在,DmAPService dead but pid file exists

DM7数据库服务异常 中标麒麟操作系统NeoKylin 4.4.5-6下达梦数据库DM7服务已停止,启动报错“ dmap init failed, code[-7157]: 管道文件已存在”。 现象如下: 在操作系统的系统服务中查看服务状态: 在达梦数据库服务查看器中查看服务状态: 查看服务状态: [root@china DAMENG1]# service DmAPService stop Dm...

qq_15155125的博客 3244

(五)激光线扫描-位移台标定

线激光属于主动测量方式,但是由于线激光的特性,我们只能通过提取激光中心线获取这一条线上的高度信息,那么要进行三维重建的话,就需要通过平移或者是旋转的方式,来让线激光扫描被测物体的完整轮廓,也就是整个表面。激光线的密度越高还原出来的物体越细腻,但由于数据量大,也会导致速度变慢。下面以位移台为例讲解,如何标定位移台。

FlyWine的博客 2889

基于STM32的多传感器融合的设施农业小型搬运机器人避障控制系统设计

针对设施农业场景中狭窄通道、障碍物多样(如农机具、作物植株、水管)的特点,设计一款基于 STM32 的小型搬运机器人避障控制系统。系统通过多传感器融合实现 360° 环境感知,采用模糊 PID 控制算法实现平滑避障,满足温室、大棚等场景的搬运需求。通过在温室环境测试,系统可实现对直径≥5cm 障碍物的有效检测(检测距离误差≤5%),避障转向半径≤30cm,平均功耗≤15W。后续可通过增加激光雷达(如 TFmini)提升远距离障碍物检测能力,结合 SLAM 算法实现路径规划。

weixin_42300449的博客 860

Springboot项目部署到Linux服务器上

1、Springboot项目maven配置 <groupId>com.zxl</groupId> <artifactId>myblog</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> packaging打包方式是以jar包的形式进行打包 2、利用maven把Springboot项目进行打包,可以利用命令,

qq_40784258的博客 2931

ESP32-IDF开发之旅 外设篇④ 串口通信 Uart

ESP32-S3 UART串口通信详解 本文介绍了ESP32-S3的UART串口通信配置流程,涵盖硬件引脚分配、参数设置、数据收发等关键步骤。

单片机菜鸟哥的博客 495

Spring Boot应用启动的三种方式

Spring Boot应用HelloWorld的三种启动方式: 项目的创建可以在http://start.spring.io/网站中进行项目的创建。 首先项目结构:   1、  通过main方法的形式启动spring-boot应用,直接写一个main方法然后启动main方法即可(如上图) 2、  通过命令

啊哦啊哦啊哦! 开心快乐哟! 1097

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Docker容器入门之一:部署SpringBoot项目

一、环境准备:    1、vm虚拟机: Workstation 12 Pro 12.5.7 build-5813279    2、Centos 7在虚拟机上安装好Centos7系统后,就可以开始准备安装Docker了。由于不想每次都敲sudo去获取权限什么的,本人直接是使用root账号登录的。下面开始正文。二、Docker安装和配置    1、安装方式一: [root@localhost ~]# ...

qq_39805994的博客 1940

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

MYSQL dead but pid file exists问题

服务器突然断电,造成MySQL数据库启动不了的问题,现象如下:

Alian的专栏 1万+

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

docker启动失败,报docker dead but pid file exists,处理方式

docker在Linux环境下面,启动异常,查看运行状态时提示:docker dead but pid file exists; 则需要删除docker的pid 和 sock 文件;再次启动docker服务即可;

Kongguyouxiang的博客 2543

linux可执行程序做成服务管理

linux可执行程序做成服务管理

yangxiluo的博客 998

linux 部署java程序,使其成为服务

一个小项目,linux环境下部署,记录一下: 启动脚本comm_mq如下: #! /bin/sh #chkconfig:345 61 61 #description:test2Run description #------------------------------------------------------------------- # 定义变量 #---------------...

wh_xia_jun的专栏 3407

配置以服务方式启动并设置开机启动

需要设置一个自有服务能以服务的方式启动,例如一个名称为mertrics-server的服务能通过命令service metrics-server star的方式启动,对配置过程进行简单记录。① 首先明确metrics-server服务为于/opt目录下,其中启动脚本位置为。③ 在/etc/init.d/中创建一个metrics-server,并添加内容。② metrics-server服务停止脚本位置为。

weixin_42467874的博客 615

将windows的程序作为服务自启动

1.需要先下载两个文件Instsrv.exe和srvany.exe,放在C:\文件夹下(或者其他路径都可以); 2.启动cmd,运行“c:\instsrv.exe exporter c:\srvany.exe”添加一个名为exporter的服务(名称自定义); 如果cmd的提示路径不是c:\的话需要先用“cd”转换路径 3.在注册表里找到新建的exporter服务并设置关联和参数 3.1.启动cmd,运行“regedit”在HKEY_LOCAL_MACHINE\SYSTEM\CurrentCon

M_265810的博客 2310

Linux将应用程序写成系统服务项,开机自启

centos路径/usr/lib/systemd/system/ ubuntu路径/etc/systemd/system/ 以编写myservice为例 vim /etc/systemd/system/myservice.service 内容 [Unit] Description=This is myservice [Service] Type=simple ExecStart=/usr/bin/python /home/test.py Restart=on-failure [Install] Wan

qq_41122834的博客 517

Linux下启动进程 start application

m0_61759186的博客 879

Linux操作系统下java程序的启动、停止、重启及运行状态的shell脚本编写

linux系统编写shell脚本,实现java程序的启动、状态查看、停止、重启操作

qq_45980039的博客 5303

DevOps:Linux部署java

方式优点缺点适用场景直接运行 JAR简单快速无进程管理,参数不安全,较难适应同主机同时运行不同JDK版本应用本地测试、临时验证Shell 脚本参数集中管理,支持后台运行依赖脚本维护,无环境隔离,较难适应同主机同时运行不同JDK版本应用单机简单部署Docker 挂载JAR 包与镜像分离,便于更新需手动管理挂载路径开发环境,频繁更新 JAR 包,同主机需要同时运行不同JDK版本应用Docker 镜像构建环境隔离,版本可控,适合生产更新需重新构建镜像生产环境,要求稳定性,隔离性,版本控制。

WanCHch_2001的博客 1031

配置linux自启java程序

linux配置自启java程序

alterhz的博客 743
下一篇: Spring Boot 会话管理
参与者
博客等级 码龄9年 1粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值