两台服务器健康心跳监测php进程并及时短信通知

本文详细描述了如何使用PHP在阿里云服务器上实现客户端(client.php)与服务器(server.php)之间的心跳检测,包括创建套接字、连接、发送心跳消息以及数据库状态记录。客户端会定期检测服务器B的状态并发送报警通知。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、准备

        需要两台服务器,我用的是阿里云的服务器A 和服务器B ,需要监测的是服务器B,所以我在服务器A 创建文件client.php, 在服务器B上面创建文件server.php

#登录服务器A,在服务器上/home/heartbeat下面创建client.php

cd /home/heartbeat
vi client.php
#登录服务器B,在服务器上/home/heartbeat下面创建client.php

cd /home/heartbeat
vi server.php

2、client.php

<?php
$serverB_ip = 'xxx.xxx.xxx.xxx';//阿里云的ip必须用内网ip
$serverB_port = 12344; // 心跳端口号,阿里云需要把安全策略端口开启
echo 'start';
$now = date('Y-m-d H:i:s');

while (true) {
    // 创建客户端套接字
    $clientSocket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);

    // 连接到服务器B
    $result = socket_connect($clientSocket, $serverB_ip, $serverB_port);

    if ($result === false) {
        //通知一次后记录数据库,避免重复通知

        $dbHost = '127.0.0.1';//服务器A
        $dbUser = 'xxxxxx';//服务器A的数据库帐号
        $d
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值