有关检测Linux上程序运行状态的问题

jacklee19822001 2006-04-25 08:05:43
现在再编一个软件,该软件运行于一台Linux的服务器上,该软件负责在适当的时候启动另外一台装有Linux的服务器上的一个软件(该软件为一个轨道计算软件,计算量很大,要求的运行时间也很长),然后要监视这个软件是否正常运行,一旦发现这个软件死掉(不再正常计算了或其他什么不正常的情况),就杀掉这个进程,并重新启动该软件

两台服务器都是Linux的,通过网线连在一个局域网内

请大侠们说说有什么编程方案可以完成这个软件的功能?
...全文
405 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
rexking0 2006-05-24
  • 打赏
  • 举报
回复
搞一个硬件watchdog不就得了。
jacklee19822001 2006-05-24
  • 打赏
  • 举报
回复
心跳方式是什么?
bluedreammer 2006-05-24
  • 打赏
  • 举报
回复
不知道可否两端建立socket,服务器端定时监测客户端socket发回的状态信息。
lbaby 2006-05-20
  • 打赏
  • 举报
回复
买个吧
一般厂家都有的
teal 2006-05-15
  • 打赏
  • 举报
回复
RPC协议需要在原来的程序中插入相关的RPC 服务端才可以用吧.
我觉得要捕捉一个程序的运行状况,就要知道这个程序的运行特征.比如说输出特征. 然后写一个程序来检查特征是否正常, 当然这个不能完全管用因为正常中的异常也是正常的。
至于采用如何通讯,应该是比较常规的。启动和关闭进程也是很简单的事情。
wenuy 2006-05-15
  • 打赏
  • 举报
回复
按我现在的服务器就是运行服务那台机器
写一个监控脚本,对那个服务进行监控,并把信息按时间写在一个文本或者数据库里边去
而且可以用这个监控对服务进行重起动作
另一台机器只是对这个监控信息进行获取,基本上没有多大作用
如果想做热备的话,可以采用心跳方式看看
LDD123 2006-05-15
  • 打赏
  • 举报
回复
服务器用ssh ps监视客户端是否运行正常,如果不正常再用ssh重启你的程序。
jacklee19822001 2006-05-14
  • 打赏
  • 举报
回复
fierygnu(va_list)能否具体讲一下
iisbsd 2006-04-26
  • 打赏
  • 举报
回复
支持x86(大雪) 用ssh。
x86 2006-04-26
  • 打赏
  • 举报
回复
同楼上。
平时我用的ssh,配置好key后(大致是把server的public key复制到~/.ssh/authorized_keys2里面),然后就可以运行远端命令而不用输密码,像这样:
ssh 192.168.1.1 ls /
fierygnu 2006-04-26
  • 打赏
  • 举报
回复
不需要编程,直接rsh执行就可以了。
sourceid 2006-04-26
  • 打赏
  • 举报
回复
写client-server方式,
服务器每隔一段时间向客户端查询该进程状态,客户端把该进程状态传送到
服务端,服务端分析判断,发出指令到客户端,客户端执行指令.
fierygnu 2006-04-26
  • 打赏
  • 举报
回复
那就RPC协议。
jacklee19822001 2006-04-26
  • 打赏
  • 举报
回复
用脚本实现时一个方法
但是这个功能只是软件的一部分,要集成到大的软件中去,所以希望还是用编程的方式来解决。还有就是被监视的软件基本上是不可能再修改的了
kingofworl 2006-04-25
  • 打赏
  • 举报
回复
写一个脚本 用 telnet 连接 ,然后ps 进程 或者监视那个程序的日志 然后处理
这样行吗

23,218

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧