同時FTPアクセス


8

FTPサーバーは、同じファイルへの同時アクセスをどのように処理しますか。つまり、あるユーザーがファイルを更新している間に別のユーザーが同じファイルを読んでいる場合はどうでしょうか。データの破損を心配する必要がありますか?FTPサーバーやオペレーティングシステムに依存していますか?

回答:


2

FTPサーバー自体はこれを処理しないと思います。
基礎となるファイルシステムは、ここに含まれるアクセスを管理します。

読み取りが書き込みの前に始まる場合、読み取りは通常、古いバージョンを取得します。


上書きされるファイルのサーバーファイルシステムの処理に基づいて、この質問に対する回答を得る必要があります。


1

FTPの実装はこれを処理しないだけだと思います。OSはその方法によって異なり、Windowsがファイルをロックする可能性があり、Linuxは部分的なデータを提供します。

はい、特に使用率が高い場合は心配する必要があります。私が過去に見つけたソリューションは、アップロード/ダウンロード用のさまざまなフォルダーと、ファイルが完全にアップロードされたときにアップロードからダウンロードにコピーする監視プロセスを含む、せいぜい大ざっぱなものでした。

これは、ファイルが長くなったり、ユーザーが低速の接続からアップロードしたりすると悪化します。


0

私はあなたが問題を抱えている可能性があると確信しています。これを試して:

FTPサーバーへの大きなファイルのアップロードを開始します。アップロード先のフォルダーのビューを更新すると、ファイルサイズが増加し、アップロードが進行することがわかります。

これを.mp3ファイルで試してみます。ブラウザからアクセスして、現在アップロードされているポイントまでしか再生されないことがわかります。

これが、Dreamweaverなどのプログラムにチェックイン/チェックアウトシステムがある理由です。そのため、誰かが.htmlファイルで作業している場合、他の誰かが古いバージョンをアップロードしたり、そのような問題を引き起こしたりすることはできません。

FTPはどんな種類の一時ファイルもキューイングも使用しないと思います...


正しい。実際に転送されなかったファイルを一度解凍しました。もちろん、奇妙なエラーメッセージ...
Arjan

既存のファイルの更新は、新しいファイルの作成とは異なると思います(読み取りは、作成が行われる前に開始されず、その後、書き込みに従います)。読み取りが書き込みを超えて競合する場合、読み取りが不完全に終了します。不完全なZIPファイルは破損を示します。不完全なmp3は破損の最初のポイントまで再生されます(私は思う)。それがファイル形式の違いです。
nik

既存のファイルの変更/上書きは、進行中の読み取りを識別し、新しいバージョンを作成して、読み取りが完了するまで古いバージョンを保持する必要があります。そのため、このような場合、典型的なファイルシステムではファイルの古いコピーが提供されると私は答えます。
nik

0

まだアップロードしていないページにアクセスしようとすると、「読み込み中に接続がリセットされました」というメッセージが表示されます。でも、それはソフトウェア次第だと思います。


-1

この場合、リビジョン管理ソフトウェアを使用すると役立ちます。GitSVNを見てください。2つの主要なタイプ(集中型と分散型)と、これら2つに加えて他の多くのアプリケーションがあることに注意してください。


この回答は、質問とはまったく関係ありません...
クリスティアン

これらのシステムでの操作はアトミックであるため、不完全なファイルを取得する方法はなく、問題は解決されています。
Shadok、2011

はい、わかりましたが、質問は具体的にはFTPサーバーに関するものでした
Kristian
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.