Alternativa correcta (socket daemon)
Hector Salinas
hsalinas en bsf.cl
Vie Ene 23 14:25:34 CLST 2009
Juan Manuel Doren escribió:
> 2009/1/23 Hector Salinas <hsalinas en bsf.cl>:
>> Eduardo Silva escribió:
>>> estas usando clases ???
>>>
>> no. ninguna clase. Además tengo todo
>> bien cerrado al momento de consultar el DBMS y use sus correpondientes
>> unset()
>
> ¿funciones que se llamen a si mismas?
no tengo recursividad
> mysql_free_result() ?
sip lo uso
> mysql_pconnect() ? ( para no tener que reconectar cada vez )
>
no lo estoy usando, uso mysql_connect
pero ahora las ultmas prueba que hice saque el codigo de conexion
al DBMS y solo deje esto
#!/usr/bin/php -q
<?php
set_time_limit (0);
$address = '192.168.1.235';
$port = 5000;
$sock = socket_create(AF_INET, SOCK_STREAM, 0);
socket_set_option($sock, SOL_SOCKET, SO_REUSEADDR, SOL_TCP);
socket_bind($sock, $address, $port) or die('error bind en la ip');
socket_listen($sock);
while (true)
{
$client = socket_accept($sock);
socket_getpeername($client, $ip);
$input = socket_read($client, 10);
echo "\n*******************************";
echo "\nNew client connected: {$ip}";
echo "\nmemoria usada -->".memory_get_usage();
socket_write($client, "A");
unset($client);
unset($input);
$contador++;
}
socket_close($sock);
?>
y mirando la salida y escuando al cliente sale esto, la memoria siempre
va en aumento.
*******************************
New client connected: 192.168.1.170
memoria usada -->40272
*******************************
New client connected: 192.168.1.170
memoria usada -->40320
*******************************
New client connected: 192.168.1.170
memoria usada -->40360
*******************************
New client connected: 192.168.1.170
memoria usada -->40440
*******************************
New client connected: 192.168.1.170
memoria usada -->40480
Más información sobre la lista de distribución Linux