14. marts 2003 - 22:38Der er
7 kommentarer og 1 løsning
Sync af databaser
Jeg er ved at udvikle et program i Java. Kort beskrivelse. 1 server med en database. 2 klienter med hver sin database. de er forbundet via VPN.
Når der arbejdes på klienten og forbindelsen til serveren ryger skal dataene gemmes i klientens database , og når der opnåes forbindelse igen skal de opdateres i serverens database. Hvis der arbejdes på klienten og forbindelse er tilstede skal dataene gemmes i serverens database.
Kommunerne har digitaliseret indgangen for borgerne. Men bag skærmen håndteres mange arbejdsgange stadig manuelt mellem systemer, mails og organisatoriske siloer.
First I'de better say that this category is Access and NOT much to do with JAVA or web programming for that matter. But when you say client/server then I am assuming we are NOT talking web applications. So it should be possible in you JAVA program to read records from the server database and then write them to the client database. I dont know much about JAVA programming OR VPN for that matter, but as far as I know you should be able to get access to files and folders on the VPN as though they were just part of your network and so you should be able to MAP a drive on the VPN and use the mapped drive in the connection string as you would with your local drive. So from your JAVA programs point of view it is just two databases, one being on a server drive and one being on the local drive.
Jeg læser dit spørgsmål som at du har nogle klienter som normalt arbejder op mod en central database, men hvis de bliver disconnected skal rettelser gemme lokalt og uploades automatisk lige så snart forbindelsen reetableres.
Hvis klienterne kun indtaster nye records er det ikke nødvendigvis svært at lave.
Din applikation har en state connected/disconnected alt efter state gemmer applikationen lokalt eller på server. Hvis disconnected så skal der med et interval forsøges at reconnecte, hvsi en reconnect går godt skal data flytte fra client til server database.
Enten skal data slettes i client database når de er uploadet til server database eller så skal du gemme et time stamp for alle records og have et timestamp for sidste upload og bruge det til at selektere med.
Der skal selvfølgelig være en database struktur, så multiple clients der uploader til server ikke genererer hinanden.
Hvis dine client også skal kunne update gamle records, så skal alle records jo også replikeres ud fra server til clients. Og så er det at det begynder at blive vanskeligt.
Det kan stadigvæk gøres. Men det kræver rigtigt meget. Jeg tror ikke at du skal gå igang med det projekt.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.