平面文件的读取并发几乎是无限的(如果我错了,请纠正我);但是写的并发性如何?考虑在 PHP 中编写一个简单的访问日志(用于访问),以附加一行以结尾的访问详细信息\n
fopen(); // in append mode
fwrite();
fclose();
由于我们有并发访问者,系统(一个用户是 wbserver/php 用户)如何同时写入视图日志?
我的困惑是:该函数file_put_contents()
(它是上述三个函数的包装器)有一个锁定选项(LOCK_EX
)?使用此锁定选项是否有益?这将如何影响日志写入?
更新:我的问题是关于LOCK
ing 最初是如何工作/影响将日志写入文件的。我不比较file_put_contents
and fwrite
; 甚至我的问题也不限于PHP
. 问题是关于在写入过程中锁定文件。