Zum Inhalt springen

SQL-Traffic komprimieren


Lausi

Empfohlene Beiträge

Hallo Leute!

Vielleicht kann mir jemand bei folgendem Problem helfen:

Es handelt sich um eine Client/Server-Architektur, bei der die Datenbank (MySQL 4.0) von der Anwendung (in C# implementiert) getrennt auf verschiedenen Rechnern läuft. Der Datenbankserver soll zentral stehen und mehrere Clients sollen von außen über das Internet zugreifen.

Durch die große Menge an SQL-Traffic, die übertragen werden muß, entstehen längere Verzögerungen. :schlaf:

Meine Idee war den Traffic irgendwie zu komprimieren bevor er übertragen wird!?

Kann mir dazu jemand einen Hinweis geben ob das überhaupt möglich ist und wenn ja wie ;)

Danke im voraus!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wird wohl kaum moeglich sein... muesste naemlich als Plugin gehen... weiss nicht ob das geht.

Aber oft hilft es wenn man die Applikation dahingehend anpasst dass man die Anzahl der Querys minimiert.

Frueher hab ich einen Query gemacht und pro Datensatz darin in einer Loop neue Querys mit diesen Daten gemacht hab... sowas dauert natuerlich ewig lang.

Wenn man es schafft alle Informationen in nur einer Query zu holen (Per Joins, Unterabfragen, zwischentabellen.. whatever halt) dann ist die Datenrate minimal....

Waere das denn ein Vorschlag ?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Komprimieren geht nicht. man muss die Businesslogik anpassen in c# und in den sql statements.

SQL falsch entwickelt ist nicht performant.

ich stand am anfang meiner Ausbildung vor dem gleichen problem und habe mit meiner Lösung, täglich eine ersparnis von 15 minuten je client erreicht.

Bei mir war die internetleitung, ISDN, die software PowerBuilder und es waren ca. 15 clients

Link zu diesem Kommentar
Auf anderen Seiten teilen

Danke für die bisherigen Antworten!

@Joe Kinley: Klar bringt das optimieren der Anfragen sicher einiges, aber wie du schon erwähnt hast dauert das ziemlich lange. Vor allem da ich nicht in allen Bereichen der Anwendung Ahnung habe, weil diese von verschiedenen Entwicklern implementiert wird.

Und wenn ich die Anfragen minimiere (durch Unterabfragen,usw.), dabei aber die gleichen Datensätze anfordere, ändert sich bestimmt auch nicht der Traffic an sich, oder?

@baba007: Das habe ich befürchtet. War auch nur eine erste Idee mit dem Komprimieren und wäre sicher eine schnelle Lösung gewesen.

@Jaraz: useCompression klingt interessant! Ich werde da mal nachforschen ob da was einzustellen geht!

Sollte sonst noch jemand eine Idee haben, immer raus damit! ;)

Gruß Lausi!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Nunja... ich meine es halt so, dass man unnoetige Connects auf die Datenbank vermeiden sollte.

Wenn du zum Beispiel einen Datensatz holst mit 100 Zeilen, und in einem Loop fuer jede Zeile noch eine neue Abfrage machst, sind das 101 Connects (und die dauern).

Wenn du allerdings ein grosses Statement baust, mit Joins und Subselects und den ganzen Klumbatsch auch in einem durchgang holen kannst hast du auch nur 1 Connect.

Das sind die Zeitfresser die man desoefteren mal in Applikationen sieht.

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 2 Wochen später...

Hi Leute!

Also, da mein ganzes "rumgewurschtel" an der Anwendung noch nicht den richtigen Erfolg gebracht hat, schlag ich Versuchsweise mal eine andere Richtung ein.

Terminaldienste! Damit muß ich den SQL-Traffic nicht über das WAN übertragen, sondern lediglich die Bildinformationen sowie Tastatur- und Maussteuerung.

Mal schauen wie performant diese Sache ist :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...