FadeOut
FadeOut

Reputation: 35

sys_getloadavg for MySQL

Is there something like this, but for 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.');
    }
}

Upvotes: 0

Views: 231

Answers (1)

Hartmut Holzgraefe
Hartmut Holzgraefe

Reputation: 2765

There's no standard function for that for sure.

So your options are:

1) if on linux: read from `/proc/loadavg', e.g.:

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) write a User Defined Function in C to retrieve the value

I'm pretty sure I've seen a UDF for this in the past, but my Google skills fail me in finding it again right now ...

Upvotes: 0

Related Questions