Seite 1 von 2

2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 17:00
von marle
hallo,

habe folgendes Problem:

Meine Seten (Serverstandort Dtschl.) sollen von China angeguckt werden.
Ergo Ladezeiten sehr lang.
Meine Idee: 2 Server in China direkt anmieten um Ladezeiten zu verkürzen.

Frage:
Wenn ich nun 2 Webserver zu laufen hab mit 2 Datenbanken wie synkronisier (bei rechtschreibfehler mal bitte kurz :P ) ich die am einfachsten?

folgende Lösungsansätze hab ich mir überlegt:
1.) Bei neueintragungen in beide DB schreiben (Problem muss 2mal die daten schreiben)
2.) Abends spiegeln (Problem muss die daten abgleichen)
3.) Projekt getrennt laufen lassen (Problem eigendlich nicht wollen)

habt ihr andere Anregungen für mich?

System:
Apache Mysql PHP
https://www.industrystock.com

Danke für eure Antworten

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 17:07
von Nikochan
Ich würde testen wie sich die Ladezeit verhält, wenn die Datenbank des deutschen Servers verwendet wird. Scripte, Daten etc. werden beim Zugriff aus China vom dortigen Server abgerufen... bloss Datenank-Abfragen gelangen an den deutschen Server. Habe jedoch keine Erfahrungen, wie sich die Ladezeit bei dieser Konstellation verhält.

Gruss,
Nikochan

2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 17:11
von marle
idee ist gut müsste aber auch noch bilder, pdf synchronisieren
idee dazu?

2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 17:18
von sean
@marle

Du willst also mit distributed Datenbanken arbeiten. Da stellt fast jede DB von sich aus eigenen Funktionen zur Verfügung. Zumindest mssql und oracle, ahh, sogar Access :-) Ich glaub auch mysql hat soche Funktionen.

Ich würde da anfangen und schauen was dir geboten wird, da gibt es auch die besten Lösungen bei Inserts, wenn zwei DBs verwendet werden. PDFs usw. am besten mit in die DB, damit Du nicht noch Dateien aktualisieren mußt.

Gröstes Problem ist bei solchen Dingen immer eines:
Was passiert, wenn was schief geht? Stell dir vor es wird ein Insert ausgelöst, und eine der DBs ist nicht erreichbar (Netzausfall, Server überlastet und und und). Und das ganze 2 Stunden lang. Wie soll dann bestimmt werden, wie sich die Daten wieder angleichen? Da must Du aufpassen, bzw. ein gutes Konzept haben.

Gruß

sean

2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 17:19
von Michael
Das mit der Datenbank über das Netz würde ich nicht machen. Da werden Datenbankpasswörter im Klartext von China bis Deutschland übertragen. Das ist doch ein wenig gefährlich. Wenn Du eine Datenbankanwendung laufen hast, würde ich die Statischen Teile auf beiden Servern installieren und per Cronjob die Änderungen im Hintergrund von a nach b und auch von b nach a übertragen.

Dabei solltest Du sensible Daten mindestens mit "des" verschlüsseln.

2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 17:33
von marle
@michael
da hast du recht
also wär ein DB abgleich eigendlich nur per dump und ssh realisierbar.
aber ich kann doch nicht nach jedem insert eine spiegelung von a->b oder b->a machen
:idea:
da komm ich ja nie aus dem abgleichen raus...

weitere ideen?

2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 17:35
von sean
Da werden Datenbankpasswörter im Klartext von China bis Deutschland übertragen.
???? Dann hat das aber jemand gemacht dem die Sicherheit nicht wichtig ist. Also bei MSSQL und Oracle wird da nichts lesbar übertragen. Wär ja ein Witz!!!!!

Gruß

sean

2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 17:41
von marle
wie ist das wenn ich per mysql_connect() auf einen externen DB server zugreife wird das dann verschlüsselt?

2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 17:44
von sean
glaub ich nicht, da müstes Du selber etwas entwicklen.

sean

2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 17:46
von marle
wenn ich in der host tabelle des chinarechners den zugriff vom deutschrechner erlaube und nur von dort ist das sicher?
oder kann man das auch irgendwie manipulieren?

2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 18:55
von sean
host tabelle des chinarechners den zugriff vom deutschrechner erlaube und nur von dort ist das sicher
Kommt drauf an. Ich nehme mal an das in eine Hosttabelle die IPs kommen, das ist nicht sicher genug. Zumindest nicht für meine Zwecke.

Unterstützt mysql Replikationen? Da würd ich mal nachschauen. Das wäre dann eine mysql Funktion, um den Inhalt auf mehreren Datenbanken zu verteilen. Diese Funktionalität läuft dann auf DB Ebene, und nicht darüber auf der Script Ebene. Das ist meist besser.

Gruß

sean

2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 18:59
von sean
also, hab mal fix geschaut. Im mysql Admin gibt es zumindest die Abfrage des "replication status". Demnach wird es auch Replication Funktionen geben. Schau dir das mal an, wird der einfachste, schnellste und sicherste Weg sein, wenn Du nicht xtausende Euros ausgeben willst.

Gruß

sean

Re: 2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 19:50
von lomo
marle hat geschrieben:Meine Seten (Serverstandort Dtschl.) sollen von China angeguckt werden.
Ergo Ladezeiten sehr lang.
Wieso ist deutscher Server-Standort massgeblich für die Ladegeschwindigkeit der Webseite in China? 20 KB grosse Datei ist auch in China 20 KB gross.

Wenn die Anwortzeiten des Servers gemeint sein sollten, so hängen diese auch nicht unmittelbar vom physikalischen Standort sondern vielmehr von der vorhandenen Infrasruktur (Anbindung/verfügbare Bandbreite etc.) ab. Und diese müss ja in China nicht besser als in Deutschland sein.

2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 20:00
von bull
Demnach wird es auch Replication Funktionen geben.
Schon, aber die ist nicht bidirektional, soweit ich weiß.
Wenn nur auf dem deutschen S. inserts gemacht werden und der chinesische S. das nur übernehmen soll, reichts auch. Wenn allerdings in beiden S. inserts gemacht werden können sollen nicht.

2 server gleicher Inhalt wie?

Verfasst: 07.03.2005, 20:46
von Nexus
Hi,

es ist in MySQL auch möglich eine Master <-> Master Replikation aufzusetzen.

Diese macht genau das was du brauchst, setzt allerdings voraus das deine Applikationen darauf vorbereitet sind. Diese ist nicht ganz trivial, wenn aber einmal funktioniert machts richtig Spaß ;-)

Im dem Buch High Performance MySQL von J. D. Zawodny und D. J. Balling wird in Kapitel 7 genau dieses beschrieben.
Btw, für jemanden der zeitkritische Anwendungen auf Basis von MySQL entwickelt, ist dieses Buch ein echtes Highlight!

Gruß
Raphael