по моему, это зря ты отказался заранее от БД, и решил на файлах.
допустим у тебя 1000 сайтов по 20 пользователей он-лайн
это порядка 1333 запросов в секунду.
я конечно не сильно в курсе, насчет высоконагруженных серверных приложений, но полагаю, винчестер будет просто "разрыватся" в таком режиме.
гораздо лучше текущие актуальные данные(переписка за последние 10 минут) хранить в оперативе, ИМХО.
для этого можно использовать несколько инструментов:
1)HEAP-таблицы в MySQL.они хранятся в оперативе
2)в PHP вроде есть встроенные инструменты, для хранения чего-то в общем "хранилище" в оперативе.но, я с этими инструментами не работал, поэтому не уверен, что это то, что я думаю.работает только под никсами
вот
оно(если это не подходит, просьба не пинать)
Если сам скрипт также будет висеть постоянно в оперативе, при помощи Zend-а, это также будет весьма положительно.
грубо говоря в этой системе узкое место-не количество данных, а скорость реакции
вообще-же советую, предварительно сделать тест на своем домвшнем компьтере простейший.
мульти-курлом вполне можно сформировать необходимую нагрузку
на фоне запускаем Системный монитор, либо сторонню утилиту наблюдения за производительностью, и смотрим, что творится с винчестером и прочим.также запрашиваемый скрипт(если это будет скрипт конечно), пускай ведет логи вермени своего выполнения(в разные файлы, для того чтобы не тормозить тест на нежных блокировках)
еще можно почитать статьи о высоконагруженных приложениях
В принципе кратко свои мысли обрисовал.
Если нужны какие-то более подробные советы, можеш стукнуть в аську(в моем профайле указана), при наличии свободной времени, помогу