-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!news.task.gda.pl!not-for-mail
From: Baranosiu <r...@w...pl>
Newsgroups: pl.comp.programming
Subject: Re: Monitorowanie zmian FTP
Date: Fri, 19 Oct 2012 07:36:50 +0000 (UTC)
Organization: CI TASK http://www.task.gda.pl/
Lines: 30
Message-ID: <k5qvug$brs$1@news.task.gda.pl>
References: <o...@s...wroclaw.optopol.zawiercie>
Reply-To: Baranosiu <r...@w...pl>
NNTP-Posting-Host: user-31-175-154-40.play-internet.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-2
Content-Transfer-Encoding: 8bit
X-Trace: news.task.gda.pl 1350632210 12156 31.175.154.40 (19 Oct 2012 07:36:50 GMT)
X-Complaints-To: a...@n...task.gda.pl
NNTP-Posting-Date: Fri, 19 Oct 2012 07:36:50 +0000 (UTC)
User-Agent: slrn/pre1.0.0-18 (Linux)
Xref: news-archive.icm.edu.pl pl.comp.programming:200122
[ ukryj nagłówki ]Dnia 19.10.2012 Wojciech Sura <s...@s...op.pl> napisał/a:
> Hej!
>
> Rozpatrzmy program, który utrzymuje na serwerze FTP mirror jakichś danych
> (taka prosta synchronizacja, coś jak Google Drive albo Skydrive, tylko na
> FTP). Uruchamiamy dwie stacje robocze synchronizujące się z tym samym
> katalogiem. Na jednej stacji następuje zmiana - to można złapać dosyć
> łatwo, ponieważ Windows umożliwia monitorowanie zmian w danym katalogu.
> Plik aktualizowany jest na FTP... ale w jaki sposób drugi program może
> stwierdzić, że zaszły jakieś zmiany, które trzeba zaktualizować?
> Szczególnie, gdy plików do aktualizacji jest bardzo dużo i nie za bardzo
> można sobie pozwolić na częste przeszukiwanie całej hierarchii?
Sposobów jest co najmniej kilka. Najbardziej klasyczny to oczywiście
sprawdzanie dat modyfikacji każdego pliku. Druga możliwość (często
stosowana) to po każdej zmianie serwer aktualizuje plik ls-lR.gz
(zawierającego zgzipowany wynik unixowego polecenia ls -lR :D) w głównym
folderze ftp, a programy klienckie sprawdzają tylko datę
modyfikacji tego pliku, jeśli jest nowsza niż ta, którą mają u siebie,
to pociągają ten plik, a w nim już są daty modyfikacji (i wielkości)
wszystkich innych plików, więc lokalnie mogą sprawdzić co jest
nieaktualne i dociągnąć tylko potrzebne rzeczy. Trzecia możliwość, to
zastosowanie jakiegoś mechanizmu sum kontrolnych (na przykład md5) i
sprawdzanie nie po datach, tylko po zawartości plików (zasada taka
sama jak przy ls-lR tylko porównuje się sumy kontrolne a nie daty -
skuteczniejsze).
Z FTP jest natomiast jeden podstawowy problem, nie zapewnia on
"blokowania" plików (czyli dwie osoby na raz mogą próbować nadpisać
ten sam plik), do takich celów lepszy jest protokół RSYNC (lub
jakikolwiek system zarządzania wersjami, na przykład GIT).
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-01-23 5G Apokalipsa - nie tylko dla tutejszych przeżuwaczy podpiczników
- 2025-01-23 wodor
- 2025-01-23 Zawór grzybkowy - jaki producent
- 2025-01-23 Warszawa => Expert IT Recruiter 360 <=
- 2025-01-23 Warszawa => Key Account Manager IT <=
- 2025-01-23 Citi Handlowy promocja na kartę kredytową
- 2025-01-22 Gdańsk => System Architect (Java background) <=
- 2025-01-22 Katowice => Senior Field Sales (system ERP) <=
- 2025-01-22 Warszawa => Java Developer <=
- 2025-01-22 pokolenie Z
- 2025-01-22 Wyświtlacz ramki cyfrowej
- 2025-01-22 Białystok => Architekt rozwiązań (doświadczenie w obszarze Java, A
- 2025-01-22 Chrzanów => Team Lead / Tribe Lead FrontEnd <=
- 2025-01-22 Ostrów Wielkopolski => Konsultant Wdrożeniowy Comarch XL/Optima (Ksi
- 2025-01-22 oferta na ubezpieczenie OC życie prywatne