ファイルを別のftpサイトにアップロードするWindowsサービスがあります。
アップロードを高速化するために、このサービスを 3 台のマシンにインストールしました。次に、3 つのサービスがすべて同じ場所を調べてファイルを取得するため、問題が発生します。同じファイルを取得してから例外がスローされることがあります。
このような状況を回避するにはどうすればよいですか?.net 4.5
with方式で設計されたサービスasync
なので、ファイルロックをかけるとパフォーマンスが遅くなるのでしょうか?このように考えているのですが、
- ディレクトリ内のすべてのファイル名を取得する
- 次に、このコレクションをロックします
- どういうわけか、各サービスが異なるサブコレクションを取得するようにします。たとえば、合計 30 ファイルの場合、各サービスは 10 を取得します。
しかし、方法がわからない。