PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : An die Programmierer hier



strex
15.11.2007, 13:56
Also MySQL würde ich immer vorziehen und Textdateien würde ich ganz schnell wieder vergessen. Zugriff auf das Filesystem ist immer lahm und belastet.

Wie wäre es mit Indexe? Sind die richtig angelegt? Ist MySQL bestens optimiert? Welche Hardware hat der Server?

Wenn ich das weiß kann man weitere überlegen.

Grüße strex

paddya
15.11.2007, 15:11
Auch wenns schön aussieht - steig vom Otrkey-Namen auf IDs um. Das wird die Sache um einiges beschleunigen.
Und dann natürlich Indexes setzen, wie strex schon sagte.

Greetz

paddya

stubidoo
16.11.2007, 10:41
http://www.oreilly.de/catalog/hpmysqlger/chapter/ch04.pdf

otrhq.de
16.11.2007, 12:11
EDIT: hab ich jetzt gemacht also alles wie beschrieben ... aber von der geschwindigkeit her ist der unterschied wirklich nur minimal ..Ohne genaues Audit deines Systems ist es schwierig zu sagen, woran es liegt. Aber eigentlich sind 285.166 Einträge in einer Tabelle noch kein Grund, dass ein System langsam läuft.
Ich habe beim Aufruf deiner Seite auch nicht das Gefühl, es wäre unbenutzbar. Ja, jeder Seitenaufruf dauert ca. 5 Sekunden, aber ich weiß nicht, wieviel davon auf Datenbankabfragen entfallen.

Edith: Du solltest natürlich die Dateien in der Link-Tabelle nicht über deren Namen, sondern über den künstlichen Primärschlüssel referenzieren. Vielleicht liegt da der Hund begraben?

irmizban
16.11.2007, 14:53
Du solltest natürlich die Dateien in der Link-Tabelle nicht über deren Namen, sondern über den künstlichen Primärschlüssel referenzieren. Vielleicht liegt da der Hund begraben?

ja ich suche immer nach dateinamen ...

hast du vlt ICQ, MSN oder sonstiges .. wo du mir das vlt etwas erklären kannst, wäre extrem nett.

mschafhuber
16.11.2007, 15:11
Also MySQL würde ich immer vorziehen und Textdateien würde ich ganz schnell wieder vergessen. Zugriff auf das Filesystem ist immer lahm und belastet.

vergiss nicht die CPU Belastung ^^

strex
16.11.2007, 15:47
Wie gesagt ohne genau Zahlen (Serverdaten, User,...) kann man nicht sagen ob das was bringt, noch weiter zu optimieren oder ob ein neuer Server gebraucht wird.

1.
Unser Webserver ist zwar ziemlich voll leistet trotz seiner geringen Leistung (P3 1Ghz 512MB RAM) richtig viel. Wir können locker 300 User gleichzeitig bedienen. Aber auf dem liegt wie gesagt nur das Script, die SQL liegt auf dem Primären Datenbankserver mit 2x2Ghz Xeon mit 4GB RAM.

Vielleicht ist es ja doch was, Webserver und MySQL zu trennen?

2.
Auf welcher Version ist denn MySQL? Setz mal MySQL 5 ein, bringt einiges an mehr Leistung, zu dem ist hier auch Volltextsuche möglich.

3. Durch das verwenden von Algorythmen ist es möglich zu schätzen was benötigt wird, dann kann man das schon vorladen und in arrays speichern. Aber das wird doch etwas zu viel sein.

Weiter kann man sämtlich Bearbeitungen in den arrays erledigen, array_diff...somit muss man nur einmal Daten von der DB laden und kann somit die Belastung um einiges senken. Unser FTP-Spider hat am anfang nur durch überprüfen der Daten in der Datenbank entschieden ob diese schon eingetragen sind. Natürlich kamen dadurch einiges an MySQL connects zu stande. Einfach beide Ausgangswerte einladen in ein array und verglichen, somit erhält man sofort der benötigte Unterschied. Dafür braucht man nur 2 MySQL connects und somit eine Steigerung der Leistung um den Faktor 100.

Vielleicht ist ja was für dich dabei...


edit:// TIP: Versuch mal soviel Querrys wie möglich ein zu sparen, dass sollte am Effektivsten sein.

stubidoo
16.11.2007, 18:23
einfach mal scripte optimieren und qrys auf indizes optimieren.
mysql cache einschalten und die parameter von mysql einfach mal optimieren (vgl. hier (https://zockertown.de/s9y/archives/811-MySQL-tuning-primer.sh.html)).

wenn das immer noch nichts hilft diese seite (http://www.google.de/search?hl=de&q=mysql+optimieren&btnG=Google-Suche&meta=) mal durcharbeiten.


EDIT: ich habe auch schon in tabellen mit 1,4 GB größe (forenbeiträg aus 2 jahren) auf nem relativ kleinen webserver anständige ergebnisse von unter 100ms responsezeit erzielen können. an der hardware liegts also definitiv nicht.

Algernoon
04.12.2007, 21:29
mir scheint, jetzt ist de Seitenaufbau von http://www.otr24.de/list.php schnell, aber die suche funktioniert nicht ?:(

irmizban
05.12.2007, 09:44
inwiefern ... funktiniert die suche nicht ?!?!

bei mir funktioniert sie.

Was gibst du denn z.B. ein ?



Gruß
IrMizban

Algernoon
05.12.2007, 19:09
war nur kurzzeitig so,zurzeit gehts wieder - und zwar problemlos und schnell!

GeileFleischpeitsche
19.12.2007, 17:49
Hallo nabend
ich habe ein prob mit C# kann mir da evebtuel jemand weiter helfen??
schon mal danke im voraus

stubidoo
19.12.2007, 17:50
solange keiner dein problem kennt, kann dir auch keiner weiterhelfen.
ausserdem denke ich, dass du in anderen foren deutlich besser aufgehoben bist als hier.

GeileFleischpeitsche
19.12.2007, 17:52
ja klar hätte das prob ja auch gleich geschrieben??und warum sollte ich in einem anderen forum besser aufgehoben sein!?

Logain
19.12.2007, 17:54
(...)warum sollte ich in einem anderen forum besser aufgehoben sein!?

Es gibt spezielle Foren die sich nur mit dem Programmieren, teils sogar nur mit einer Programmiersprache beschäftigen. Ich denke stubidoo meinte das du in einem solchen schneller jemand findest der dir bei deinem Problem helfen kann.

stubidoo
19.12.2007, 18:09
a klar hätte das prob ja auch gleich geschrieben??

wenn das eine frage ist, dann verstehe ich sie nicht. wenn es keine ist, dann sind die fragezeichen da fehl am platz und ich verstehe trotzdem nicht, was du damit sagen willst.


Ich denke stubidoo meinte das du in einem solchen schneller jemand findest der dir bei deinem Problem helfen kann.

genau so ist es.
wenn ich ein stück fleisch kaufen will, frag ich ja auch nicht in der bäckerei. auch wenn die verkäuferin dort bestimmt schonmal ein stück fleisch gebraten hat ;)