Jexus进程守护工具jws.guard
一个运行中的进程,难免会因为各种各样的原因无缘无故的宕掉(比如网站瞬间的负载过高、内存不足等),而Jexus宕掉的后果往往只有一个:对外提供服务的网站无法访问了。因此,我们需要最大限度的保障我们的网站能够提供7*24小时的不间断访问,而一个网站或者一个进程宕掉的过程是瞬间的,也许前一秒还访问得好好的,下一秒就突然间报个404的错误,而从网站或进程挂掉到我们人工的发现并重启服务的过程是漫长的,除非该网站有应对单点故障的解决方案,否则在这漫长的时间之中,网站都处于一个无法访问的黑色时期。如果这个宕掉的网站是一个企业网站,这会造成企业信誉度的下降;如果是一个商城网站,这会造成经济和人气的损失;因此,我们需要让系统能够自动的检测出网站的运行状态,当出现进程服务死机的时候能够自动重启。
jws.guard的是一个python的脚本,工作原理也比较简单:根据设置好的预设值,每隔十秒钟访问一次访问一次指定的端口与文件,当三十秒内出现无法网站时就执行jws.restart进行重启网站。这里的三十秒指的是累计连续三次无法访问,防止因为检测时因为Jexus正忙而误判断重启,对网站进行误伤。
jws.guard的使用方法也比较简单,只要把 “tools/jws_guard” 目录中的 “guard.py” 和 “jws.guard” 两个脚本文件拷贝到Jexus的工作目录(跟jws.start同一目录),然后配置一下jws.guard 中的预设值即可。
我们首先把这两个文件拷贝出去
cd /usr/local/jexus/tools/jws_guard/
cp jws.guard guard.py /usr/local/jexus/
cd /usr/local/jexus/
我们已经把这两个脚本拷贝到工作目录中。
用vi打开并编辑jws.guard
把host、port、path改为我们需要的配置即可,它们分别代表主机地址,端口,检查的路径。一般情况下,如果Jexus采用80端口,这里可以不作修改直接使用,而如果Jexus采用的不是80端口,也只需要修改port,改为正确的端口并保存退出就可以了。host和path一般是不需要修改的,同时也不建议非必要的修改,因为修改jws.guard必须确保修改后修改的配置项是正确的,否则jws.guard就会因为无法访问配置后的网站而反复的重启Jexus,造成不必要的麻烦。
修改好了之后只需要执行./jws.guard即可启动这款Jexus的进程守护工具。
我们尝试性的把Jexus关掉。
……30秒之后……
Jexus又起来了。
通过jws.guard守护守护工具,我们可以很方便的让系统自动的发现Jexus进程宕机并快速的重启进程。同时我们只需要查阅Jexus的运行日志即可发现问题所在。
这里有三点需要提醒的:
(1)、如果需要关闭Jexus服务30秒以上的,请在关闭Jexus之前先执行./jws.guard stopg关闭jws.guard守护工具,以免守护工具自动的把Jexus又启动了起来。
(2)、jws.guard是使用python语言编写的脚本,需要运行该工具时请确保系统中已经安装了python,检查方式可以执行 python -V ,如果没有出现python的版本信息则说明系统中没有安装python,这是,各位读者可以通过yum或者其他方式安装上python之后再运行jws.guard。
(3)、再啰嗦一次,配置jws.guard时请确保配置的值是正确的。
新版的Jexus的稳定性已经非常强,加上jws.guard可以起到加固作用。
好的,至此Jexus的守护工具jws.guard就已经介绍完毕了。
Jexus进程守护工具jws.guard的更多相关文章
- 开发日记:Windows进程守护工具
近期,中心应用服务无故关闭.在检查系统和应用程序日志无果后采取了进程守护的方法.测试期内,脚本未出现系统资源占用过多的情况. 使用说明:1.进程守护.vbs 使用时需修改运行周期(10行).守护进程 ...
- Supervisor进程守护工具的使用
Supervisor是一个 Python 开发的 client/server 系统,可以管理和监控类 UNIX 操作系统上面的进程. 官网:http://supervisord.org/ G ...
- python开发 *进程数据隔离.守护进程,进程同步工具 * 180725
进程数据隔离.守护进程,进程同步工具 一.进程之间的数据隔离: from multiprocessing import Process n=100 #主程序中变量n= def func(): glob ...
- Python 进程管理工具 Supervisor 使用教程
Supervisor 是基于 Python 的进程管理工具,只能运行在 Unix-Like 的系统上,也就是无法运行在 Windows 上.Supervisor 官方版目前只能运行在 Python 2 ...
- Supervisor安装与配置(Linux/Unix进程管理工具)
原文链接:http://blog.csdn.net/xyang81/article/details/51555473 Supervisor(http://supervisord.org/)是用Pyth ...
- Supervisor(Linux/Unix进程管理工具)安装与配置
参考链接:https://blog.csdn.net/xyang81/article/details/51555473 Supervisor(http://supervisord.org/)是用Pyt ...
- Supervisor 进程管理工具
简介: Supervisor 进程管理工具 一.安装 shell > yum -y install python-pip shell > pip install supervisor # ...
- supervisor - Python进程管理工具(转)
add by zhj: 下面是在ubuntu上的一些使用经验 1. 简介 supervisor有两个组件:supervisord和supervisorctl,组成了client/server结构. s ...
- Supervisor-类unix系统下的进程控制工具
如果你的英文足够好,请看官网的文档:http://supervisord.org/introduction.html 简介: Supervisor 类unix系统下的进程控制工具. 特性: 1.配置简 ...
随机推荐
- edis.clients.jedis.exceptions.JedisDataException: MISCONF Redis is configured to save RDB snapshots,
edis.clients.jedis.exceptions.JedisDataException: MISCONF Redis is configured to save RDB snapshots ...
- D3 data()
与datum()的区别 假设要绑定的数组为[3,6,9],那么我们希望第一个p元素绑定3,第二个绑定6,第三个绑定9.这种情况就需要使用data()函数,如果使用datum(),则会将数组本身绑定到各 ...
- [翻译]Writing Custom Report Components 编写自定义报表组件
摘要:简单介绍了如何编写一个FastReport的组件,并且注册到FastReport中使用. Writing Custom Report Components 编写自定义报表组件 FastRep ...
- Android-FileUtils工具类
文件相关工具类 public final class FileUtils { private FileUtils() { throw new UnsupportedOperationException ...
- Android-快速查找索引篇
01.Android-UI汇总 01.Android-TextView跑马灯效果 02.Android-Activity 01.Test 03.Android-数据存储 01.Test 04.Andr ...
- java程序练习
数组求和作业 开发环境:java 工具:eclipse 两种数据类型excel和csv 在同学建议下,我选择用csv文件打开,这就引来了第一个问题,在java中如何调用csv文件.以下是我百度的结果 ...
- apache mpm的一些问题
win2003系统下apache环境,mpm_winnt.c模式,优化参数: ThreadsPerChild 说明:每个子进程建立的线程数,默认值:64,最大值:1920.网上查询资料建议设置在100 ...
- 如何在TortoiseGit中使用ssh-keygen生成的key
再windows 用TortoiseGit 时,git clone 项目时 提示 "Couldn't load this key (OpenSSH SSH-2 private key),如下 ...
- DOS文件操作命令
内部命令 COPY---文件固执命令 格式:COPY [源盘:][路径]<源文件名> [目标盘][路径]<目标文件名> 拷贝一个或多个文件到指定盘上 1)COPY是文件对文件的 ...
- vue 生命周期 笔记
生命周期:一个组件从创建到销毁的这个过程叫做生命周期 生命周期钩子函数 1.组件从创建到销毁的过程 1.创建前 创建后 2.挂载前 挂载后 3.更新前 更新后 4.销毁前 销毁后 beforeCr ...