Часть моего последнего веб-приложения должна записывать в файл с достаточной суммой как часть его ведения журнала. Одна из проблем, которую я заметил, заключается в том, что если есть несколько одновременных пользователей, записи могут переписывать друг друга (вместо добавления в файл). Я предполагаю, что это из-за того, что файл назначения может быть открыт в нескольких местах одновременно.Блокировка файлов NFS в PHP
flock(...)
обычно превосходный, но он не работает на NFS ... Это огромная проблема для меня, поскольку производственный сервер использует массив NFS.
Самое близкое, что я видел к реальному решению, заключается в попытке создать блокирующий диск и ждать, пока он не будет создан. Сказать, что это недостаток элегантности, - это преуменьшение года, возможно, десятилетия.
Любые лучшие идеи?
Редактировать: Я должен добавить, что у меня нет корня на сервере, а хранение по-другому не всегда возможно в ближайшее время, не в последнюю очередь в пределах моего срока.
На данный момент это будет хорошо, но как только это закончится разработкой, оно будет развернуто на нескольких виртуальных серверах для балансировки нагрузки, и это запустит гаечный ключ [buther] в работах. – Oli 2008-10-20 13:43:57