La idea que he tenido a sido que en vez de eso, solo se ejecute esa consulta si hay un nuevo mensaje en el mismo minuto. La duda ahora es... ¿Como puedo hacer que la consulta se ejecute cada segundo?
Se que esto seguirá gastando recursos, pero no tantos y además, hace más fácil a los usuarios leer los mensajes antiguos.
El código que tengo sería este:
Código PHP:
<?
$fechach=date("d-m-y H:i");
$chatsnuv = mysql_query("SELECT * FROM chats WHERE fecha='$fechach'") ;
$cchatsnuv = mysql_num_rows($chatsnuv);
if($cchatsnuv!='0'){
?>
$('.chats').load('../core/load/chat.php');$('.chatsc').slimScroll({scrollTo : '2000000px', alwaysVisible: false});
<?
}
?>
Lo solucioné de otra forma, aunque no resuelve el caso de los recursos, pero he hecho que cada segundo se cargue el archivo chat.php y en este haya un condicional, si hay mensaje nuevo, este baja hacie abajo y muestra mensajes, si no, solo muestra mensajes por lo que el usuario a simple vista no notará la carga del archivo.