sys_getloadavg для MySQL

Есть ли что-то подобное, но для MySQL?

<?php
if (function_exists('sys_getloadavg')) {
    $load = sys_getloadavg();

    if ($load[0] > 60) {
        header('HTTP/1.1 503 Too busy, try again later');
        die('Server too busy. Please try again later.');
    }
}

1 ответ

Решение

Там нет стандартной функции для этого точно.

Итак, ваши варианты:

1) если в Linux: читать из `/proc/loadavg', например:

create table loadavg(l1 int, l2 int, l3 int, entities varchar(100), last_pid int);
[...]
truncate loadavg;
load data infile '/proc/loadavg' into table loadavg fields terminated by ' ';
select l1 from loadavg;

2) написать пользовательскую функцию в C, чтобы получить значение

Я почти уверен, что видел UDF для этого в прошлом, но мои навыки Google не позволяют мне найти его прямо сейчас...

Другие вопросы по тегам