Centos7 自部署中间件开机启动,以及java应用开机启动方法
一、zookeeper
cd /etc/rc.d/init.d/
touch zookeeper
chmod +x zookeeper
vi zookeeper#以下为内容,自行修改 路径#!/bin/bash
##chkconfig:2345 10 90#description:service zookeeper
#修改为自己的目录
export ZOO_LOG_DIR=/data/apache-zookeeper-3.7.0/logs
ZOOKEEPER_HOME=/data/apache-zookeeper-3.7.0/
case "$1" instart) su root ${ZOOKEEPER_HOME}/bin/zkServer.sh start;;start-foreground) su root ${ZOOKEEPER_HOME}/bin/zkServer.sh start-foreground;;stop) su root ${ZOOKEEPER_HOME}/bin/zkServer.sh stop;;status) su root ${ZOOKEEPER_HOME}/bin/zkServer.sh status;;restart) su root ${ZOOKEEPER_HOME}/bin/zkServer.sh restart;;upgrade)su root ${ZOOKEEPER_HOME}/bin/zkServer.sh upgrade;;print-cmd)su root ${ZOOKEEPER_HOME}/bin/zkServer.sh print-cmd;;*) echo "requirestart|start-foreground|stop|status|restart|print-cmd";;
esacservice zookeeper start/stop#加入启动,以下二选一执行
chkconfig --add zookeeper
chkconfig zookeeper on#查看启动
chkconfig --list
二、redis
cd /etc/rc.d/init.d/
vi redis#以下为内容,自行修改 路径#!/bin/bash
#chkconfig: 2345 10 90
#description: Start and Stop redis
PATH=/usr/local/bin:/sbin:/usr/bin:/bin
REDISPORT=6379
EXEC=/data/redis-7.0.4/src/redis-server #对应你自己的配置地址
REDIS_CLI=/data/redis-7.0.4/src/redis-cli #对应你自己的配置地址
PIDFILE=/var/run/redis.pid
CONF="/data/redis-7.0.4/redis.conf" #对应你自己的配置地址
AUTH="Ecan@8722."
case "$1" instart)if [ -f $PIDFILE ]thenecho "$PIDFILE exists, process is already running or crashed." elseecho "Starting Redis server..." $EXEC $CONFfiif [ "$?"="0" ]thenecho "Redis is running..." fi;;stop)if [ ! -f $PIDFILE ]thenecho "$PIDFILE exists, process is not running." elsePID=$(cat $PIDFILE)echo "Stopping..." $REDIS_CLI -p $REDISPORT SHUTDOWNsleep 2while [ -x $PIDFILE ] doecho "Waiting for Redis to shutdown..." sleep 1doneecho "Redis stopped" fi;;restart|force-reload)${0} stop${0} start;;*)echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2exit 1
esacchmod +x redis
chkconfig --add redis
chkconfig redis onchkconfig --list
三、rabbitmq
systemctl enable rabbitmq-server
四、activemq
cd /etc/rc.d/init.d/
vi activemq#!/bin/sh
#
# /etc/init.d/activemq
# chkconfig: 345 63 37
# description: activemq servlet container.
# processname: activemq 5.15.2# Source function library.
#. /etc/init.d/functions
# source networking configuration.
#. /etc/sysconfig/networkexport ACTIVEMQ_HOME=/data/apache-activemq-5.15.0case "$1" instart)sh $ACTIVEMQ_HOME/bin/activemq start;;stop)sh $ACTIVEMQ_HOME/bin/activemq stop;;status)sh $ACTIVEMQ_HOME/bin/activemq status;;restart)sh $ACTIVEMQ_HOME/bin/activemq stopsleep 1sh $ACTIVEMQ_HOME/bin/activemq start;;esac
exit 0chmod 755 activemq
#加入启动,以下二选一执行
chkconfig --add activemq
chkconfig activemq on#查看启动
chkconfig --list
五、开机启动java应用
#进入目录
cd /usr/lib/systemd/system#新建服务 news-app 改为自己应用的名字
vi news-app.service#以下为内容
#!/bin/sh
[Unit]
Description=news-app #改为你自己的应用名字
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/data/news-app/startup.sh #改为你自己的启动脚本
ExecStop=/data/news-app/startup.sh #改为你自己的启动脚本
PrivateTmp=true
[Install]
WantedBy=multi-user.target#文件内容结束,权限授权chmod +x news-app.service
#重新加载服务
systemctl daemon-reload
#启动服务器
systemctl start news-app
#查看服务状态
systemctl status news-app
#开启启动服务
systemctl enable news-app
startup.sh 给大家提供一个springboot的启动脚本,以下脚本每次执行会自动关闭程序并启动程序,避免手动关闭应用的麻烦。
请自行修改所有 news-app 的地方,java 附带参数自行修改,这里涵盖了dubbo。
#!/bin/bash
basepath=$(cd `dirname $0`; pwd)
arr=`ps -ef | grep news-app-v1.0.0 | grep -v grep | awk '{print $2}'`
echo get pid: ${arr}
for i in ${arr[@]};do
echo kill pid ${i}...
kill -9 ${i}
done;
echo kill finished!
cd ${basepath}
echo start application
nohup java -Xmx250M -Xms250M -Ddubbo.network.interface.preferred=eth0 -Ddubbo.provider.telnet=cd,clear,count,pwd,exit,invoke,log,ps,select,shutdown,status,trace,help,ls -jar -Dfile.encoding=UTF-8 -Dloader.path=${basepath}/lib,${basepath}/config ${basepath}/news-app-v1.0.0.jar.original >/dev/null 2>&1 &
echo start end...
相关文章:
Centos7 自部署中间件开机启动,以及java应用开机启动方法
一、zookeeper cd /etc/rc.d/init.d/ touch zookeeper chmod x zookeeper vi zookeeper#以下为内容,自行修改 路径#!/bin/bash ##chkconfig:2345 10 90#description:service zookeeper #修改为自己的目录 export ZOO_LOG_DIR/data/apache-zookeeper-3.7.0/logs…...
密度估计公式
极大似然估计: y p ( x 1 , x 2 , x 3 , . . . , x n ) 1 2 π σ e − ( x 1 − μ ) 2 2 σ 2 1 2 π σ e − ( x 2 − μ ) 2 2 σ 2 . . . 1 2 π σ e − ( x n − μ ) 2 2 σ 2 y p(x_1,x_2,x_3,...,x_n) \frac{1}{\sqrt{2\pi} \sigma} e ^{-\frac{(x_1…...
2023 ICPC 网络赛 第一场(补题:F)
7题罚时879, 队排235,校排79。 除了I题dp没注意空间限制第一发没有用滚动数组MLE,以及G题启发式合并脑抽用set当容器T一发,以及K没注意是平方的期望白wa4发这些应当避免的失误外,基本满意。剩下的题基本都是当时写不出…...
MySQL慢查询优化、日志收集定位排查、慢查询sql分析
MySQL慢查询日志收集、定位,慢查询分析、排查。 一 MySQL慢查询定位 1. 确定是否已开启慢查询日志 查看慢查询日志是否已经被开启: SHOW VARIABLES LIKE slow_query_log; 如果返回值是OFF,你需要开启它。 2. 开启慢查询日志 你可以临时在运…...
HZOJ-266:表达式计算
题目描述 给出一个表达式,其中运算符仅包含 ,-,*,/,^ 要求求出表达式的最终值。 数据可能会出现括号情况,还有可能出现多余括号情况,忽略多余括号,正常计算即可; 数据保证不会出现大于 max long int 的数据࿱…...
JavaScript学习小结
变量声明:使用var关键字,变量没有类型,但值有类型(弱类型语言) 数据类型: ①number ②string(单引号,双引号都可以表示字符串) ③boolean ④Object类型 ⑤undefine…...
MySQL学习笔记13
DISTINCT数据去重: 案例:获取tb_student学生表学员年龄的分布情况。 mysql> select * from tb_student; ------------------------------------------------- | id | name | age | gender | address | --------------------------…...
怎么获取外网ip地址
在网络连接中,每个设备都被分配一个唯一的IP地址,用于标识和定位该设备。其中,内部或局域网IP地址是在局域网内使用的,而外网IP地址则是与公共互联网通信时所使用的地址。 获取外网IP地址对于许多人来说可能是一个常见的需求&…...
算法 只出现一次的两个数字-(哈希+异或)
牛客网: BM52 题目: 数组中仅2个数字出现1次,其余出现2次 思路: 出现2次的数字异或结果为0,另外两个不同的数字异或结果res不为0,异或结果的二进制位必与其中一个相同,求出二进制位为1的pos, 遍历数组,所有此位置为1…...
外卖霸王餐小程序、H5、公众号版外卖系统源码
最新外卖霸王餐小程序、H5、微信公众号版外卖系统源码、霸王餐美团、饿了么系统,粉丝裂变玩源码下载,外卖cps小程序项目,外卖红包cps带好友返利佣金分销系统程序、饿了么美团联盟源码,外卖cps带分销返利后端源码,基于L…...
amlogic 机顶盒关闭DLNA 后,手机还能搜到盒子
S905L3 带有投屏的功能,并通过 com.droidlogic.mediacenter.dlna.MediaCenterService 服务的启动和停止来开启和关闭DLNA功能,但是在测试中发现机顶盒关闭DLNA后,手机还能搜索到盒子。我在复测中发现关闭后有时很难很久搜索到盒子,…...
@Autowire、@Recourse用啥?
在使用IDEA写Spring相关的项目的时候,在字段上使用Autowired注解时,总是会有一个波浪线提示:Field injection is not recommended. 这是为啥呢?今天就来一探究竟。 众所周知,在Spring里面有三种可选的注入方式…...
[linux] 过滤警告⚠️
如果你在Python脚本中输出和执行脚本文件时想要过滤掉警告信息,可以尝试以下方法: 使用warnings模块:导入warnings模块并设置warnings.filterwarnings("ignore"),这将会忽略所有的警告信息。在需要过滤警告的部分之前添…...
Linux必备操作系统命令大全
一、基础命令 pwd 命令 pwd命令用于显示当前所在的工作目录的全路径名称。该命令无需任何参数,只需在终端窗口中输入 pwd 命令即可使用。 cd 命令 cd命令用于更改当前工作目录。该命令需要一个参数:目标目录名称。例如,若要进入 Document…...
【rtp】VideoTimingExtension 扩展的解析和写入
VideoTimingExtension 扩展有13个字节,并非都是字符串类型 class VideoTimingExtension {public:using value_type = VideoSendTiming;static constexpr RTPExtensionType kId = kRtpExtensionVideoTiming;static constexpr uint8_t kValueSizeBytes = 13...
网络安全CTF比赛有哪些事?——《CTF那些事儿》告诉你
目录 前言 一、内容简介 二、读者对象 三、专家推荐 四、全书目录 前言 CTF比赛是快速提升网络安全实战技能的重要途径,已成为各个行业选拔网络安全人才的通用方法。但是,本书作者在从事CTF培训的过程中,发现存在几个突出的问题࿱…...
Winform直接与Wpf交互
Winform项目中,可以直接使用wpf中的自定义控件和窗体 测试环境: vistual studio 2017 window 10 一 winform直接使用wpf的自定义控件 步骤如下: 1 新建winfrom项目,名为WinFormDemo,默认有一个名为Form1的窗体…...
Uni-app 调用微信地图导航功能【有图】
前言 我们在使用uni-app时,有时候会遇到需要开发地图和导航的功能,这些方法其实微信小程序的API已经帮我们封装好了 详见:微信小程序开发文档 接下来我们就演示如何用uni-app来使用他们 使用 <template><view><button type…...
Golang slice 通过growslice调用nextslicecap计算扩容
先来看一段代码 code: e : []int64{1, 2, 3}fmt.Println("cap of e before:", cap(e))e append(e, 4, 5, 6, 7)fmt.Println("cap of e after:", cap(e))output:cap of e before: 3 cap of e after: 8 为什么容量是8? append了的4个元素&…...
HTTP 协商缓存 Last-Modified,If-Modified-Since
浏览器第一次跟服务器请求一个资源,服务器在返回这个资源的同时,在respone header加上Last-Modified属性(表示这个资源在服务器上的最后修改时间): ----------------------------------------------------------------…...
实测测评|零注册AI PDF翻译工具:保留排版\+OCR无损翻译,替代DeepL/谷歌翻译
在日常开发、学术科研、外文文献研读场景中,PDF翻译一直是高频刚需痛点。市面上主流的翻译工具普遍存在排版错乱、OCR收费、文件大小受限、强制登录注册等问题,尤其是学术论文、带表格/公式的技术手册、扫描版外文资料,翻译后的可用性极差。 …...
从零部署SAM自动标注工具链:模型转换、交互标注与格式实战
1. 环境准备与项目部署 第一次接触SAM自动标注工具时,我被它强大的零样本分割能力震撼到了。这个由Meta开源的Segment Anything Model(SAM)确实改变了传统标注工作的游戏规则。下面我就带大家从零开始搭建整套工具链,过程中会分享…...
别再只用差速轮了!手把手教你为Navigation2仿真打造专属阿克曼底盘模型(附完整URDF/SDF文件)
从差速轮到阿克曼:打造高仿真Navigation2底盘模型的完整指南 在机器人仿真领域,差速轮底盘因其简单可靠而广受欢迎,但真实世界的车辆大多采用阿克曼转向机制。本文将带您深入理解两种模型的本质差异,并手把手指导如何从零构建或改…...
EasyWatermark代码架构详解:MVVM模式与依赖注入实践
EasyWatermark代码架构详解:MVVM模式与依赖注入实践 【免费下载链接】EasyWatermark 🔒 🖼 Securely, easily add a watermark to your sensitive photos. 安全、简单地为你的敏感照片添加水印,防止被人泄露、利用 项目地址: ht…...
Perplexity提示工程精要(2024权威认证版):覆盖92%高频场景的12类黄金模板
更多请点击: https://intelliparadigm.com 第一章:Perplexity提示工程的核心原理与认知框架 Perplexity(困惑度)作为衡量语言模型预测能力的关键指标,其本质是模型对真实文本序列分布的负对数似然指数化表达。在提示工…...
《字节码到JVM:Java基础核心知识点全解析(小林八股·上)》
🔥个人主页:北极的代码(欢迎来访) 🎬作者简介:java后端学习者 ❄️个人专栏:苍穹外卖日记,SSM框架深入,JavaWeb ✨命运的结局尽可永在,不屈的挑战却不可须臾或…...
化工行业节能改造数据监测系统方案
针对工厂存在能源利用不足、设备利用率偏低、人工抄表粗放等痛点,某化工企业通过落实多项节能数字化改造措施,实现变废为宝、节能增效等多种能源效益。主要举措包括:通过回收高温蒸汽驱动闲置汽轮机实现发电、通过回收富余蒸汽为生产提供热源…...
机器学习中的过拟合与欠拟合:如何解决模型泛化问题
在人工智能技术飞速发展的当下,机器学习模型在软件测试领域的应用愈发广泛,从自动化测试用例生成到缺陷预测,再到性能瓶颈分析,都离不开机器学习的助力。然而,模型的泛化能力始终是制约其在实际测试场景中发挥作用的关…...
树莓派I2C保姆级教程:从命令行工具到Python脚本,一次搞定多个传感器(附避坑指南)
树莓派I2C实战指南:从硬件调试到Python自动化控制 第一次接触树莓派的I2C接口时,我对着密密麻麻的引脚和传感器数据手册发呆了半小时。直到成功读取到第一个温湿度数据,才意识到I2C这种看似复杂的通信协议,其实就像一位耐心的翻译…...
推荐五家SF6在线监测报警系统
在有六氟化硫气体存在的场所,如小区配电室、变电站、电厂等,SF6在线监测报警系统起着至关重要的作用。它能实时监测现场气体浓度,在浓度超标时第一时间发出报警信号,及时消除隐患。今天就为大家推荐五家SF6在线监测报警系统品牌&a…...
