ArMellon
Guest
Список пользователей в чате
сделал чат на пхп, но есть одна проблема:
есть файл в котором храню
список пользователей находящихся в данный момент с чате такой строкой:
"ИмяЮзера|IDЮзера|Время последнего обновления фрейма юзера"
время последнего обновления нужно чтобы выявлять "пропавших" пользователей.
Так вот при кол-ве юзверей(10-15,обновление раз в 2 сек.для теста) чат начинает глючить,видимо слишком долго обрабатывается этот файл, чат начинает бешено писать Юзверь пропал/зашел.
flock использую.
ф-цию file заменил своей:
Что еще можно придумать?
использовать базу данных не получится.
сделал чат на пхп, но есть одна проблема:
есть файл в котором храню
список пользователей находящихся в данный момент с чате такой строкой:
"ИмяЮзера|IDЮзера|Время последнего обновления фрейма юзера"
время последнего обновления нужно чтобы выявлять "пропавших" пользователей.
Так вот при кол-ве юзверей(10-15,обновление раз в 2 сек.для теста) чат начинает глючить,видимо слишком долго обрабатывается этот файл, чат начинает бешено писать Юзверь пропал/зашел.
flock использую.
ф-цию file заменил своей:
PHP:
function file_o($filename){
if (!file_exists($filename)) return null;
$fh=fopen($filename,'r');
flock($fh,LOCK_EX);
fseek($fh,0);
if (filesize($filename)>0){
$result =explode("\n",fread($fh,filesize($filename)));
if ($result[count($result)-1]=="")
array_pop($result);
}
flock($fh,LOCK_UN);
fclose($fh);
return $result;
}
использовать базу данных не получится.