Crawl-Puffer wird nicht abgearbeitet

Hier finden YaCy User Hilfe wenn was nicht funktioniert oder anders funktioniert als man dachte. Bei offensichtlichen Fehlern diese bitte gleich in die Bugs (http://bugs.yacy.net) eintragen.
Forumsregeln
In diesem Forum geht es um Benutzungsprobleme und Anfragen für Hilfe. Wird dabei ein Bug identifiziert, wird der thread zur Bearbeitung in die Bug-Sektion verschoben. Wer hier also einen Thread eingestellt hat und ihn vermisst, wird ihn sicherlich in der Bug-Sektion wiederfinden.

Crawl-Puffer wird nicht abgearbeitet

Beitragvon MaxiFussel » Do Jan 27, 2011 5:25 pm

Sers alle zusammen...

wir benutzen seit etwa einem Jahr Yacy für ein spezielles Angebot und haben derzeit rund 1000 Domains, die regelmässig gecrawlt werden sollen.

Bis vor kurzem (ca. 3 Wochen) lief das auch noch wunderbar - ohne eine Änderung allerdings läuft mir jetzt der Crawl-Puffer voll (derzeit 652 Einträge) und wird augenscheinlich nicht abgearbeitet.

Ich such mich zu tote, finde aber bis auf nachfolgende Meldung aus dem Log keinerlei Ansatzpunkt:

SNIP
_________________________________
W 2011/01/27 17:19:53 PROXY Error while processing request 'GET http://124.108.121.183/?.src=bmk2&.intl ... d=1q2w3e4r HTTP/1.0':
Session_109.230.251.33:3705#0
Broken pipe
W 2011/01/27 17:19:53 StackTrace Broken pipe
java.net.SocketException: Broken pipe
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109)
at java.net.SocketOutputStream.write(SocketOutputStream.java:153)
at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
at java.io.BufferedOutputStream.write(BufferedOutputStream.java:126)
at net.yacy.kelondro.io.ByteCountOutputStream.write(ByteCountOutputStream.java:73)
at org.apache.http.entity.BasicHttpEntity.writeTo(BasicHttpEntity.java:130)
at org.apache.http.entity.HttpEntityWrapper.writeTo(HttpEntityWrapper.java:101)
at org.apache.http.conn.BasicManagedEntity.writeTo(BasicManagedEntity.java:108)
at net.yacy.cora.protocol.http.HTTPClient.writeTo(HTTPClient.java:409)
at de.anomic.http.server.HTTPDProxyHandler.fulfillRequestFromWeb(HTTPDProxyHandler.java:621)
at de.anomic.http.server.HTTPDProxyHandler.doGet(HTTPDProxyHandler.java:391)
at de.anomic.http.server.HTTPDemon.GET(HTTPDemon.java:420)
at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at de.anomic.server.serverCore$Session.listen(serverCore.java:731)
at de.anomic.server.serverCore$Session.run(serverCore.java:630)
_____________________________________-
SNAP


Vielleicht kann mich ja mal jemand mit der Nase auf den Punkt stupsen, der mir entgangen ist.

Übrigens habe ich mal das aktuelle Update laufen lassen vor 2 Tagen, was auch keine Verbesserung brachte.

System:
Debian Edge
DualCore-Proz mit 2,6 GHz und 8 GB Speicher, Yacy zugewiesener Speicher 2GB


Wäre schön, wenn jemand helfen könnte......danke hierfür schon vorab.

lG
Thomas
MaxiFussel
 
Beiträge: 6
Registriert: Do Jan 27, 2011 5:12 pm

Re: Crawl-Puffer wird nicht abgearbeitet

Beitragvon Orbiter » Fr Jan 28, 2011 10:02 am

Hallo Thomas
MaxiFussel hat geschrieben:wir benutzen seit etwa einem Jahr Yacy für ein spezielles Angebot und haben derzeit rund 1000 Domains, die regelmässig gecrawlt werden sollen.

cool!

Das Log-Schnipsel zeigt eine Situation bei der der Proxy benutzt wurde. Ihr benutzt das also auch als Proxy? Jedenfalls kann das nicht mit dem Crawler zusammenhängen.

Es gab im Dezember eine Änderung beim Crawler wo ein neuer Stack eingeführt wurde der nicht-indexierbare Dateien in eine extra queue geschrieben hat. Diese Queue wird dann auch abgearbeitet indem nur die URL der Datei indexiert wird. Ich sehe hier keinen Zusammenhang mit dem nicht-abarbeiten, aber das ist halt die einzige wesentliche Änderung im Kontext mit Crawl-Queues.

Welche SVN-Version läuft denn bei dir und bei was für einem Update ist der Fehler aufgetreten?
Kannst du das Problem durch ein Umschalten auf eine vorherige Version lösen?
Ist das Problem überhaupt erst nach einem Update aufgetreten oder einfach im laufenden Betrieb ohne Update?
Orbiter
 
Beiträge: 5796
Registriert: Di Jun 26, 2007 10:58 pm
Wohnort: Frankfurt am Main

Re: Crawl-Puffer wird nicht abgearbeitet

Beitragvon Low012 » Fr Jan 28, 2011 10:33 am

Mein Peer hat vor einiger Zeit ähnliche Proxyanfragen bekommen (siehe hier).

Was jetzt folgt ist wildeste Spekulation: Ich glaube, dass da jemand versucht, YaCy-Peers als Proxy zu missbrauchen, um per Bruteforce an Webmail-Zugangsdaten zu kommen oder schon bekannte Passwörter zu validieren. Ich komme darauf, weil die angefragten URLs immer so ähnlich wie das hier aussehen:

Aus MaxiFussels Log:
http://124.108.121.183/?.src=bmk2&.intl=nl&.help=1&.v=0&.u=c7q3ijt6f92tf&.last=&.last=&promo=&.bypass=&.partner=&pkg=&stepid=&.pd=pop_ver%253D0%2526c%253D%2526ivt%253D%2526sg%253D&.ab=&.done=http%3A//espanol.pop.yahoo.com/sports/%3Fei=UTF-8%26category=sports&login=handsome_hand&passwd=1q2w3e4r

Aus meinem Log:
http://e19.edit.cnb.yahoo.com/config/login?.intl=us&.src=ym&.done=http%3A//mail.cn.yahoo.com/%3F&.cnrid=ULP_60002&.challenge=%20'&login=small-tiger@yahoo.com.cn&passwd=SMALLTIGER&.remember=

Bei mir kamen die Anfragen von vielen unterschiedlichen IPs, so dass ich vermute, dass da vielleicht ein Botnet hinter hängt. Weil ich mir aber nicht vorstellen kann, dass jemand, der ein Botnet mit wahrscheinlich vielen hundert oder sogar tausend Rechnern kontrolliert, es speziell auf die paar YaCy-Peers abgesehen hat und weil in der Standardkonfiguration YaCy gar kein offener Proxy ist, sondern nur lokale Anfragen weiterleitet, gehe ich davon aus, dass das Internet nach "verdächtigen" Servern durchsucht wird, die aussehen, als wären sie potentiell offene Proxys. Bei mir kamen nach ein paar Tagen keine solche Anfragen mehr. Entweder, weil die Herde weiter zieht, um nicht durch langanhaltende Nutzung aufzufallen, oder weil irgendwas, irgendwo gemerkt hat, dass mein Proxy gar nicht offen ist.

So, Ende der wilden Spekulation.

Was mir nur eben eingefallen ist, ist dass der Crawler ja eine Pause einlegt, wenn der Proxy in YaCy angefragt wird, damit der Proxy nicht zu lahm reagiert. Kann es sein, dass diese Pause auch eingelegt wird, wenn der Request an den Proxy gar nicht legitim ist und daher nicht beantwortet wird?
Low012
 
Beiträge: 2214
Registriert: Mi Jun 27, 2007 12:11 pm

Re: Crawl-Puffer wird nicht abgearbeitet

Beitragvon MaxiFussel » Fr Jan 28, 2011 10:42 am

Das spezielle Angebot ist eine Suchmaschine rund um Flirten, Verführung, NLP usw. .... . Wir bieten das als Service kostenlos für die Pickup-Community an und steuern Yacy im Frontend via PHP an, um ein gefälliges Ergebnis zu erhalten und unsere Banner via OpenX sauber einblenden zu können. Zu sehen ist das Ganze hier: http://www.seduction-search.de

Back to Topic:

- das Problem trat ohne bewusstes Update auf - inwiefern möglicherweise Systemrelevante Security-Updates seitens Debian gemacht wurden ist mir nicht bekannt; Yacy wurde auf jeden Fall nicht upgedatet.
- Proxy-mässig dürfte deshalb der Fehler kommen wenn wir via php auf Yacy zugreifen - wobei auch hier nichts geändert wurde
- ich habe dann NACH dem auftauchen des Fehlers ein händisches Update via apt-get gefahren, es sollte also die aktuellste SVN drauf sein; wo sehe ich die Versionsnummer ?
- ich habe wirklich den Eindruck, dass er GAR NICHTS MEHR crawlt: ein Blick in die Admin-Konsole zeigt mir keinerlei Aktivität, also 0 PPM usw. ....
- wie schalte ich auf eine vorherige Version um ?
- es hängen derzeit immer noch ca. 660 URLs im Crawl-Puffer, ohne dass bemerkbar wäre dass Yacy mal los-crwalt
- auch ein händisch via Indexerzeugung->Crawl-Start(Expert) angestossener crawl läuft nur in den Crawl-Puffer und wird offensichtlich nicht ausgeführt (was ich auch am Server-Traffic sehe - normal sind 3-5 GB am Tag, derzeit dümpelt die Maschine bei wenigen dutzend MB)

Weitere Infos gerne auf Anfrage....

Einige andere Fragen hab ich noch:

- kann es sein dass die Anzahl der zurück gegebenen Ergebnisse nicht übereinstimmt mit der Anzahl der tatsächlichen Ergebnisse? Wir waren genötigt die Anzahl der Ergebnisse selbst mit PHP zu counten um im Ergebnis-Feld die richtige Anzahl anzeigen zu können....
- wo genau (Verzeichnis) speichert Yacy die Ergebnisse der crawls?
- gibt es eine Auflistung der zurückgegebenen Ergebnis-Map, also: welcher Wert steht wo und hat welche Bedeutung? Wir wollen in nächster Zeit noch einige Funktionalität von Yacy auch in unser Suchportal einbauen, zB die Geomap
- wenn ich anderen meine Yacy-Installation zum crawlen zur Verfügung stellen will (womit ich kein Problem hätte), und aber andersrum auch meine crawls verteilen möchte, welche Einstellungen sind wo vorzunehmen ?

Insgesamt: Yacy ist an sich ein geiles Teil - allerdings streckenweise sehr unübersichtlich ......


Thx for reply......und einen schönen Tag

Thomas
MaxiFussel
 
Beiträge: 6
Registriert: Do Jan 27, 2011 5:12 pm

Re: Crawl-Puffer wird nicht abgearbeitet

Beitragvon Low012 » Fr Jan 28, 2011 10:52 am

Was du kurz ausprobieren könntest, um meine krude Thesen zu bestätigen oder zu widerlegen wäre, die Seite http://localhost:8080/Performance_p.html aufzurufen und ganz unten bei "Online Caution Settings" (ich weiß nicht, was da in der deutschen Übersetzung steht, wenn du die benutzen solltest) für "Proxy" 0 einzutragen. Dann macht der Crawler keine Pause mehr, wenn der Proxy angefragt wird. Das macht dann zwar YaCys Proxy langsam, aber wenn du den sowieso nicht benutzt, ist das auch egal. Wenn ich Recht habe, sollte der Crawler dann wieder laufen. Wenn nicht, dann weiß ich wenigstens, dass ich Unrecht hatte.

edit: Habe grad mein Log gecheckt und ich habe auch wieder diese seltsamen Proxy-Requests. Mein Crawler war sehr langsam und als ich den "Online Caution"-Wert für den Proxy auf 0 heruntergesetzt habe, ging der PPM-Wert schlagartig hoch. @MaxiFussel: Bringt das bei dir eventuell auch was?
Low012
 
Beiträge: 2214
Registriert: Mi Jun 27, 2007 12:11 pm

Re: Crawl-Puffer wird nicht abgearbeitet

Beitragvon MaxiFussel » Fr Jan 28, 2011 11:08 am

BINGO !

Heisst in Deutsch "Onlinezugriff Verzögerung Einstellungen:"

Werte alle auf "0" gestellt und Yacy rennt wieder....performance-technisch kann ich noch nix negatives feststellen - hängt auch ne fette Maschine dahinter, und der Prozess liegt bei 0.99% im Durchschnitt, also durchaus verkraftbar....den Proxy nutzen wir wie gesagt eben nur local, für unsere Abfragen via PHP.....jetzt bin ich mal gespannt, was mir die Maschine an Traffic schmeisst, wenn sie 660 URLs aus dem Puffer abarbeitet......gggg

DAAAAAANKESCHÖÖÖÖN !!!!!!

Thomas
MaxiFussel
 
Beiträge: 6
Registriert: Do Jan 27, 2011 5:12 pm

Re: Crawl-Puffer wird nicht abgearbeitet

Beitragvon Low012 » Fr Jan 28, 2011 11:23 am

Wenn du die anderen Werte (außer Proxy) heruntersetzt, kann es sein, dass die Suchfunktion langsamer wird, wenn du gleichzeitig viel crawlst. Es kann natürlich sein, dass dein Maschine genug Leistung hat, dass das nicht weiter auffällt.

@Orbiter: Ich kann eben nicht nachsehen, aber kann man YaCy so ändern, dass der Crawler nur temporär pausiert, wenn der Proxy-Zugriff auch legitim ist?
Low012
 
Beiträge: 2214
Registriert: Mi Jun 27, 2007 12:11 pm

Re: Crawl-Puffer wird nicht abgearbeitet

Beitragvon MaxiFussel » Fr Jan 28, 2011 11:35 am

Nun, wie gesagt: ich kann noch keine Geschwindigkeitseinbussen feststellen (wie oben geschrieben: DUal-Core mit 2,6 GHz und 8GB Speicher und nem 2TB RAID)....

Der höchste Wert den er jetzt zwischendrin angenommen hatte waren rund 1600 PPM....was wohl ganz ordentlich ist.....

Kurz nochmal zu meinen vorigen Fragen: wie stelle ich unsere Maschine denn jetzt anderen zur Verfügung (aber eben so, dass deren Ergebnisse nicht bei uns in den Index laufen, also rein zum crawlen).


Thomas
MaxiFussel
 
Beiträge: 6
Registriert: Do Jan 27, 2011 5:12 pm

Re: Crawl-Puffer wird nicht abgearbeitet

Beitragvon Orbiter » Fr Jan 28, 2011 12:30 pm

was meinst du mit 'anderen zur Verfügung'? Wenn du das Freeworld netz meinst, dann geht das indem du den Peer als Robinson Peer laufen läßt.

Low012 hat geschrieben:@Orbiter: Ich kann eben nicht nachsehen, aber kann man YaCy so ändern, dass der Crawler nur temporär pausiert, wenn der Proxy-Zugriff auch legitim ist?

ich finde es ziemlich ärgerlich dass hier so ein undurchschaubares Verhalten ist und das hat bestimmt schon viele irritiert. Ich glaube auch dass die 'online caution' Schnee von gestern ist und ganz raus könnte. Wäre das ok?
Orbiter
 
Beiträge: 5796
Registriert: Di Jun 26, 2007 10:58 pm
Wohnort: Frankfurt am Main

Re: Crawl-Puffer wird nicht abgearbeitet

Beitragvon MaxiFussel » Fr Jan 28, 2011 1:02 pm

Mit "anderen" meine ich dass ich eben die crawl-ressourcen auch dem Freeworld zur Verfügung stelle ohne aber die Ergebnisse aus dem Freeworld in unseren Index zu übernehmen, weils ja keinen Sinn macht bei unserer sezialisierten Suchmaschine.

Welche Einstellungen brauche ich dann für den Peer ?
MaxiFussel
 
Beiträge: 6
Registriert: Do Jan 27, 2011 5:12 pm

Re: Crawl-Puffer wird nicht abgearbeitet

Beitragvon Lotus » Di Feb 08, 2011 11:53 am

Die Remote-Crawl Ergebnisse werden immer zum (passenden) Teil auch auf dem Peer gehalten der sie ausführt. Ist also mit getrenntem Index derzeit nicht möglich.

Orbiter hat geschrieben:ich finde es ziemlich ärgerlich dass hier so ein undurchschaubares Verhalten ist und das hat bestimmt schon viele irritiert. Ich glaube auch dass die 'online caution' Schnee von gestern ist und ganz raus könnte. Wäre das ok?

Undurchschaubar ja. Ist vielleicht noch sinnvoll um den nötigen Arbeitsspeicher zu begrenzen. Neue Maßname könnte sein die Anzahl der Threads temporär begrenzen.
Lotus
 
Beiträge: 1699
Registriert: Mi Jun 27, 2007 3:33 pm
Wohnort: Hamburg

Re: Crawl-Puffer wird nicht abgearbeitet

Beitragvon Quix0r » Di Feb 08, 2011 12:43 pm

@Lotus: Und das macht den Quellcode uebersichtlicher (samt damit verbundenes Verhalten des Peers)?

Sorry, ich wollte dich nicht angreifen. :) Aber "temporaer nicht laufende Threads" richt fuer mich stark nach komplizierten Code.

Wenn du KISS kennst, weisst du worauf ich hinaus will. :)
Quix0r
 
Beiträge: 1345
Registriert: Di Jul 31, 2007 9:22 am
Wohnort: Krefeld

Re: Crawl-Puffer wird nicht abgearbeitet

Beitragvon Lotus » Di Feb 08, 2011 6:08 pm

Ich habe nicht im Quellcode geguckt wie groß der Aufwand ist. Erst einmal eine Idee gesammelt. Und etwas wo die Anzahl der Threads festgelget wird, ist schon vorhanden. Man kann ja auch teilweise die Anzahl konfigurieren.
Lotus
 
Beiträge: 1699
Registriert: Mi Jun 27, 2007 3:33 pm
Wohnort: Hamburg


Zurück zu Fragen und Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron