PHP vs Xbase++

Sonstiges (nicht kategorisierbar)

Moderator: Moderatoren

Antworten
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

PHP vs Xbase++

Beitrag von Manfred »

Hi und frohes neues Jahr an alle,

ich bin mir nicht ganz sicher, ob die Frage hierhin gehört, aber sie betrifft ja auch Xbase++ :-)

im letzten Jahr wurde ich auf eine Sache aufmerksam, die mir jetzt wieder eingefallen ist:

Hat jemand schon einmal einen Vergleich zwischen PHP und Xbase++, oder Clipper gemacht in Sachen Datenimport/Export aus Textdateien in DBF Dateien?

Es war eine Textdatei mit über 300.000 Datensätzen, die mit PHP eingelesen wurde um sie ein eine DBF Datei zu konvertieren. Was mich jetzt absolut fasziniert hat, war das höllische Tempo, im Vergleich zu Xbase++ oder Clipper, mit dem der Vorgang abgearbeitet wurde.

Hat jemand eine Ahnung, oder Erfahrung warum Xbase++ oder Clipper so langsam ist, bzw. PHP so schnell ist?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: PHP vs Xbase++

Beitrag von Manfred »

Das Thema beschäftigt mich immer noch. Es geht jetzt allerdings um 1. Mio Sätze und da liegt der Unterschied natürlich ganz krass vor.

Ich habe jetzt einmal etwas zusammengebaut, das zwar gut klappt, aber vom Tempo her im Verhältnis zu PHP grottenlangsam ist. Aber vielleicht mache ich ja auch einen Denkfehler. Folgendes habe ich:

Code: Alles auswählen

          nHandle := FOpen("d:\artuld.txt",FO_READ)
          cBuffer := FReadStr(nHandle,FSize(nHandle))
          nStelleLF := AtNum(Chr(10),cBuffer,3,nStelleLF) + 1                   // Überschrift übergehen
          DO WHILE .T.
             nLaenge := AtNum(Chr(10),cBuffer,1,nStelleLF) - nStelleLF          // berechnen, wie lang der Auszug sein muss
             cAuszug := SubStr(cBuffer,nStelleLF,nLaenge)
             nStelleLF := AtNum(Chr(10),cBuffer,1,nStelleLF) + 1
          ENDDO .T.
Das ist jetzt einfach nur mal so um den Durchlauf von der Zeit her zu testen. Hat jemand eine bessere/schnellere Idee, als die mit Substr()?
AtNum() ist eine Funktion aus den Tools III, mit der man die Anfangspostion einer Sequenz in einem String ermitteln kann. In meinem Fall Satzende.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: PHP vs Xbase++

Beitrag von Koverhage »

Manfred,

warum benutzt Du nicht einfach AT ?
Gruß
Klaus
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: PHP vs Xbase++

Beitrag von Manfred »

Hi Klaus,

so wie ich das erkenne, dürfte das keinen Unterschied machen. Sehr wahrscheinlich habe ich in den Tools zuerst gesucht und das dann gefunden.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: PHP vs Xbase++

Beitrag von Tom »

Code: Alles auswählen

nTextLenght := Len(cText)
cSubText := ''
FOR i := 1 TO nTextLenght
  IF cText[i] = Chr(10)
    * cSubText ist fertig, irgendwas damit machen
   cSubText := '' // für den nächsten Teilstring
    ELSE
    cSubText += cText[i]
  ENDIF
NEXT
Das dürfte deutlich schneller sein.
Herzlich,
Tom
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: PHP vs Xbase++

Beitrag von brandelh »

In der Wissensbasis habe ich Funktionen hinterlegt, die Textdateien in einem Rutsch in ein Array knallen, ähnlich sollte es auch mit DBF funktionieren.
Bei diesen habe ich die Tips von Alaska bezüglich optimale Geschwindigkeit (String nur lesen und nicht umkopieren) umgesetzt, schneller dürfte es kaum zu bekommen sein.

PHP KÖNNTE hier schneller sein, da der DBF Export (soweit ich das gelesen habe) NUR ein Export ist, also LOKAL EXCLUSIV.
Es kümmert sich vermutlich nicht um Treiber, sondern baut die DBF als BLOCK am Stück auf.
Gruß
Hubert
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: PHP vs Xbase++

Beitrag von Jan »

Ich habe damals ja auch enorm mit der Geschwindigkeit gekämpft. Irgendwo hier muß auch noch mein Thread diesbezüglich rumschwirren. Man kann durch den richtigen Algorithmus einen enormen Geschwindigkeitsgewinn erzielen.

Ich muß das mal messen. Aber ich habe vergangene Woche eine Datei eingelesen mit knapp 4,1 Mio Zeilen, die hatte ich in geschätzen 20 Sekunden sauber im Array drin (Laptop mit 2 GB RAM). Die Weiterverarbeitung geschieht dann anhand der Array-Sätze, inkl. dem Schreiben in die DBF. Das dauert dann wesentlich länger, aber auch, weil ich jede Zeile vor dem Schreiben erst noch auswerten muß.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: PHP vs Xbase++

Beitrag von Manfred »

Hi Tom,

das war es nicht. Deine Version benötigt nur für den Durchlauf bei knapp 900.000 Sätzen ca. 3 Minuten. Meine benötigt dafür knapp 30 Sekunden. Es ist aber das Wegschreiben in die DB, was so bremst. Da muß ich mir dann nochmal Gedanken zu machen, wie ich das anders angehen müßte.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: PHP vs Xbase++

Beitrag von Jan »

Manfred,

was mußt Du denn machen?`Wäre es z. B. eine Möglichkeit, das Einlesen in einen Hintergrundthread zu verlegen? Müssen die Daten denn zwingend in eine dbf, oder würde ein Array schon reichen? Oder ein Zwischenschritt wie bei mir - erstmal ins Array, dort mit entsprechender Geschwindigkeit verarbeiten, und dann erst in die dbf?

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: PHP vs Xbase++

Beitrag von Manfred »

Ich denke mal, ich muß meine Philosophie ein wenig anpassen. Ich habe jetzt einfach mal alle Speicheroperationen weggelassen und direkt in die DB geschrieben. Das sie ja Ex geöffnet ist, bereitet das ja keine Probleme. Auf jeden Fall bin ich von über 30 Minuten auf knapp 6 Minuten runtergegangen, was den Zeitverbrauch betrifft. Nicht schlecht, dass hätte ich jetzt nicht erwartet. Und somit dürfte ich jetzt ziemlich nahe an der PHP Routine dran sein.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: PHP vs Xbase++

Beitrag von brandelh »

Hallo,

man könnte eine DBF mit FOPEN() öffnen, selbst auf die Formatierung achten und dann Strings mit 10 oder 20 Datensätzen auf einmal schreiben.
Danach muss man den HEADER anpassen und natürlich höllisch auf die Formatierung der Zeilen achten !

Ob es die Sache wert ist ? Keine Ahnung 8)

So ähnlich hatte ich aber schon eine Volltextsuche in Clipper gesehen, die war wirklich schnell !
Gruß
Hubert
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: PHP vs Xbase++

Beitrag von Manfred »

Hi Hubert,

ich dachte mir schon sowas, aber das es so drastisch würde, dachte ich wiederum nicht. Aber eigentlich hat mich nur die Tatsache so gereizt, dass PHP so schnell war und Xbase++ dagegen nicht anstinken konnte. (dachte ich jedenfalls) Aber ich schätze mal, das PHP intern wohl auch nicht viel anders arbeitet und deshalb so Gas gegeben hat. Naja, der innere Schweinehund ist zufrieden und das ist doch schon mal was. Und außerdem:

"Wir haben ja bald Weihnachten."

:occasion6:
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: PHP vs Xbase++

Beitrag von Jan »

Moin,

so, hab das nochmal getestet. 70.565 kB mit insgesamt 4.087.943 Zeilen werden inkl. Datei öffnen über FRead() innerhalb von 9 Sekunden in das Array eingelesen. Das ist doch mal ein Wort.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: PHP vs Xbase++

Beitrag von Manfred »

Hm

zeig doch mal Deine Routine die das macht. Nur Aussagen bringen es nicht weiter. Bei mir ist die Datei 180 MB groß, hat aber ca. 900.000 Sätze. Wie Du siehst liegt da schon mal ein Unterschied vor. Außerdem lese ich immer nur 1 Satz ins Array und schreiben den dann in die DB.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: PHP vs Xbase++

Beitrag von Jan »

Moin Manfred,

das hier ist der Originalcode aus meinem Projekt:

Code: Alles auswählen

DO WHILE (nEnd := At(Chr(10), cString, nStart)) > 0
   AAdd(aGedcom, SubStr(cString, nStart, nEnd - nStart))
   nStart := nEnd + 1

   nSaetze := Len(aGedcom)
   IF nSaetze < 100
      oStatic:setCaption("Zeile " + Transform(nSaetze, "999,999,999"))
    ELSEIF nSaetze < 1000 .AND. nSaetze % 10 == 0
      oStatic:setCaption("Zeile " + Transform(nSaetze, "999,999,999"))
    ELSEIF nSaetze < 10000 .AND. nSaetze % 100 == 0
      oStatic:setCaption("Zeile " + Transform(nSaetze, "999,999,999"))
    ELSEIF nSaetze < 100000 .AND. nSaetze % 1000 == 0
      oStatic:setCaption("Zeile " + Transform(nSaetze, "999,999,999"))
    ELSEIF nSaetze % 10000 == 0
      oStatic:setCaption("Zeile " + Transform(nSaetze, "999,999,999"))
   ENDIF
ENDDO
Ich frage in der Schleife nur Chr(10) ab, weil ich vorher alle Chr(13) eliminiere. Und natürlich kontrolliere, daß da ein Chr(10) steht, wo eines hingehört. Andere Systeme (Unix, Mac, usw.) haben nicht immer crlf als Zeilenschaltung ...

Viel Erfolg damit.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: PHP vs Xbase++

Beitrag von Jan »

Manfred,

nochwas: Erstmal alle Daten ins Array lesen hat den Vorteil, daß Du dann exakt weißt, wie viele Zeilen Du hast. Und beim dann folgenden Schreiben in die dbf kannst Du die Länge nehmen, um eine saubere Fortschrittsanzeige einzubauen. Dann sieht der User wenigstens, daß da was passiert. Und die Fortschrittsanzeige aus dem XBPack 2 ist wesentlich schneller als ein oStatic:SetCaption(), wo man die Anzahl der Zeilen anzeigt (das mache ich in dem Code oben nur, weil ich da noch nicht weiß, was am Ende rauskommt).

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: PHP vs Xbase++

Beitrag von Manfred »

Jan,

was willst Du mir jetzt mitteilen? Zu ermitteln, wieviel Zeilen, sprich Sätze ich habe ist doch wohl das geringste Problem, oder? Und einfach ins Array einschieben und dann sagen das geht schneller, das wage ich erstmal zu bezweifeln, solange ich den Code nicht gesehen habe. Ich habe beide Varianten ausprobiert und mit der oben genannten geht es am schnellsten. Also, entweder Code, oder Thema beendet. Philosophieren bringt nicht viel.

OOps,

Du hattest 2 Beiträge hintereinander. Da habe ich Depp nicht hingesehen.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: PHP vs Xbase++

Beitrag von Jan »

Manfred,

??? Welchen Code denn noch??? Du wolltest sehen, wie ich die Datei in das Array bekomme, hattest nach meinem Code gefragt. Und den habe ich gepostet. Das da noch angezeigt wird, wie viele ich habe, ist doch nur Beiwerk. Aber wenn Dich das stört, hier noch mal das Einlesen pur:

Code: Alles auswählen

DO WHILE (nEnd := At(Chr(10), cString, nStart)) > 0
   AAdd(aGedcom, SubStr(cString, nStart, nEnd - nStart))
   nStart := nEnd + 1
ENDDO
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: PHP vs Xbase++

Beitrag von Manfred »

Jan,

Du hast Recht. Ich habe den Beitrag hier von Hand aufgerufen und deshalb nur den letzten von Dir gesehen. Und der passte dann wieder in mein Vorurteil. :roll: Ja, ich sollte mich ein wenig zügeln. Mache ich jetzt hiermit. :angry4:

Aber wie ich es sehe, mache ich es fast genauso, wie Du. Nur das ich immer nur einen Satz umwandel und den sofort in die DB schreibe.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: PHP vs Xbase++

Beitrag von Jan »

Danke für das Adrenalinspiegel-Absenken.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: PHP vs Xbase++

Beitrag von brandelh »

300.000 Datensätze in 30 Sekunden sind doch gar nicht so schlecht ...

Was macht schnell ?

EXCLUSIVER DBF Zugriff :!:
eventuell auf eine RAM-DISK :!:
KEIN INDEX beim Einlesen, später neu indizieren ist schneller.

Die RAM-Disk (da kann man dann auch das 4. GB bei Win7 32 Bit nutzen) nimmt man für eine temporäre Einlesedatei.
Wenn die fertig ist, muss man die Daten umkopieren copy file falls die DBF komplett ist, ansonsten append from ...

In beiden Fällen erwarte ich deutliche Beschleunigung, da die physische Festplatte dann mit größeren Blöcken bedient werden kann.

PS: Ansonsen Virenscanner aus, alles was die Platte beschäftigt aus, eventuell eine eigene Platte für diesen Job ;-)
Gruß
Hubert
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: PHP vs Xbase++

Beitrag von Manfred »

Hi Hubert,

300.000 in 30 Sekunden. Meinst Du mich damit? Ich glaube es waren 900.000.

OK, das sehe ich auch so. Wobei das nur der reine Speicherteil war. Also Text öffnen, und dann geht es ab. Mein Eingangsbeitrag war aber der, dass ich nicht verstanden habe, warum PHP so schnell ist. Ich habe dann später die DB Ex geöffnet, ohne Index. So wie es unter PHP auf läuft, in dem Fall. Und trotzdem ist PHP immer noch schneller mit dem Skript und es zeigt noch JEDEN Satz am Bildschirm an, der gerade erzeugt wird. (Allerdings Textfenster). Aber das hat sich ja jetzt einigermaßen relativiert. Der Kunde zieht zwar immer noch ein wenig die Augenbrauen, weil der gesamte Ablauf der damit zusammenhängt immer noch ca. 1 Stunde dauert, aber daran arbeite ich auch noch. Zumindest weiß ich jetzt mehr oder weniger genau, was ich anfänglich ungünstig gebaut hatte.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: PHP vs Xbase++

Beitrag von brandelh »

Hi,

PHP als Skriptsprache müsste langsamer sein, wenn man es als Schleife selbst programmiert, aber
  1. sind die Rechner sehr schnell geworden,
  2. gibt es für das Zerlegen von Text in Textteile bestimmt hochoptimierte Funktionen und
  3. nutzt PHP die DBF nicht wie wir als Datendatei (Satz sperren, lesen und schreiben etc.)
    sondern nur als Datenexport (soweit ich das weiß) ... und dabei kann er eben intern
    große Blöcke bilden und auf die Platte schreiben.
    Es ist ein riesen Unterschied ob ich immer nur 100 Byte oder 4 KByte als Block schreibe.
    Bei kleinen Blöcken kommt man ja kaum auf 2 MB/Sekunde.
  4. Ist Xbase was die Verarbeitungsgeschwindigkeit angeht leider keine Rakete :(
Gruß
Hubert
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: PHP vs Xbase++

Beitrag von Manfred »

Jou Hubert,

Du erwähntest es. Ich denke einmal, dass es an diesen Unterschieden liegen wird. Aber dann ist Xbase++ ja noch wieder relativ schnell, wenn man mein Ergebnis betrachtet. Und ich kann relativ zufrieden den Festtagen entgegen sehen. 8)
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: PHP vs Xbase++

Beitrag von brandelh »

Manfred hat geschrieben:Aber dann ist Xbase++ ja noch wieder relativ schnell, wenn man mein Ergebnis betrachtet.
=D> wer es nicht glaubt, soll es mal von Hand versuchen :D
Manfred hat geschrieben:Und ich kann relativ zufrieden den Festtagen entgegen sehen. 8)
das gönne ich dir auf jeden Fall 8)
Gruß
Hubert
Antworten