Подумал тут об игровой статистике. Существуют разные способы
1. Стандартный CSX с записями в бинарный файл. Минусы в разрастании количества данных, и отображением на веб части. Можно конешно кроном раз в сутку подтягивать и синхронихировать. Но мне как то не очень нравится такой подход
2. Как делаю HLStats и психостатс. По сути они RCON-ом исполняют команду logaddress_add и слушают UDP в оторый прилетают все логы. Минусы для меня то парсинг строк. Очень не дешевая операция. Ну и еще шанс что коннект отвалится, или например какие то логы потерялись по пути к демону (UDP не гарантирует доставку). Хотя вроде как пользователи не жалуються. Плюсы в том, что все данные всегда в реальном времени
3. Запросы к БД через плагин. Что то среднее между первими двумя способами, Пример статистики от serfreeman1337, неугомон, скальпель. Минусы: данные поступают с опозданием, сложно организировать получение TOP15 (на любую команду отсылать запрос такое себе занятие), на дешевих хостингах легко упереться в лимит одновременных коннектов к базе.
Стоит отметить что отображение статистики в реальном времени по больщому счету мало кому нужно. По моим наблюдениям большинство игроков вообше не вкурсе о существовании веб версии. Еще половина вообше не смотрят на статистику. Им достаточно позиции в топе которая выводиться в чате в начале раунда на многих серверах. И еще какая то часть интересуется скилом который выводится в информере AES (или альтернативы). Но все же мы стремимся к лучшему.
Потому в идеале если была бы возможность запускать демоны, то ИМХО лучше всего держать сокет соединение с демоном и в реальном времени обмениваться информацией. А также вместо mysql выбрать какую нибуть NoSQL которая имеет минимальные задержкы при вставке (MongoDB как пример). И конешно при потери соединения с демоном делать временную запись в файлик, данные из которого потом можна отправить при успешном поторном коннекте. И разумеется протокол желательно TCP чтобы гарантировать успешную доставку.