Я пишу приложение, которое должно будет разархивировать загруженные пользователем архивы. PHP предоставляет класс ZipArchive, но также должна быть возможность разархивировать с помощью unzip через exec(), мой вопрос: что предпочтительнее с точки зрения производительности и масштабирования?
разархивируется через ZipArchive быстрее, чем с помощью exec() в php?
comment
Один использует напрямую связанную библиотеку, другой вызывает внешний двоичный файл (через новую оболочку), который должен загрузиться, выполниться, а затем выйти. Как вы думаете, что будет быстрее? :)
- person Brian Roach   schedule 20.04.2010
Ответы (1)
Если вы используете php, я думаю, это будет онлайн-приложение.
Как намекнул Брайан, библиотека, скорее всего, будет быстрее, поскольку у нее гораздо меньше работы.
С другой стороны, если вы действительно хотите знать наверняка, просто попробуйте. Такие вещи, как параметры компиляции для ZipArchive и распаковка двоичных файлов, могут иметь большое значение.
Вы также должны рассматривать распаковку как фоновую задачу с некоторым ajax, чтобы предупредить, когда это будет сделано, поскольку распаковка может быть долгой задачей.
person
kriss
schedule
20.04.2010
спасибо за предложения, обязательно попробую оба варианта с разными настройками.
- person Bala Clark; 21.04.2010