Server->stats
最后更新于:2022-04-02 06:20:41
# Server->stats
[TOC]
得到当前`Server`的活动`TCP`连接数,启动时间,`accpet/close`的总次数等信息。
~~~
array Server->stats();
~~~
返回的结果数组示例:
~~~
array (
'start_time' => 1409831644,
'connection_num' => 1,
'accept_count' => 1,
'close_count' => 0,
);
~~~
* `start_time`服务器启动的时间
* `connection_num`当前连接的数量
* `accept_count`接受了多少个连接
* `close_count`关闭的连接数量
* `tasking_num`当前正在排队的任务数
> `stats()`方法在`1.7.5`后可用
## 请求数量
* `request_count`:`Server`收到的请求次数
* `worker_request_count`: 当前`Worker`进程收到的请求次数
* `worker_dispatch_count`:`master`进程向当前`Worker`进程投递任务的计数,在`master`进程进行`dispatch`时增加计数
> 只有`onReceive`、`onMessage`、`onRequset`、`onPacket`四种数据请求计算`request_count`
> `max_request`参数受到此计数器影响,在`worker_request_count`超过`max_request`时工作进程将退出
> `worker_dispatch_count`在`4.3.0`或更高版本可用
## 消息队列状态
`1.8.5`版本增加了`Task`消息队列的统计数据。
~~~
array (
'task_queue_num' => 10,
'task_queue_bytes' => 65536,
);
~~~
* `task_queue_num`消息队列中的`task`数量
* `task_queue_bytes`消息队列的内存占用字节数
## 协程相关
~~~
array (
'coroutine_num' => 10,
);
~~~
* 当前协程数量`coroutine_num`
';