zoukankan      html  css  js  c++  java
  • Swoole 心跳检测

    Swoole的心跳检测特别简单,只需要配置 heartbeat_check_interval,heartbeat_idle_time就可以了。

    heartbeat_check_interval:表示服务器隔几秒检测超时。要小于heartbeat_idle_time。

    heartbeat_idle_time 表示超多少时间就会断开

    示例代码演示了,5s检测,如果有10s内未向服务器端发送数据,将会被切断

    <?php
    date_default_timezone_set('Asia/Shanghai');
    //创建Server对象,监听 127.0.0.1:9501端口
    $serv = new swoole_server("127.0.0.1", 9501);
    
    $serv->set([
        'heartbeat_check_interval' => 5,
        'heartbeat_idle_time' => 10,
    ]);
    
    //监听连接进入事件
    $serv->on('connect', function ($serv, $fd) {
        echo "[".date('Y-m-d H:i:s')."]Client: Connect.
    ";
    });
    
    //监听数据接收事件
    $serv->on('receive', function ($serv, $fd, $from_id, $data) {
        $serv->send($fd, "[".date('Y-m-d H:i:s')."]Server: ".$data);
    });
    
    //监听连接关闭事件
    $serv->on('close', function ($serv, $fd) {
        echo "[".date('Y-m-d H:i:s')."]Client: Close.
    ";
    });
    
    //启动服务器
    $serv->start();

    cli端开启服务。

    客户端访问

    客户端先发一个请求,时间是2018-08-23 11:39:23,后面就不发了

    服务端在2018-08-23 11:39:33 就断开了客户端的连接。刚好是10s

  • 相关阅读:
    初识JSP知识
    Session每次访问都回新建对象问题的处理
    C++ 重载中括号
    C++ 重载输出符号
    C++ 单目运算 and 双目运算符重载complex
    C++运算符重载范例
    c++ 运算符重载之成员函数重载
    c++ 友元函数
    c++ static 类
    c++ const 类
  • 原文地址:https://www.cnblogs.com/gavinjunftd/p/9522922.html
Copyright © 2011-2022 走看看