У меня есть стороннее приложение, которое читает несколько больших файлов и генерирует третий большой файл. Его производительность довольно хороша, когда сгенерированный файл хранится в «локальном хранилище», то есть на диске с прямым подключением или на диске iSCSI. Считываемые исходные файлы могут храниться удаленно на нашем NAS, и к ним можно получить доступ через SMB, практически не влияя на производительность.
Однако, если мы попытаемся записать целевой файл в любой общий ресурс SMB / CIFS (Samba или Windows Server), производительность упадет почти в десять раз. В нашем случае это недопустимо медленно.
В остальном запись файлов в общие сетевые ресурсы не является медленной. Я могу копировать большие файлы в общие ресурсы SMB и получать отличную производительность - почти то, что я ожидал, это возможно с учетом рассматриваемых дисков и сети.
У меня есть теория, что проблема этого приложения с общими ресурсами SMB как-то связана с отсутствием кэширования записи по общему ресурсу и, возможно, большим количеством сетевых соединений. Возможно ли это, и можно ли что-нибудь с этим поделать?