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 |