Ich hab mal einen einfachen (meiner Meinung nach voll ausreichenden) Parser für den Range Header in Python geschrieben (http://pastie.org/2423685) und der parst das auf meinen Desktop in 0.123 Sekunden, wobei ich nebsbei noch MP3s höhre. Die ausgabe des Rangesets in der Graphischen Python Shell (IDLE) ist in der Zeit auch drinnen.
PS: Ohne MP3 im Hintergrund und ohne Ausgabe der Liste brauchts nur 0.017 Sekunden. Und das eben in Python, nicht in C/C++.
2 mal bearbeitet, zuletzt am 24.08.11 20:32 durch bloody.albatross.
> PS: Ohne MP3 im Hintergrund und ohne Ausgabe der Liste brauchts nur 0.017
> Sekunden. Und das eben in Python, nicht in C/C++.
Und? Länger sollte das auch nicht dauern! Python ist schon schnell. :)
----------------------------
Wer den Großteil der folgenden acht Wörter nicht auf Anhieb entschlüsseln kann, bzw. sich vorstellen kann, um welche bekannten (sehr einfachen) "Codierungen" es sich handelt, ist entweder BWLer, Anonymous-Kiddie, CDU/FDP Berater, Apple-User oder hat beim IT-Studium geschummelt. :)
1.) 71, 111, 108, 101, 109
2.) 476F6C656D
3.) 1Z, 33, 30, 2T, 31
4.) Tbyrz
5.) R29sZW0=
6.) dd61c3dc259e5c43722e89409499b669
7.) B890939A92
8.) 78DA73CFCF49CD0500059F01F5
>> PS: Ohne MP3 im Hintergrund und ohne Ausgabe der Liste brauchts nur 0.017
> Sekunden. Und das eben in Python, nicht in C/C++.
Und? Länger sollte das auch nicht dauern! Python ist schon schnell. :)
----------------------------
Wer den Großteil der folgenden acht Wörter nicht auf Anhieb entschlüsseln kann, bzw. sich vorstellen kann, um welche bekannten (sehr einfachen) "Codierungen" es sich handelt, ist entweder BWLer, Anonymous-Kiddie, CDU/FDP Berater, Apple-User oder hat beim IT-Studium geschummelt. :)
1.) 71, 111, 108, 101, 109
2.) 476F6C656D
3.) 1Z, 33, 30, 2T, 31
4.) Tbyrz
5.) R29sZW0=
6.) dd61c3dc259e5c43722e89409499b669
7.) B890939A92
8.) 78DA73CFCF49CD0500059F01F5
Und ich würde sagen: Man hat auch ein Leben jenseits des Bildschirms ;)
bloody.albatross schrieb:
--------------------------------------------------------------------------------
> PS: Ohne MP3 im Hintergrund und ohne Ausgabe der Liste brauchts nur 0.017
> Sekunden. Und das eben in Python, nicht in C/C++.
Möglicherweiße liegt genau da der Hund begraben, da man in C/C++ bei so was wesentlich mehr aufpassen muss?
bloody.albatross schrieb:
--------------------------------------------------------------------------------
> Ich hab mal einen einfachen (meiner Meinung nach voll ausreichenden) Parser
> für den Range Header in Python geschrieben.
Hallo nochmal! Ich habe mir deinen Code angesehen und zwei Fehler gefunden, die eine Exception auslösen.
Du darfst doch nicht einfach den Daten vertrauen, die du im Header geschickt bekommst!!!
Folgendes funktioniert nicht:
bytes=0-0,
oder ...
bytes=0
... jeweils aus unterschiedlichen Gründen.
Guck dir deinen Code lieber noch mal an! :)
----------------------------
Wer den Großteil der folgenden acht Wörter nicht auf Anhieb entschlüsseln kann, bzw. sich vorstellen kann, um welche bekannten (sehr einfachen) "Codierungen" es sich handelt, ist entweder BWLer, Anonymous-Kiddie, CDU/FDP Berater, Apple-User oder hat beim IT-Studium geschummelt. :)
1.) 71, 111, 108, 101, 109
2.) 476F6C656D
3.) 1Z, 33, 30, 2T, 31
4.) Tbyrz
5.) R29sZW0=
6.) dd61c3dc259e5c43722e89409499b669
7.) B890939A92
8.) 78DA73CFCF49CD0500059F01F5
bloody.albatross schrieb:
--------------------------------------------------------------------------------
> Ich hab mal einen einfachen (meiner Meinung nach voll ausreichenden) Parser
> für den Range Header in Python geschrieben (pastie.org und der parst das
> auf meinen Desktop in 0.123 Sekunden, wobei ich nebsbei noch MP3s höhre.
> Die ausgabe des Rangesets in der Graphischen Python Shell (IDLE) ist in der
> Zeit auch drinnen.
Tut mir leid, aber du hast von der Komplexität des Problems gerade 0 verstanden und dein Kiddie-Script führt auch nicht ansatzweise das aus was Apache macht. Das hat mit dem Parsen von HTTP rein gar nichts zu tun. Ein paar Split-Anweisungen kann ja jeder machen. Deshalb wird kein vollwertiger Parser draus und syntaktische/semantische Fehler im "Request" scheinst du erst gar nicht zu beachten.
> PS: Ohne MP3 im Hintergrund und ohne Ausgabe der Liste brauchts nur 0.017
> Sekunden. Und das eben in Python, nicht in C/C++.
Wahllos irgendwelche Zeiten und wilde Behauptungen in den Raum stellen? Du weißt schon, dass der Apache völlige wertlos wäre, wenn er nur blind durch eine mit Beistrichen schön getrennte Liste durchjagen würde, ohne irgendwas zu tun?
1 mal bearbeitet, zuletzt am 25.08.11 07:28 durch elgooG.
+1
bloody.albatross schrieb:
--------------------------------------------------------------------------------
> Ich hab mal einen einfachen (meiner Meinung nach voll ausreichenden) Parser
> für den Range Header in Python geschrieben (pastie.org und der parst das
> auf meinen Desktop in 0.123 Sekunden, wobei ich nebsbei noch MP3s höhre.
> Die ausgabe des Rangesets in der Graphischen Python Shell (IDLE) ist in der
> Zeit auch drinnen.
>
> PS: Ohne MP3 im Hintergrund und ohne Ausgabe der Liste brauchts nur 0.017
> Sekunden. Und das eben in Python, nicht in C/C++.
RFC nicht gelesen? Be strict with what you send, but be very graceful with what you receive. Steht so relativ wörtlich im RFC zu HTTP... offensichtlich nicht beachtet. Abgesehn davon, wie bereits von anderen erwähnt, python hat mit C++ so viel zu tun wie windows mit dem linux-kernel.
Du trägst deine Nase ziemlich hoch. Gerade die Entwickler mit einer selbstüberschätzenden Einstellung sind oft auch diejenigen, die die übelsten Sicherheitslöcher reißen.
Merke: Wenn du ein Problem für leicht lösbar hälst, hast du dessen Komplexität einfach nur noch nicht erfasst.
Shred schrieb:
--------------------------------------------------------------------------------
> Du trägst deine Nase ziemlich hoch. Gerade die Entwickler mit einer
> selbstüberschätzenden Einstellung sind oft auch diejenigen, die die
> übelsten Sicherheitslöcher reißen.
>
> Merke: Wenn du ein Problem für leicht lösbar hälst, hast du dessen
> Komplexität einfach nur noch nicht erfasst.
+1.1
Kommentare: 170 | letzter Beitrag 15:54 Uhr
Kommentare: 94 | letzter Beitrag 26.05. 19:45
Kommentare: 68 | letzter Beitrag 17:25 Uhr
Kommentare: 68 | letzter Beitrag 14:48 Uhr
Kommentare: 64 | letzter Beitrag 26.05. 17:51
E-Mail an news@golem.de

T-Pod ist ein kleines Kraftwerk für unterwegs. Betrieben mit einer kleinen Kerze, erzeugt das Gerät Strom für eine Leselampe oder das Laden des Smartphone-Akkus.

Windows 8 kann auf entsprechender Hardware in weniger als 8 Sekunden booten. Dabei bleibt zu wenig Zeit, um den Bootvorgang zum Sprung ins Bios, ins UEFI-Menü oder in die Startauswahl von Windows zu unterbrechen.

Kim Schmitz will Zugriff auf seine 135 Computer und Festplatten, die die neuseeländischen Behörden im Januar 2012 beschlagnahmt haben. Das FBI halte das Material von der Justiz in Neuseeland zurück, um seine Verteidigung im Fall Megaupload zu erschweren, sagt er.

Renesas ist nach Elpida der zweite schwer angeschlagene japanische Chiphersteller. Renesas, das Hitachi, Mitsubishi Electric und NEC gehört, macht Verlust und will seine größte Fabrik verkaufen.

RIM soll in den kommenden Tagen erneut einen massiven Stellenabbau ankündigen. "Ich habe herausgefunden, welche Teile ich in meinem Puzzle nicht mehr benötige", sagte Firmenchef Thorsten Heins.

Ein britisches Blog will erfahren haben, dass Facebook den norwegischen Browserhersteller Opera Software kaufen will. Beide Unternehmen wollen sich dazu nicht äußern.