DomainDB behöver serverkraft!

Permalänk
Medlem

Har en C++ variant som jag började på för några dagarsen. Kan fixa så den funkar mot den nya servern och lägga upp den om du vill

Visa signatur

"Sleep is one of those funny things about being a human being" - Marshall Brain
"Mike broke the hubble, Mike broke the hubble" - Mystery Science Theater 3000
"Det finns inget som kan kallas skrot!" säger Mulle Meck, "bara gamla saker som går att använda på nya sätt. Rulla ut och rulla på."

Permalänk
Medlem

Ja, Power! Gör gärna det

Visa signatur

/Jeppe

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av conio
Sådär, då är min första version av JSpindel, en spindel som bidrar till DomainDB.

Den är skriven i Java och är en så kallad Java Web Start-version (vilket gör att den automatiskt uppdaterar sig när jag släpper en ny version).

Ni hittar den här: JSpindel

Väldigt trevlig spindel måste jag säga! Men du har inte lust att lägga till ett fält där man ser hur många domäner som spindeln har gått igenom under sin körning? Skulle vara intressant att veta bara...

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Sirjeppe
Såhär ser indextabellen ut nu för checkeddomains:

PRIMARY PRIMARY 77235 Ändra Radera id address INDEX 38617 Ändra Radera address top INDEX 168 Ändra Radera top title FULLTEXT 1 Ändra Radera title

OBS! När de 457021 domäner som just nu finns i listan är genomsökta tycker jag att vi ska ha en spindel färdig som kan söka igenom den första domänen efter länkar på sidan till nya domäner, sedan kolla dom efter nya domäner osv... Så det verkligen blir en kravling

Nu går det MYCKET fortare att spara. Nu tar det ungefär 10 sekunder, vilket inte är så farligt med tanke på att det är 2+2 operationer per addering (dvs 400 stycken) och att det är lite overhead att köra via internet.

Ditt spindelförändringsförslag låter jätteintressant, kan bli riktigt kul att se hur många domäner du får ihop 8-).

En sak som slog mig, du/vi skulle behöva hitta på något kreativt för idiotiska topleveldomäner. Jag tänker t.ex. på .nu där du nu får varje domän du försöker testa registrerad (t.ex http://www.jagfinnsinte.nu ).

En annan sak är redirects. Just nu så följer vi redirects. Om du söker på din sida efter "Slashdot" så dyker det upp en träff. Sidan i sig har inte titeln slashdot, utan den omdirigerar till slashdot.org, vilket då blir felaktigt om du frågar mig.

Dock går det inte utesluta alla redirects, tittar man på min tomma sida linuxpower.nu så görs det en redirect till en underkatalog.

Lite förbättringsförslag 8-).

//C

Permalänk
Medlem

Vill du fortfarande ha fler bidragare? Har en eller två datorer (långsamma, 500mhz) jag inte använder.

Permalänk
Medlem

Neoecs... jag vill ha all datorkraft i världen! moa ha ha ha ha haaaaa

Visa signatur

/Jeppe

Permalänk
Medlem

Tyckte antalet domäner i databasen låg på runt 84.000 st tidigare idag, nu närmar det sig 100.000, det är ju en ganska bra ökning Eller var jag så trött att jag såg fel tidigare? Kan du på nåt sätt kolla hur många ip-adresser/personer som bidrar med data?

Permalänk
Medlem

killer00 - det kommer lite senare... Just nu känns det här mest som en utvecklingsperiod... Och skulle vi vilja dra igång sökmotorn på riktigt så är det kanske bra att starta om från början och gå igenom allt lite bättre :)...

[edit]conio... är det din spindel som är sjukt snabb eller? :D... det ökar ju hur mycket som helst nu!!! [/edit]

Visa signatur

/Jeppe

Permalänk
Medlem

Herregud, det går riktigt fort nu!

Var fan 75k sist jag kollade och det var för 2 timmar sedan.

Visa signatur
Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Sirjeppe
conio... är det din spindel som är sjukt snabb eller? :D... det ökar ju hur mycket som helst nu!!!

Kanske, jag tycker den presterar hyffsat, med tanke på att jag hämtar hem hela sidorna (onödigt när vi bara kollar title, men behövs ju när den ska moddas för att hitta nya sidor).

Just nu tycker jag min spindel hämtar/söker någonstans mellan 3-10 sidor per sekund. Det blir ungefär 12 000 addresser per timme (om man antar 7.5 sidor/sek). Du får väl prova den, den borde gå riktigt fort hos dig, som inte har så långt avstånd till databasen 8-).

Sedan gör ju ditt index underverk också, både för min spindel och php-klienterna (som i princip kör samma sql-kod).

Addering ner från två minuter till tio sekunder har positiva effekter 8-).

//C

EDIT: Får nog revidera ner mina siffror. När den inte hittar några sidor så går hastigheten ner rejält. Ett real-life test hemifrån visade att den knappt går igenom 1.3 sidor per sekund (cirka 5000 adresser i timmen).

Permalänk
Medlem

Jeppe
Du har inte övervägt att spara metataggarna också och inte bara title?

Visa signatur

Jag är konstig. Är du?
----
http://posera.nu/

Permalänk
Medlem

Freakie... det hade kanske varit gött!... kan ju spara dom i en egen kolumn i tabellen bara!

Visa signatur

/Jeppe

Permalänk
Medlem

Jeppe
Ja det brukar finnas lite mer beskrivning utav sidan i dessa taggar!
Men även om den är genererad av något programm, vem skaparen är osv.

Visa signatur

Jag är konstig. Är du?
----
http://posera.nu/

Permalänk
Medlem

En fråga, används userdomains eller är det uncheckeddomains som gäller?

Visa signatur

"Sleep is one of those funny things about being a human being" - Marshall Brain
"Mike broke the hubble, Mike broke the hubble" - Mystery Science Theater 3000
"Det finns inget som kan kallas skrot!" säger Mulle Meck, "bara gamla saker som går att använda på nya sätt. Rulla ut och rulla på."

Permalänk
Medlem

Power... båda används... userdomains är för sökorden som folk skriver in... men jag har redan börjat göra om systemet så att det bara kommer att vara en enda gigantisk tabell som innehåller allt - blir mycket smidigare! Eller så kanske jag gör två som jag hade förut - en med checkade domäner och en med ocheckade - för att tjäna lite performance (kom inte på vad det heter på svenska)...

Vad tror ni? Behövs två tabeller, eller kan jag lika gärna köra allt i en? Just nu är det 4 tabeller...

checkeddomains - alla domäner som är färdigsökta och indexerade

checklist - en lista med alla domäner som någonsin sökts igenom (för att kunna kontrollera att samma domän inte sökts igenom fler en en gång i månaden)

uncheckeddomains - mja... säger sig själv

userdomains - tabell med alla sökord som folk skriver in

Framtiden:
domains - checkade domäner

predomains - ocheckade domäner (3 olika status levels: 0 - ej checkad, 1 - checkad och indexerad, 2 - checkad, indexerad och även checkad efter andra domäner)

Låter det bra?

Visa signatur

/Jeppe

Permalänk
Medlem

Hmm.. "145591 domains in the database"... Går det inte lite läskigt snabbt nu? Måste jag ha SQL och PHP installerat för att köra det eller finns det något alternativ?

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Sirjeppe

Framtiden:
domains - checkade domäner

predomains - ocheckade domäner (3 olika status levels: 0 - ej checkad, 1 - checkad och indexerad, 2 - checkad, indexerad och även checkad efter andra domäner)

Låter det bra?

Prestanda är performance på svenska 8-).

Uppdelningen fungerar väl, men jag förstår inte vad status 2 (och ev. 1) har att göra i predomains-tabellen isf.

Som din största tredjepartsutvecklare (har inte sett något mer från C#-klienten) så hade jag föredragit ifall man hade kunnat anropa ditt "system" som webbtjänster istället (och nej, inte SOAP).

Jag är lite smått nervös över att du har en databas öppen på internet sådär 8-). Dessutom så blir prestandan lidande, då varje roundtrip (fråga och svar) tar några tiondelar av sekunder att utföra.

Det hade varit bättre ifall du hade något i stil med webbtjänster, en där man får ut en batch med domäner att söka, och en där man kan posta sina resultat till.

Om man gör det på det viset så behöver "man" (man som i spindelutvecklare) ändra på något bara för att du gör databasförändringar.

De två ytterligare tjänsterna jag kan tänka mig (du har ju redan två, en för versionskontroll och bufferstorlek) är getchunk.php som returnerar ett gäng domäner att testa (t.ex i formatet address;top med en rad per post) och sedan sendresponse.php som idag skulle ta en post med datat i (t.ex address;top;title;spidername).

Det skulle kanske förenkla för dig som php-utvecklare också, då man inte behöver ansluta till databasen då select, insert or update tar tid för klienterna där också.

Postningen av resultatet blir ju lite lurigare, men det finns säkert någon som gjort en POST i php förut.

Mina åsikter 8-)

//C

EDIT:

Neoecs: Det finns ett minst ett alternativ, min JSpindel.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av conio
Prestanda är performance på svenska 8-).

Uppdelningen fungerar väl, men jag förstår inte vad status 2 (och ev. 1) har att göra i predomains-tabellen isf.

Som din största tredjepartsutvecklare (har inte sett något mer från C#-klienten) så hade jag föredragit ifall man hade kunnat anropa ditt "system" som webbtjänster istället (och nej, inte SOAP).

Jag är lite smått nervös över att du har en databas öppen på internet sådär 8-). Dessutom så blir prestandan lidande, då varje roundtrip (fråga och svar) tar några tiondelar av sekunder att utföra.

Det hade varit bättre ifall du hade något i stil med webbtjänster, en där man får ut en batch med domäner att söka, och en där man kan posta sina resultat till.

Om man gör det på det viset så behöver "man" (man som i spindelutvecklare) ändra på något bara för att du gör databasförändringar.

De två ytterligare tjänsterna jag kan tänka mig (du har ju redan två, en för versionskontroll och bufferstorlek) är getchunk.php som returnerar ett gäng domäner att testa (t.ex i formatet address;top med en rad per post) och sedan sendresponse.php som idag skulle ta en post med datat i (t.ex address;top;title;spidername).

Det skulle kanske förenkla för dig som php-utvecklare också, då man inte behöver ansluta till databasen då select, insert or update tar tid för klienterna där också.

Postningen av resultatet blir ju lite lurigare, men det finns säkert någon som gjort en POST i php förut.

Mina åsikter 8-)

//C

EDIT:

Neoecs: Det finns ett minst ett alternativ, min JSpindel.

Håller med! Det vore skönt att slippa att krånga med SQL och man slipper ändra databashanteringen i programmet varje gång du gör en ändrig på strukturen.

Visa signatur

"Sleep is one of those funny things about being a human being" - Marshall Brain
"Mike broke the hubble, Mike broke the hubble" - Mystery Science Theater 3000
"Det finns inget som kan kallas skrot!" säger Mulle Meck, "bara gamla saker som går att använda på nya sätt. Rulla ut och rulla på."

Permalänk
Medlem

Ja, webtjänster är en väldigt bra idé conio... slipper man lämna ut lösenordet till databasen... Å andra sidan skulle man ju bara kunna ge ut det till dom som ska köra spindeln och hoppas att dom är seriösa nog att kunna sköta det på ett korrekt sätt! Men kan man eliminera det så är det ju bra... Skulle man använda tjänster som du säger skulle man behöva någon form av identifikationssystem hur som helst - annars skulle ju vem som helst kunna posta helt felaktig information osv... Om det inte finns något lösenordsskydd alls menar jag...

Har nu gjort en egen sida till spindeln ... kommer även en form av diskussionsdel till den senare när jag har tid.

Tänkte att det skulle behövas någon form av lättöverskådlig sammanfattning för allt som har med spindeln att göra (så att alla strävar mot samma mål med sina spindlar) - och det är även på SDC som de kommande statsen för spindlarna kommer att publiceras senare. Och adressen dit är:

Spindel Development Centre:
http://domaindb.mine.nu/domaindb/sdc

Säg till om jag har glömt någon feature som ni önskat/gett förslag på så lägger jag upp det där...

Visa signatur

/Jeppe

Permalänk

Har java spindeln samma funktioner som PHP versionen?

Visa signatur

Neun und neunsich.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av C22H28N2O
Har java spindeln samma funktioner som PHP versionen?

I stort sett så är det samma.

Den skiljer sig dock på några detaljer. Den sparar aldrig ner några lokala filer (mellanlagring) utan håller allt i minnet, men annars så är det samma regexp och databas som används.

//C

Permalänk
Medlem

Jeppe
Borde du inte kunna låta alla som spindlar att regga sig för att på så sätt få en hash/sha1 utav någonting för att identifiera sig med både när man begär data, lägger till data och skickar status.

Visa signatur

Jag är konstig. Är du?
----
http://posera.nu/

Permalänk
Medlem

Jo, det skulle nog kunna funka kanske... Då gör jag så att jag kopplar en hash mot ett ip-nummer... Det borde kunna vara ganska säkert!

Visa signatur

/Jeppe

Permalänk
Medlem

Jeppe
Nja att koppla det mot ett ip är nog inte så bra, eftersom inte alla sitter på ett fast IPnummer...

Du kanske kan ha någon nytta utav det här om du funderar på en sådan funktion: http://www.phpsidan.nu/res_articles.php?view=art&id=13

Visa signatur

Jag är konstig. Är du?
----
http://posera.nu/

Permalänk
Medlem

Ja, det där ser ju bra ut... Kan fixa det!

Conio:
din spindel är sjukt effektiv :D... Du har snart lagt till 100000 nya domäner på ett dygn typ.. TACK! Sen undrar jag... Är det lätt att skicka ett formulär med POST-metoden i java? Skulle jag kunna fixa ett sånt där lösenordsskydd och din spindel hänger fortfarande med?

Eller kraschar det på javascriptet?

VARNING!
Min hårddisk på Weston (laptopen som hostar DomainDB) kraschade för första gången nyss! Den har knäppt rätt mycket och låter konstigt och nyss dog den alltså för första gången. Blev tvungen att hårdreboota datorn. Så jag vill bara utfärda en varning om att den kan komma att gå ner när som helst - och då kommer det att dröja länge innan den kommer upp igen. Den gick dock igång igen efter omstarten och jag har nu tagit backup så långt som vi kommit hittills...

Någon som sitter och häckar på en 2,5" hdd som dom kan skänka till en behövande? (Eller kanske för en rimlig slant?)

[edit]Har kastat in 6 miljoner nya domäner nu att leta igenom så vi får lite mer tid på oss att få igång v4.3 som jag tänkte kalla för Hunter (för att den jagar nya domäner på varje domän)[/edit]

Visa signatur

/Jeppe

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Sirjeppe
Ja, det där ser ju bra ut... Kan fixa det!

Conio:
din spindel är sjukt effektiv :D... Du har snart lagt till 100000 nya domäner på ett dygn typ.. TACK! Sen undrar jag... Är det lätt att skicka ett formulär med POST-metoden i java? Skulle jag kunna fixa ett sånt där lösenordsskydd och din spindel hänger fortfarande med?

Eller kraschar det på javascriptet?

Trist med din disk! Tyvärr har jag inga 2.5" över till dig (har bara en, och det är i min fungerande laptop, så den vill jag gärna ha kvar 8-) ).

Att posta ett formulär är hur lätt som helst, så det är inga problem. Någon krash kommer det inte bli, men javascriptet ska ju köras någonstans, och då blir det värre. Hur som helst, alternativet är ju att implementera funktionaliteten i Java istället, vilket också är lätt, då det finns md5- och sha1-funktioner i basbiblioteket.

För att göra det enkelt för oss maskinavläsare så vore det bästa ifall det inte var någon HTML utan att du bara skickade challengen som ren text (som med ditt versionsnummer).

Så något i stil med detta:

//login.php session_start(); $challenge = $_SESSION['nonce']; if( !$challenge ) { $challenge = generateChallenge(); } if( $_POST['hashpw'] ) { //Verifiera inloggningen enligt Freakies länk if( passwordOk ) { //Set user info in session echo "OK"; } else { echo "PWFAIL"; } } else { echo $challenge; }

Du förstår poängen, ingen html, bara ren lättolkad text 8-).

//C

Permalänk
Medlem

Är snart klar med min C++ bot. Men ska jag lägga till att den följer redirects?

Visa signatur

"Sleep is one of those funny things about being a human being" - Marshall Brain
"Mike broke the hubble, Mike broke the hubble" - Mystery Science Theater 3000
"Det finns inget som kan kallas skrot!" säger Mulle Meck, "bara gamla saker som går att använda på nya sätt. Rulla ut och rulla på."

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Power
Är snart klar med min C++ bot. Men ska jag lägga till att den följer redirects?

Svårbedömd fråga. Men om valen står mellan att följa alla redirects och inga så tror jag det är bättre att följa alla.

//C

Permalänk

jag hjälper till lite med

Visa signatur

//Patrik
Intel Core 2 Duo, 2048MB RAM, Gainward 8800 GTS 640MB, 500GB HDD, Samsung SyncMaster 940BW

Permalänk

Det har kommit in mååånga nya dommäner på sistone.

Visa signatur

Neun und neunsich.