Temat: wydajny i skalowalny crawler - wybor technologii...
Robert B.:
Sądzę, że pytanie nie jest dobrze zadane.
wydaje mi sie, ze nie ma co tu uscislac : skalowalny + wydajny to wystarczajacy opis, choc ogolny, kilka osob dobrze to zrozumialo, kilka osob, nie zastanawialo sie czego dotycza te slowa, szerszy opis niewiele by zmienil
Jeśli masz na myśli tylko crawlera to raczej kierowałbym się w stronę PHP/CGI.
niczego nie wykluczam
W procesie "czytania strony" i tak 99% pracy to będzie proces transferu danych i/lub oczekiwania na odpowiedź z serwera.
tu juz bardziej rzecz w tym ile tych procesow/watkow na raz bedzie
Jak już pobierzesz i zapisze - dalsza obróbka może odbywać się w "czymkolwiek". Sądzę też, że będziesz musiał ustalić poszczególne procesy analizy zgromadzonych danych (nim zaczniesz z nich korzystać/prezentować je) i dopiero na tym poziomie (wiedząc jakie to będą procesy) wybierz język.
Mysle, ze crawler jest tutaj niezaleznym komponentem i o ile jego mozliwosci gromadzenia danych z internetu beda podyktowane wymaganiami odnosnie calego procesu realizowanego przez system, o tyle jego architektura ma byc zamknieta dla reszty swiata (innych podsystemow) i nie musi byc przez nie zrozumiala.
Nie sądzę byś budował Google - więc spokojnie jesteś w stanie zrealizować to w PHP / CGI bez "sięgania po assembler" czy też C/C++
Assembler jest tutaj zupelnie nie na miejscu, jego zastosowanie to pisanie sterownikow i jeszcze ewentualnie dzis optymalizowanie elementow obliczen w przypadku bardzo wymagajacych rozwiazan. Pewnie znalazloby sie jeszcze kilka zastosowan, ale nie tutaj oczywiscie.
---
Nie wiem do czego swoj crawler wykorzystuje google (poza wyszukiwarka oczywiscie) i co jeszcze tam po cichu buduje, wiec nie moge sie odniesc.
A skoro google sie nie chwali to i mnie nie wypada :-).
Tomasz Grzechowski edytował(a) ten post dnia 22.12.09 o godzinie 18:36