我正在尝试使用PHP找到记录访问的最佳方法。现在我每秒有大约3000个请求,我将每次访问写入CSV文件。我想知道以某种方式记录内存中的每次访问是否更快,然后在100 000条记录之后将其转储到CSV文件?到目前为止,我已经检查了shmop
apc
和memcache
,但找不到合适的解决方案。
答案 0 :(得分:2)
最好的方法是使用Lua和共享内存来存储日志条目,然后创建一个计时器,每隔X秒检查一次记录条目的大小,并使用协同套接字将缓存转储到文件或sql数据库。应该都是非阻塞的。是的,您可以在将请求传递给PHP之前将请求传递给Lua。 您还可以使用nginx默认日志文件缓存(缓冲区)并单独解析日志。