U-- °LoneWolf° Geschrieben 6. Juli 2006 Teilen Geschrieben 6. Juli 2006 Hi zusammen. Ich habe einen WebTracker gebaut, dieser läuft über unser seiten und erstellt einen HTML Export. Durch das einbinden von Threads habe ich aus 6 std. ca.2std. hin bekommen. Jetzt ist meine frage kann ich da ncoh weiter optimieren z.b. durch die anzahl der Threads. Also gibt es eine Ideal zahl oder gilt je mehr desto besser so das ich jede analyse und jeden download in einen eigen thread packe? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Bubble Geschrieben 6. Juli 2006 Teilen Geschrieben 6. Juli 2006 Was ist ein "WebTracker"? Was wird genau exportiert? Welche Algorithmen verwendest Du und wofür? Was hast Du wie auf Threads aufgeteilt? Wie viele Eingabedaten sind zu verarbeiten? Ohne all diese (und weitere) Angaben kann man keine sinnvolle Aussage über Optimierungen machen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
U-- °LoneWolf° Geschrieben 6. Juli 2006 Autor Teilen Geschrieben 6. Juli 2006 Was ist ein "WebTracker"? Sorry dachte das wäre durch den Namen klar (Von HTTRACKER) damit kannst du Webseiten Abspeichern. Um sie beispeilsweise auf einer cd zur verfügung zu stellen usw. Was wird genau exportiert? Unsere Intranet Seiten Welche Algorithmen verwendest Du und wofür? Also da ich den coed aus diversen Gründen hier nicht Posten darfin eine kurze erläuterung Schleife für i < tife i++ { für alle Webseiten in liste {starte Thread Analyse { Öffnet wesite suche nach allen Html Elementen(Bilder, Links usw.) zur liste Hinzufügen } } für alle elemente in liste { Starte Thread Download { Downloade alle elemente die keine website sind wenn sie Website sind änder Datentyp auf website } } } Was hast Du wie auf Threads aufgeteilt? Wie viele Eingabedaten sind zu verarbeiten? Es gibt eine Thread Funktion für DIe analyse so das mehrer Analysen gleichzeitg laufen können. Genau so für den Download. wird bei enede der analysen auf alle threads gewartet befor der download startet da an dieser stelle ein sync. Statfinden muß Ohne all diese (und weitere) Angaben kann man keine sinnvolle Aussage über Optimierungen machen. Sorry dachte da gäbe es vielleicht einen allgemeinen weg so nach dem schema bei n Threads wird die Performance schlechter. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Trux Geschrieben 6. Juli 2006 Teilen Geschrieben 6. Juli 2006 Also so mal pauschal, ich blick da noch nicht durch aber wirds mal versuchen... Also warum speicherst du nicht während der analyse? Würde doch zeit sparen, wenn du die Seiten nicht alle 2mal abrufen musst. Denn würde ich das so machen das du eine Seite lädst, dir alle verweise reinziehst, und dann für jeden verweis einen thread startest der wieder die neue Seite analysiert und auch speichert etc. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Bubble Geschrieben 6. Juli 2006 Teilen Geschrieben 6. Juli 2006 Aha, eine Art Webcrawler soll es werden. Bei rechenintensiven Anwendungen ist 1 Thread pro CPU oder Core ein sinnvoller Ansatz. Da im Beispiel die Threads jedoch unterschiedlich lange durch Warten auf eine Antwort vom Webserver blockieren, dürfte mehr als 1 Thread pro Kern sinnvoll sein. Wie viele, kann man experimentell ermitteln. Zu viele Threads bremsen das OS aus. Ich vermute, dass man noch an anderer Stelle die Leistung verbessern könnte, aber ohne Sourcecode kann man wenig dazu sagen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
U-- °LoneWolf° Geschrieben 7. Juli 2006 Autor Teilen Geschrieben 7. Juli 2006 Alles klar schon mal thx. Was die Anzahal angeht heist das wohl das, dass optimum von Hompage zu Hompage unterschiedlich ist. Da hier beispielsweise die anzahl analysen und Downloads sich auf Wartezeitn usw. auswirkt. @Trux: Die Idee ist gut (Hab ich zu erst so machen wollen) nur leider führte das bei mir zu einer selsamen trägheit, ab einer gewissen Tiefe. Genaue werte habe ich nciht mehr im kopf. Ich vermute das Threads in Threads in Threads nicht so der burner sind. kA warum. Was mir gerade noch spontan eingefallen ist. z.Z. laufe ich bei jedem durchlauf der hauptschleife alle elemente durch und bearbeite sie nur wenn sie noch nicht bearbeitet sind. Wenn ich nun die bereits bearbeiteten elemente einfach raus nehem sollte das auch ncoh mal ein paar minuten rausholen. Achja nur mal ein kleiner Anhaltspunkt brauche derzeit für eine HP mit 10 Ebenen und ca 2000 Dateien 90 min für anaylse download und nachbearbeitung. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Bubble Geschrieben 7. Juli 2006 Teilen Geschrieben 7. Juli 2006 Achja nur mal ein kleiner Anhaltspunkt brauche derzeit für eine HP mit 10 Ebenen und ca 2000 Dateien 90 min für anaylse download und nachbearbeitung. Für 2000 Dateien normaler Webseiten erscheint mit das als eher langsam (ich habe aber keinen wirklichen Vergleich), vergleiche doch mal mit ähnlichen Programmen. Sind besonders große Dateien dabei oder ist der verwendete PC nicht besonders leistungsfähig? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
U-- °LoneWolf° Geschrieben 10. Juli 2006 Autor Teilen Geschrieben 10. Juli 2006 Moin Moin, alsopp zum vergleich meine erste version brauchte für die gleiche seite 6 std. naja und der HTTRACKER ist in etva genauso schnell (vielleicht 10 min schneller). Nur verhaut der sich gelegentlich beim speichern so das wenn ich auf Link A klicke zu seite B komme. Woraus wieder eine mehr arbeit von ca. 2std entseht da man jede seite kontrollieren und geg. korriegieren muss Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
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.