Перечисление имен файлов происходит очень медленно при монтировании модуля K8s smb.C#

Место общения программистов C#
Ответить
Anonymous
 Перечисление имен файлов происходит очень медленно при монтировании модуля K8s smb.

Сообщение Anonymous »

У меня есть модуль, работающий с общим файловым ресурсом Windows при монтировании smb. PV смонтирован со следующими параметрами:
csi:
driver: smb.csi.k8s.io
accessModes:
  • ReadWriteMany
    claimRef:
    вид: PersistentVolumeClaim
    пространство имен: test
    имя: test-pvc
    apiversion: v1
    persistentVolumeReclaimPolicy: Retain
    storageClassName: smb
    mountOptions:
  • vers=3.1.1
  • dir_mode= 0777
  • file_mode=0777
  • uid=1001
  • gid=1001
  • noprem
  • mysymlinks
  • casche=restrict
  • noserverino
  • actimeo=1
  • rsize=1048576
  • wsize=1048576
  • nobrl
  • noshareshock
    volumeMode: Filesystem
Когда я перечисляю смонтированные папка, чтобы найти файлы dll, в Pod это занимает более 30 минут, а в моем local. Я использую следующий код C# для вывода списка имен файлов:
var files = Directory.EnumerateFiles("\mnt\test","*.dll", SearchOption.AllDirectories)

Я пробовал изменить параметры монтирования, но до сих пор ничего не получалось. Однако когда я выполняю сценарий Powershell для вывода списка того же набора файлов с помощью Cli.Wrap(), в модуле Pod это занимает секунду или две. Не знаю, почему код C# работает так медленно, тогда как Powershell так хорошо работает в модуле Pod с тем же смонтированным общим ресурсом. Мне нужно, чтобы опция С# работала. Любая помощь приветствуется.

Я попробовал изменить mountOptions и вместо этого использовал GetFiles(), но заметил ту же медлительность.

Подробнее здесь: https://stackoverflow.com/questions/791 ... -smb-mount
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»