项目正式——服务程序的监控和调度




public/tools/procctl.cpp(项目的通用工具目录)的服务程序调度
主要用来调度测试程序和清理压缩

利用ps -ef检测和kill杀死来检测
服务程序的监控和调度-进程的心跳


进程心跳在模块直接快捷调用
善用查看共享内存和 ipcs -m,以及杀死程序进行测试
加锁和复用进程id 使用信号量加解锁 这个进程心跳的代码需要做成通用的类
server.cpp是没封装过的在demo1中
服务程序的监控和调度-守护模块

在checkpro中

前面知识负责删除进程退出或者异常退出的心跳信息,虽然有更新心跳信息但是没有负责检车心跳信息是否过时决定杀死进程
使用demo2封装的心跳类
调度模块参数没填错就能调用,守护模块则需要记录日志
服务程序的监控和调度-运行策略

在生成测试数据的代码中用调度启动,加入心跳,额外来说不需要更新时间因为程序运行时间很短。
强制杀死使用 kill -9
服务程序太多,即使里面的命令一块运行看了心跳和调度,所以使用sh脚本文件来方便运行



该目录下的进程都如期运行
另外停止程序

常驻内存的命令才有机会指向sh,而短时间的没机会,如果这个短时间程序出现错误先让他准备,否则强制退出(为什么不适应守护?)因为守护程序主要用来检测所有的,而不是单一

在操作系统启动时就使用,守护进程没有重启的必要,守护进程只需要一个,普通人不需要
开机如图

两个小工具-清理文件


用来清理数据测试数据的文件
这里参数不会错误就没有必要写日志了,除非对于这些蛛丝马迹要严格


有点可以只删除不压缩,有的最好只压缩不删除,比如观测数据过期没用需要删除,而日志很重要需要压缩以便存储更多

浙公网安备 33010602011771号