Наше приложение перезаписывает уже существующий ZIP-файл. Почтовый файл доступен для загрузки, для создания ZIP мы используем PHP ZipArchive.Является ли PHP Zip созданием (перезаписыванием) атомной операции?
Теперь вопрос: Нужно ли мне создать ZIP-файл TMP и переименовать его в нужное загружаемое имя файла, чтобы иметь атомную операцию и все время доступа к действительному ZIP-файлу, или это процесс создания ZIP-архива ZipArchive уже атомное?
Редактировать: После тестирования с несколькими вызовами addFile, разделенными на сон, кажется, что файл создается/перезаписывается при последнем закрытии вызова. Но остается вопрос, является ли итоговый файл ZIP-файла атомарным?
Я не знаю, но это может быть проще, чем вы думаете, чтобы проверить (и исправить). Замедлить процесс затирания и попытаться получить доступ к файлу с другой операцией во время zipping; посмотрите, есть ли у вас поврежденный файл. – BeetleJuice
У вас есть окончательно право, но спрашивать быстрее, как тестирование;) Возможно, кто-то это уже знает. Если нет, тестирование будет последним вариантом. –
* «спрашивать быстрее [чем] тестирование» * Это грубо - вы говорите, что ваше время более ценно, чем время тех, кого вы просите помочь. –