vad betyder ’bot’?
en internetbot är ett datorprogram som körs på ett nätverk. Bots är programmerade för att automatiskt göra vissa åtgärder, till exempel genomsöka webbsidor, chatta med användare eller försöka bryta sig in i användarkonton.
till skillnad från tillverkningsrobotarna som används i fabriker, eller ”stridsrobotarna” byggda av robotikhobbyister, är en bot egentligen bara några rader kod med en databas. Ett annat sätt att uttrycka det är att en internetbot är en uppsättning instruktioner för datorer, plus en samling information. De flesta bots är ganska enkla i design, men vissa bots är mer komplexa och använder artificiell intelligens (AI) i ett försök att imitera mänskligt beteende.
att skriva en bot är ganska lätt för de flesta utvecklare, och ibland även för icke-utvecklare. Detta är en del av anledningen till att bots är så utbredda på Internet. I vissa fall är det inte ens nödvändigt att skriva faktiska kodrader för att skapa en bot – till exempel ger Twitter ett visuellt gränssnitt för användare att skapa bots som tweetar, retweetar, gillar och utför andra åtgärder på det sociala nätverket.
vilka är huvudkomponenterna i en internetbot?
en Bots arkitektur innehåller vanligtvis följande:
- applikationslogik
- databas
- API-integrationer
applikationslogiken är den körbara, maskinläsbara koden som botutvecklaren skriver och en dator kör. Chatbot-kodexemplet ovan passar i denna kategori.
databasen är insamlingen av data som boten drar från för att veta vilka åtgärder som ska vidtas. En bot kan spara ytterligare information i sin databas, till exempel när en webbskrapbot hämtar innehåll från en webbplats.
API: er tillåter botten att använda externa funktioner utan att utvecklaren behöver skriva dem. Allt utvecklaren behöver göra är att lägga till rätt kommandon i koden, och boten kommer att ringa ett API efter behov.
(ett API är ett sätt att integrera komplex mjukvarufunktionalitet som någon annan redan har byggt. Tänk på ett API som ett sätt att undvika att ”återuppfinna hjulet” när du programmerar en applikation. Till exempel kan en chatbot använda en väderapps API för att ge användarna detaljerad information om vädret om de ber om det. På så sätt behöver chatboten inte spåra vädret själv – istället kallar det bara den externa väderappens API.)
till skillnad från applikationer som användare är mer vana vid att interagera med, har de flesta bots inte ett användargränssnitt. Detta beror på att bots på Internet vanligtvis interagerar med webbsidor, appar och API: er, inte användare (även om de kan interagera med användare via chatt, sociala medier och andra kanaler).
Hur kan webbplatser och appar hantera överdriven bottrafik?
eftersom bots är relativt enkla att skapa är de extremt vanliga på Internet – ungefär hälften av all Internettrafik kommer från bots, både bra bots och dåliga bots.
vissa bots, som webbrobotar och chatbots, är viktiga för att hjälpa Internet att fungera korrekt och låta användare hitta den information de behöver. Men överdriven bottrafik kan överväldiga en webbfastighets ursprungsservrar, och skadliga bots kan utföra en mängd olika cyberattacker. För att förhindra dessa händelser kan webbplatser och webbappar använda robotar.txt-filer strategiskt, implementera hastighetsbegränsande och utnyttja bothanteringslösningar.
vill du dyka djupare in i botutveckling? Se det här blogginlägget om hur man skriver en serverlös chatbot.