Oprogramowanie archwizacyjne-Servery Linux

0

Witam, mam do napisania oprogramowanie(ma to być coś w rodzaju "demona" serwerów-nie wiem czy poprawnie użyłem tego sformułowanie bo tylko o nim słyszałem) dla dwóch serverów (każdy z nich będzie stał w innym miejscu w Warszawie), które będą się komunikować ze sobą i wymieniać dane(a ściślej to mają monitorować co pewien czas stan posiadanych i dokonywać replikacji wzajemnie tak by obydwa miały to samo zawsze). Servery są pod systemem linux. Do tej pory programowałem w C++ i Qt aplikacje deskoptowe np. Przeglądarkę plików medycznych w standardzie DICOM. Stąd moje zapytanie od czego powinnien zacząć i czy może są jakieś gotowe open sourcowe rozwiązania, które mógłbym wykorzystać i rozwinąć do swoich potrzeb? Oczywiście jakieś ciekawe źródła jak takie aplikacje serverowe pod linucha się piszę będą również mile widziane.
Z góry wielkie dzięki

0

A w czym trzymasz te dane? Jeżeli to jakaś popularna baza danych, to replikacje z reguły działają out-of-the-box i wszystko sprowadza się do uzupełnienia kilku parametrów w konfiguracji.
Jeżeli dane trzymane są w plikach, to być może zamiast pisania nowego programu, spróbować rsync?

0

To jest projekt uczelniany, nie mogę używać płatnych rozwiązań ewentualnie na nich się wzorować, a oprogramowania i kodów opensource jak najbardziej. Wcześniej nie robiłem nic sieciowego znam tylko środowisko Qt i C++. Generalnie idea jest taka, że oba servery będą przechowywać dane medyczne w standardzie DICOM. Na razie muszę napisać oprogramowanie, które pozwoli na zapewnienie komunikacji między dwoma właśnie serwerami, na których dane medyczne od stacji medycznych(klientów-poźniej muszę dopisać programy klientów o ile starczy mi czasu,które będą się mogły dane na servery składować-ale priorytet mają najpierw servery). Z tego co zrozumiałym to servery już będą postawione a ja mam do nich właśnie dopisać to oprogramowanie, które pozwoli na komunikacje między nimi tak żeby np co jakiś ustalony czas wymianiały się danymi i każdy dochodził do momentu w którym będą miały najaktualniejszy zestaw danych. Muszę też zapewnić jakieś mechanizmy, które będą kontrolować czy dane doszły bez strat. Na serverach prawdopodbnie będę też poźniej przechowywał jakieś informacje o klientach, którzy mogą się z serverami łączyć(jakieś loginy i hasła), którzy mają prawo na serverach dane składować i je pobierać. Dane będę w prosty sposób musiał zanonimizować, tzn. w plikach DICOM są tagi odpowiadające danym pacjenta, którego badanie mamy w tym pliku: anonimizacji dokonam podmianą zawartości tego tagu jakimiś nawet losowymi wartościami tak by jeśli jakaś niepowołana osobą dostała się badania nie wiedziała czyje ono jest. Potem składuje gdzieś tą nową wartość wraz z oryginalną i w momencie gdy autoryzowana osoba chce odzyskać plik badania to wtedy dla niej przysyłany jest plik badania z odtworzonymi danymi pacjenta. Muszę też uwzględnić jakiś backup danych na serverach, który np ulegał by kasacji bo jakimś z góry określonym czasie. Jestem właśnie w materii sieciowej zielony i dla tego zgłosiłem się tutaj o rady. Jeszcze raz naprawdę dziękuje za każdą pomoc.

0

PosgreSQL powinno wystarczyć.

0

Dziękuje. A jak tego użyć i co muszę sam napisać w C++? Bo tak jak mówię pierwszy raz się z tym spotykam i bardzo mi na tym zależy.

0

http://is.gd/hym0J zainteresuj się 43, 46 i 47

0

Wielkie dzięki naprawdę jestem Ci wdzięczny zaznajomiłem się również z Beej’s Guide to Network Programming: Używanie gniazd internetowych i troche mnie oświeciło, muszę jeszcze poczytać o kompresjii przed wysyłaniem, może znasz jakieś darmowe rozwiązania w tej materii. A szyfrowanie chyba OpenSSL, autor powyższego tutoriala o tym wspomina właśnie. Mam jeszcze pytanie dotyczące deamonów-konkretnie jak piszę się tego typu oprogramowanie bo chyba to co muszę tu zrobić powinno jakoś podobnie chyba działać, prawda?

0

Deamon to po prostu odpowiednik Windowsowych usług, czyli proces działający całkowicie w tle. Kompresja to np. gzip

0

Czyli jak rozumiem mogę pisać program dla servera tak jak każdy inny i ewentualnie potem tym jak się bedzię już uruchamiał na starcie to to będzie znacyzło, że jest deamonem tak?

1 użytkowników online, w tym zalogowanych: 0, gości: 1