[Java] Crawler zieht Server down?

  • Thread starter Thread starter counteam
  • Start date Start date
C

counteam

Guest
Huhu.

Ich habe in Java einen kleinen Crawl-Service geschrieben gehabt.
Was mich nun verwundert, dass wenn der Crawler gestartet wurde, am nächsten Tag der Debian-Server nicht mehr erreichbar ist.

Kann es evtl sein, dass die Internetleitung bzw der Server absichtlich eine verbindung nach außen blockt, weil der Crawler zu schnell und zu viele Daten "holt"?

Dies ist mir mal auf Windows aufgefallen, als ich für ein Java-Chat von mir einen Flooder zum Testen geschrieben hatte, damit ich sehen kann, wie sicher die Chatsoftware leztendlich ist - Hier war auch nach kurzer Zeit keine Internet-Verbindung mehr möglich.

Liegt es ggf. an den Belegten Ports, sodass alle Ports belegt werden und dementsprechend nichts mehr rein oder raus kommt?
 
Deine Analyse-Daten sind mehr als dürftig!
- Was bedeutet konkret "nicht mehr erreichbar"?
- Wie hast Du den Server wieder erreichbar gemacht?
- Was stand danach in den Logfiles?

Zusätzlich fehlen uns natürlich Info's über Deinen Crawler:
- Multithreaded? (evtl. mit eingebauten Grenzen?)
- Speicheraufwand?

Im Grunde gibt es viele Möglichkeiten eine Server von innen heraus abzuschießen. Typischer Fehler z.B.: Speicher-Miss-Management.

huschi.
 
Was bedeutet konkret "nicht mehr erreichbar"?
Der Server ist von jeglicher Seite nicht mehr erreichbar. Ein "Ping" scheitert, da der Server nicht mehr erreichbar ist.

Wie hast Du den Server wieder erreichbar gemacht?
Indem ich einen Hardware-Reoot beim Hoster beantragt habe.

Was stand danach in den Logfiles?
Der Crawler besizt eine eigene Logfile, muss hier aber nochmals nen Exception-Handling durchführen.

In den Systemeigenen Logfiles (syslog, auth.log, etc.) steht nichts relevantes. Einzigste in der auth.log - Dort wird derzeit wieder versucht mittels Bruteforce den Server zu knacken (Da muss ich mich gleich mal hinklemmen und fail2ban einstellen, da der die anscheinend nicht ins jail bringt).

Infos zum Crawler:
Multithreaded, nachdem eine Connection geöffnet wurde, wird diese wieder geschlossen, Speicheraufwand = don't now.

Der Crawler öffnet eine Internet-Seite, durchsucht Verlinkungen, speichert diese "neu gefundenen" Links in einer Vector und schließt die aktuelle verbindung wieder. Dies geschieht nacheinander mit allen gefundenen verlinkungen - Diese werden auch auf weitere Links "geprüft".
 
Haben deine Threads denn auch ein Hardlimit, oder öffnest du immer munter weiter neue Verbindungen, wenn du neue Links findest?
 
Back
Top