Сценарий Python очень медленный в удаленном каталоге
У меня проблемы с запуском моей немного сложной программы на python в удаленном каталоге, смонтированном по SSHFS. Импорт выполняется в течение нескольких секунд при выполнении в удаленном каталоге и доли секунды в локальном каталоге. Программа не должна иметь доступа к чему-либо в удаленном каталоге самостоятельно, особенно на этапе импорта.
По умолчанию существует текущий (удаленный) каталог I sys.path, но когда я удаляю его перед (другим) импортом, скорость не меняется. Я подтвердил с питоном -vv
что этот удаленный каталог не доступен в процессе поиска модулей. Тем не менее, я вижу стабильный поток некоторых данных из сети с помощью внешнего сетевого монитора на этапе импорта.
Более того, я не могу точно определить, что именно он делает, занимая большую часть времени. Кажется, это происходит после завершения одного импорта, согласно моим простым распечаткам, и до запуска следующего импорта...
Я использую Fedora 25 Linux
1 ответ
В моем случае это был импорт библиотек Cern ROOT. При импорте они смотрят в текущий каталог, что бы я ни делал. Таким образом, решение заключается в
- сохранить текущий каталог
- перейдите в какой-нибудь действительно локальный каталог, например, "/" или "/home" перед импортом
- вернуться в сохраненный каталог после импорта