Параметры для повышения производительности операций с метаданными SMB при монтировании тома контейнера
Вопрос
Существуют ли какие-либо способы повысить производительность операций с метаданными между контейнером на базе Linux, работающим в Службе приложений Azure, и подключенным томом, размещенным в файлах Azure?
Контекст
Недавно я перенес решение, в котором все было на одном сервере, в решение на базе Azure, где:
- Код выполняется в контейнере, размещенном в Службе приложений Azure.
- Эти файлы, являющиеся частью бизнес-данных, находятся в файлах Azure (т. е. в общей папке учетной записи хранения Azure) или смонтированы в контейнере (через файл службы приложений).
> > раздел).
Это привело к некоторым проблемам с производительностью операций, которые выполняют поиск в папке, чтобы определить, существуют ли определенные файлы. В настоящее время это делается с помощью функции PHP file-exists.
При тестировании на локальном устройстве я могу повысить производительность, добавив
Мой контейнер работает под управлением Linux (
я включил
В настоящее время я думаю, что решением было бы обновить код, чтобы сохранить представление файловой структуры в базе данных приложения, чтобы мы могли запрашивать ее и быстрее получать ту же информацию; но у этого есть обратная сторона: каждая операция по загрузке или удалению файла требует также обновления базы данных, чтобы синхронизировать информацию о диске и базе данных / дублировать места, где хранится информация; поэтому я стремлюсь решить эту проблему с инфраструктурой, а не перекодировать, если это возможно.