Webbservrar för e-handel kräver kunskap
För att vara användbar för elektronisk handel måste en webbserver klara krypterade förbindelser med SSL (Secure Sockets Layer) och kopplingar till affärslogiken med tillhörande databas. För att inte webbplatsen ska storkna vid några hundra användare måste det dessutom vara effektiva kopplingar. Med fel implementation av logik och kryptering kan annars även den snabbaste server ta slut redan vid några tiotal användare.
Webbservrarna måste vara lätta att gruppera i kluster. I idealfallet behöver programmen bara installeras en gång, sedan är det bara att plugga in serverburkar efter behov. Riktigt så enkel är tyvärr bara de allra dyraste Numa-lösningarna (Non-uniform Memory Access). Enklare servrar behöver konfigurering för varje ny burk med processorer.
Ser man på marknaden för webbservrar i allmänhet, alltså även sådana som inte används för e-handel utan bara innehåller information, har Apache och dess avkomlingar cirka 60 procent av marknaden. Microsoft ligger på 20 procent och Iplanet (Sun och Netscape) på 7 procent, allt enligt analysföretaget Netcraft.
För e-handel är situationen mer svåröverblickad. Många webbservrar kräver inloggning innan de kan användas. Metoderna för att automatiskt samla in statistik försvåras därför. Vi har gjort en informell undersökning utan statistisk signifikans på några stora handelsplatser. Den visar att Apache och avknoppningar som Stronghold inte är lika klart dominerade. Främst har Microsofts och Iplanets servrar större marknadsandel. Totalt sett har de tre grupperna runt 90 procent av marknaden, ganska jämnt fördelat.
Tendensen är serverkod
Men det går också att bygga webbaserad e-handel helt utan traditionell webbserver. Istället genereras all HTML-kod i en tillämpningsserver som exempelvis kör Java servlet-program. Fördelen är snabbare kommunikation eftersom det blir ett steg mindre mellan användare och databas. Nackdelen är att allt måste implementeras som kod i servern, inga av webbserverns traditionella funktioner för att visa statiska texter och bilder kan användas. Dessutom måste systemets säkerhet kontrolleras bättre eftersom tillämpningsservern är direkt tillgänglig från Internet. Lösningen passar alltså bäst för speciella ändamål. Flera branschbedömare antar dock att framtida system kommer att gå över till denna modell.
Idag är de flesta lösningar hybrider. En webbserver blandar både statisk HTML och dynamiskt genererade sidor.
Hur koppling till programlogiken ser ut varierar efter vald lösning. Det som ger bäst prestanda för enstaka servrar men sämst säkerhet är att exekvera kod direkt i webbservern. Exempel är Microsofts ASP-teknik eller Apache med Perl-modul. (Statiska HTML-sidor är naturligtvis alltid snabbast.)
En annan teknik är att separera ut det mesta av programlogiken och köra den i fristående program. Antingen på samma maskin som webbservern eller på separata maskiner. Fördelen är att det går att skala systemet mycket bättre eftersom bearbetningen kan spridas på flera maskiner. Dessutom går det att sätta brandväggar mellan webbserver och programlogik för ökad säkerhet.
Vill man inte bygga en egen e-handelslösning finns också möjligheten att utnyttja färdigbyggd infrastruktur; framförallt kan det passa för webbplatser som säljer standardprodukter direkt till konsumenter. I princip består lösningen av ett färdigt ramverk med kundvagn, kreditkortsverifikation och övriga serverfunktioner. Det enda användaren behöver göra för att få en fungerande handelsplats är att fylla i information och bilder. Flera sådana tjänster finns på nätet idag, varav några till och med är gratis.
Behövs mer avancerade funktioner för exempelvis logistik måste webbplatsen sättas samman med byggklossar. Typiska exempel är direktkopplingar till lager eller distribution.
Lyft ut krypteringen
För att få upp prestanda finns flera vägar att gå. Det som i första hand ställer till problem är kryptering, som suger mycket kraft samt tolkad programkod i webbsidorna. Krypteringen kan avlastas från webbserverns processor med till exempel en extern kryptobox eller ett nätverkskort med inbyggd kryptering. Programkod separeras med fördel ut och körs i separata »servlet» processor. Det är också en fördel om koden skrivs i ett programspråk som kan kompileras.

Text : Ola Sigurdson
(20000406)
OSYSTEM