在共享内存中记录访问

时间:2015-05-12 12:41:46

标签: php logging nginx memcached apc

我正在尝试使用PHP找到记录访问的最佳方法。现在我每秒有大约3000个请求,我将每次访问写入CSV文件。我想知道以某种方式记录内存中的每次访问是否更快,然后在100 000条记录之后将其转储到CSV文件?到目前为止,我已经检查了shmop apcmemcache,但找不到合适的解决方案。

1 个答案:

答案 0 :(得分:2)

最好的方法是使用Lua和共享内存来存储日志条目,然后创建一个计时器,每隔X秒检查一次记录条目的大小,并使用协同套接字将缓存转储到文件或sql数据库。应该都是非阻塞的。是的,您可以在将请求传递给PHP之前将请求传递给Lua。 您还可以使用nginx默认日志文件缓存(缓冲区)并单独解析日志。