COMPUTERWORLD
Specializovaný týdeník o výpočetní technice
o Internetu
(CW 31/97)

WWW servery pro internetové obchodní aplikace mají něco navíc

Jan Stoklasa

Rozvoj internetového obchodování a elektronické komerce přináší zajímavé otázky, týkající se použitého softwaru a technologií. Tento článek se bude věnovat právě jim zajímat nás bude serverový software, který na takových obchodních serverech běží.

Do softwaru pro obchodní aplikace na Internetu určitě patří WWW servery. Není to však zdaleka všechno velký význam mají i databáze a šifrovací software. Spolupráce těchto tří složek dohromady tvoří jednotný celek, který nazýváme obchodním serverem pro internetový obchod. Pokud chcete, můžete v něm vidět vylepšený WWW server, databázi s webovým rozhraním nebo dokonce nový druh aplikačního softwaru. Obsah pojmu je samozřejmě ve všech případech stejný, bez ohledu na zvolený název.

Propojení s databázemi - základní kámen

Celé elektronické obchodování stojí a padá s databázemi. Do databáze je potřeba uložit všechny dostupné údaje zboží na skladě, informace o zákaznících, vyřízené a nevyřízené objednávky zákazníků. Z databáze získává internetová obchodní aplikace důležité informace o zákazníkovi (věk, zájmy, předchozí nákupy), ze kterých může pro každého vytvořit speciální podobu elektronického obchodu, přizpůsobit ho zákazníkově chutím a přáním a tím zvýšit pravděpodobnost nákupu.

Propojení databázových a internetových technologií je dnes pro známé dodavatele databází povinné. Prakticky všechny databázové servery nabízejí snadné propojení s WWW serverem. Pro potřeby obchodních aplikací je nutné, aby toto propojení bylo pokud možno realizováno formou speciálního serverového API. To přinese výkonnostní úspory pro počítačový systém, na kterém obchodní server poběží. Představa obchodníka o velké návštěvnosti jeho elektronického obchodu by neměla být omezována technickými limity softwaru.

Kdo k nám do obchodu přichází

Velkým problémem elektronického obchodu by mohla být anonymita zákazníků, kterou způsobuje bezestavový model práce s WWW. Zjednodušeně řečeno, server po skončení komunikace neví, kdo se k němu připojil.

Tento problém lze obejít různými způsoby. Jedním z nich je přidělení uživatelského jména a hesla, pod kterým si potom obchodní server pamatuje veškerou komunikaci se zákazníkem ve své databázi a bezestavovost WWW obchází.

Elegantnější řešení nabízejí cookies data, která si pamatuje klientův prohlížeč a na požádání je poskytne obchodnímu serveru. Pro každý obchodní server je rozumné, aby s cookies pracoval dostává tím silný prostředek pro sbírání informací o uživateli.

Naprogramujte si obchod

Dalším požadavkem pro budování elektronického obchodu je existence silného prostředku pro tvorbu uživatelského rozhraní a výpočetního jádra obchodu. Tato otázka úzce souvisí se skriptovacím jazykem pro WWW, který se stará o spolupráci mezi internetovou komunikací a ukládáním dat do databáze.

Prostředků pro tuto tvorbu je hned několik. Obecně fungující, ale náročný a pracný způsob spočívá v použití rozhraní CGI a známého programovacího jazyka (klidně skriptovacího). Data z objednávky zákazníka projdou rozhraním CGI do databáze, zpátky mu bude zaslána WWW stránka, vygenerovaná z dat v databázi.

Pružnější a pohodlnější způsob tvorby obchodních stránek nabízejí "obojetné" databázovo-webové servery s vlastními rozšířeními jazyka HTML. Standardní postup vypadá tak, že do stránky jsou umístěny speciální tagy, na jejichž místo se doplní data z databáze ve formátované podobě. Těmto tagům obojetný server rozumí, postará se o jejich nahrazení daty a ke klientovi tudíž putuje už hotová WWW stránka bez speciálních tagů. Stránka se speciálními tagy je tedy pouze šablonou pro cílovou stránku, potenciálně může z jedné šablony vzniknout celá spousta různých stránek.

Net Impact Dynamo

Sice nechci v tomto článku vynášet řešení jediného výrobce, ale v případě Net Impact Dynama tomu tak bude. Shodou okolností mám toto řešení Powersoftu pro obchodní servery v živé paměti, takže se stane naším vzorovým příkladem. Tím ale nechci tvrdit, že je to řešení nejlepší a ostatní výrobci nemají nárok.

Net Impact Dynamo je doplňkem databázového serveru SQL Anywhere. Pracuje jako doplněk WWW serveru, který interpretuje skriptovací jazyk pro databáze. Do šablony stránky (viz předchozí odstavec) můžete přímo vložit příkazy jazyka SQL, ze kterých pak vzniknou úhledné tabulky a seznamy dat. Dynamo je součástí osobního WWW serveru od Powersoftu, pro skutečné nasazení bude lepší použít samostané moduly Dynama, spolupracující s Internet Information Serverem a Netscape servery.

Důležitý prvek práce s elektronickým obchodem přihlášení a odhlášení uživatele řeší Net Impact Dynamo prostřednictvím cookies. Samozřejmě pouze interně, navenek se programátor nemusí o nic starat a veškeré přihlašování a odhlašování za něj obstará objekt programovacího jazyka (jmenuje se session).

Programovací jazyk Net Impact Dynama je objektový, hodně podobný JavaScriptu (ale pracuje na straně serveru, nikoli na straně klienta). Veškerou jeho sílu

reprezentují systémové objekty. Jejich prostřednictvím provádí autor virtuálního obchodu operace, u kterých nemusí znát vnitřní detaily, například právě přihlášení uživatele nebo otevření databáze.

Ukázkový obchod

Součástí NetImpact Dynama je ukázkový obchod se sportovním oblečením. Nechybělo mu nic, co by takový síťový obchod měl mít přihlášení zákazníka, seznam zboží, seznam objednávek.

Úpravami tohoto základního obchůdku by nebylo problémem vybudovat skutečně komerčně použitelnou obchodní aplikaci přizpůsobení obchodu zájmům zákazníka a vymožeností typu obrázky zboží.

Líbila se mi vyjadřovací schopnost jazyka Dynama. Celý obchod bylo v zásadě jenom pár šablon stránek, ale přesto dobře fungoval včetně přihlašování a odhlašování uživatele.

Placení

Předchozí odstavce řešily nabídkovou část obchodu. Samotné uzavření obchodu a platba jsou neméně důležité. Problémy, které v této oblasti stojí před elektronickými obchodníky, jdou za rámec tohoto článku. Na závěr si tedy alespoň stručně řekneme, že hlavní problém je v šifrování. Právě šifrování umožňuje obchodním aplikacím používání elektronických peněz a posílání čísel kreditních karet po otevřeném Internetu. Obchodní servery při komunikaci s klientem šifrují, používají přitom například normu SSL (Secure Sockets Layer). Klientovi se šifrování objevuje zdánlivě v malicherné podobě jako klíč v růžku prohlížeče, ale pro elektronické obchodování je kódování internetového provozu alfou a omegou.


| <<< | CW o Internetu | COMPUTERWORLD | IDG CZ homepage |