对于不是专业后端开发的同学来说,服务器运维是一件挺麻烦的事儿。有时候遇到服务器宕机(当然在正式环境中很少出现这种情况),需要启动一些列的服务,比如,tomcat、nginx、redis等等。一个个的手动去打开服务确实效率不高,也挺累人的。这时候就可以借助批处理或者脚本文件,让我们的系统一键启动,一键起飞~
一、创建服务启动脚本
针对单个服务,我们使用批处理文件进行启动。那么我们需要创建一个.bat
文件,并用文本编辑器进行编辑,下面列举了一些常用服务的启动方式。
jar包服务
使用java -jar
命令启动E:\soft
文件夹下的serverapi.jar。
@ECHO ON
E:
cd \soft
start java -jar serverapi.jar
nginx服务
启动E:\nginx-1.16.1
文件夹下的nginx服务。
@ECHO ON
E:
cd \nginx-1.16.1
start nginx.exe
nodejs服务
启动E:\node-media-server文件夹下的app.js。
@ECHO ON
E:
cd \node-media-server
start node app.js
二、使用vbs进行批量启动
创建.vbs
文件并用文本编辑器进行编辑,依次启动上边编写好的.bat
文件。
比如下面,我需要依次启动start-jar.bat
、start-ngnix.bat
、start-nms1.bat
。
Set objShell=CreateObject("Wscript.Shell")
objShell.Run "C:\Users\Administrator\Desktop\one-step-start\start-jar.bat"
objShell.Run "C:\Users\Administrator\Desktop\one-step-start\start-ngnix.bat"
objShell.Run "C:\Users\Administrator\Desktop\one-step-start\start-nms1.bat"
这样在我们需要启动所有服务的时候,只需要双击vbs脚本就可以了。另外,有时候我们还需要让这些服务在服务器开机或重启之后自动进行运行。那么我们可以使用Windows的任务计划程序,进行开机启动设置。
创建开机启动任务
在Windows管理工具
中找到任务计划程序
,在任务计划程序库
中选择新建任务
,对任务的参数进行设置。
设置名称,并选择不管用户是否登录都要运行
。
设置触发器为启动时
,表示服务器启动时执行。启用触发器。
新建操作,并设置为启动程序
,选择创建的vbs脚本程序。
在设置
选项卡中,将停止任务
和强制将其停止
两个选项禁用。
这样在重启服务器时,我们的服务也会自动进行启动了。