Я пытаюсь найти лучший способ для посещения журналов с помощью PHP. Сейчас у меня около 3000 запросов в секунду, и я пишу каждый визит в CSV-файл. Мне было интересно, быстрее ли регистрировать каждый визит в памяти, а затем выгружать его в CSV-файл после 100 000 записей? Я проверил shmop
apc
и memcache
но не могу найти подходящее решение.
Лучше всего использовать Lua с разделяемой памятью для хранения записей журнала, а затем создать таймер, который проверяет размер занесенных в журнал записей каждые X секунд и использует со-сокет, чтобы сбрасывать кеш в файл или базу данных sql. Все должны быть неблокирующими. И да, вы можете передать запросы Lua, прежде чем передавать его на PHP. Вы также можете использовать кеширование по умолчанию nginx по умолчанию (буфер) и раздельно обрабатывать журналы.