Paramiko stdout.readlines() 太慢了

Paramiko stdout.readlines() is too slow

我在 Python 和 Django 代码中使用 Paramiko 来执行命令。这是我的代码:

client = SSHClient()
client.set_missing_host_key_policy(AutoAddPolicy())
client.connect(<host>, username=<username>, password=<password>)
            
stdin, stdout, stderr =
    client.exec_command("curl -X POST http://127.0.0.1:8080/predictions -T image.jpg")
lines = stdout.readlines()

stdout.readlines()每条命令的执行时间为0.59s。对于我的接近实时的系统来说,这是不可接受的时间。任何人都可以提出任何建议来加快阅读过程吗?

SSHClient.exec_command只启动命令。它不会等待命令完成。这就是 readlines 所做的。所以 readlines 需要的时间与命令执行的时间一样长。


强制性警告:请勿使用 AutoAddPolicy – 您将失去对 MITM attacks by doing so. For a correct solution, see Paramiko "Unknown Server".

的保护