Jednoczesny dostęp do FTP

8

W jaki sposób serwery FTP obsługują równoczesny dostęp do tego samego pliku, tj. Jeśli jeden użytkownik aktualizuje plik, a inny czyta ten sam plik? Czy powinienem martwić się o uszkodzenie danych? Czy to zależy od serwera FTP, a nawet systemu operacyjnego?

Kristian
źródło

Odpowiedzi:

2

Myślę, że sam serwer FTP tego nie obsługuje.
Podstawowy system plików będzie zarządzał dostępami tutaj zaangażowanymi.

Jeśli odczyt rozpoczyna się przed zapisem, zwykle otrzymuje starszą wersję.

Należy uzyskać odpowiedź na to pytanie w oparciu o
obsługę systemu plików serwera dla zastępowanego pliku.

nik
źródło
1

Myślę, że implementacje FTP po prostu nie radzą sobie z tym, a system operacyjny będzie się różnił w zależności od sposobu, Windows może zablokować plik, Linux poda częściowe dane.

Tak, powinieneś się martwić, szczególnie przy dużym użyciu. Rozwiązania, które znalazłem w przeszłości, były co najwyżej szkicowe, w tym różne foldery do przesyłania / pobierania i proces monitorowania kopiowania od przesyłania do pobierania, gdy plik jest w pełni przesłany.

To się pogarsza, ponieważ pliki są dłuższe i / lub ludzie przesyłają z powolnych połączeń.

wspinacz
źródło
0

Jestem pewien, że możesz mieć problemy. Spróbuj tego:

Rozpocznij przesyłanie dużego pliku na serwer FTP. Odśwież widok folderu, do którego jest przesyłany, a zobaczysz, że rozmiar pliku zwiększa się i trwa przesyłanie.

Jeśli spróbujesz tego z plikiem .mp3. Możesz uzyskać do niego dostęp za pośrednictwem przeglądarki i zobaczyć, że będzie on odtwarzany tylko do momentu, w którym został przesłany.

Właśnie dlatego programy takie jak Dreamweaver mają system odprawy. Tak więc, jeśli ktoś pracuje nad plikiem .html, ktoś inny nie może przesłać starszej wersji lub powodować tego rodzaju problemów.

Nie sądzę, że FTP używa plików tymczasowych lub kolejkowania albo ...

Ian
źródło
Poprawny. Raz rozpakowałem plik, który w rzeczywistości nie został przesłany do końca. Dziwne komunikaty o błędach, oczywiście ...
Arjan,
Myślę, że aktualizacja i istniejący plik różni się od utworzenia nowego pliku (odczyt nie rozpocznie się przed utworzeniem, a następnie nastąpi zapis). Jeśli odczyt wykracza poza zapis, otrzymasz niepełne zakończenie odczytu. Niekompletny plik ZIP pokaże uszkodzenie. Niekompletne mp3 zostanie odtworzone do pierwszego punktu uszkodzenia (tak myślę). To różnica w formatach plików.
nik
Modyfikacja / nadpisanie istniejącego pliku powinna identyfikować proces odczytu w toku i utworzyć nową wersję do zapisu, zachowując starszą wersję do odczytu. Dlatego w mojej odpowiedzi mówię, że w takim przypadku typowy system plików dałby starszą kopię pliku.
nik
0

Za każdym razem, gdy próbuję uzyskać dostęp do strony, której jeszcze nie przesłałem, pojawia się komunikat „resetowanie połączenia podczas ładowania”. Myślę jednak, że to naprawdę zależy od oprogramowania.

Phoshi
źródło
-1

Korzystanie z oprogramowania kontroli wersji pomogłoby w tym przypadku, spójrz na Git i SVN , zauważ, że istnieją dwa główne typy (scentralizowane i rozproszone) oraz wiele innych aplikacji oprócz tych dwóch.

Shadok
źródło
Ta odpowiedź nie ma nic wspólnego z pytaniem ...
Kristian
Operacje w tych systemach są atomowe, nie ma możliwości uzyskania niekompletnego pliku, problem rozwiązany.
Shadok
Tak, wiem, ale pytanie dotyczyło w szczególności serwerów FTP
Kristian,