私のアプリケーションでは、curl.exeを外部コマンドとして実行して、FTPフォルダからファイルのリストを取得しています。私は複数のフォルダをリストにスキャンする必要がありますので、このコマンドを複数回呼び出してファイルリストをローカルディレクトリに出力しています。Curl FTP接続プール
カールftp://my-ip:port/path/1234/ --userユーザ名:パスワード--list-のみ -o C:\ localfolder。ここ\ 1234.txt
カールftp://my-ip:port/path/8910/ --userユーザ名:パスワード--list-のみ -o C:\ localfolder \ 8910.txt
したがって、各ディレクトリに1つのファイルがあります。必要なすべてのディレクトリのファイルを一覧表示するためにワイルドカードパターンを使用することはできません。パターンはなく、ランダムな整数だけです。
ほとんどの場合、私は200人のディレクターをスキャンする必要がありますが、場合によっては数千人から9000人(最大)です。私はそれが何の問題もなく完璧に働いているので、問題はありません。極端な場合を除いて、私はネットワークの不具合のために1つまたは2つのディレクトリからリストを取得しません。
今、私は最適化を考えています。ここで2つの最適化を行うことができます
私のアプリケーションレベルの最適化:curl.exeを何度も呼び出すのではなく、複数の呼び出しでダイナミックなbatファイルを作成して、アプリケーションで呼び出すことができます。実際のカールコール。
カール接続プーリング
:これcurl.exeで可能であるならば、私が見ているものです私はいつか前にどこかで読んそのカールライブラリPHPのように、接続プーリングをサポートしているが、私はカールの実行は、その能力を持っているかどうかわからないです。この機能を利用できるのであれば、パフォーマンスが向上する可能性があります。