Beruflich Dokumente
Kultur Dokumente
RESUMEN
L a T ecno lo g a CO ME T co n s i s t e en l a ap l ic a c i n d e u n a v ie j a t cn i c a W eb q u e
len tamen te est r esu cita ndo d esd e las p rofund id ades d e la h isto r ia , el cual nos
p er mi t e crea r ap l ic a c io n es co l ab o r a t i v a s, in t er a c t iv as y actu a l iz ad a s , s a can d o u n
me j or p rovecho a las cap acid ad es de los nav egadores actuales.
INTRODUCCIN
E l pa rad ig ma tr ad ic ion al d e la W eb e s S n c rona. Esto ind ica qu e p ara cada ped ido
d esd e un clie n te (Nav egador W eb) ex is te un a corr espond iente r espu esta d e un
serv idor (Serv idor W eb). Cu ando una p g ina W eb es v isu aliz ad a, los d atos
con ten ido s en la misma son esttico s en el navegador del u suar io y estos dato s no
son actu a lizados h a sta qu e la p g ina sea ref re sca da nuev a me n te . S in emb a rgo ex iste
un n me ro cr ecien te d e ap licacion es que necesitan un a v isualizacin de lo s d a tos
m s r ecien te s, que son con tinuame n te actu alizados en tiemp o real. Algunos ej emp los
d e es t as ap lic a c io n e s son :
-
Son poco s ej emp los de lo s sistemas qu e, por la n ecesid ad de ofr e cer lo m x imo en
u sab i l id ad y c a l idad p ar a e l u su ar io , r eq u i er e u n a con t in u a a c tu a l iz a c i n d e lo s d a to s
v isu a lizados en e l nav eg ador. En s n tes is, d eb ido a la d in mic a prop ia d e l se rv ic io,
s e h a ce c r tic a ma n ten er u n a a c tu a l iz a c i n co n st a n te d e l a inf o r ma c i n r eq u e r id a p o r
e l usu ar io .
A lg u n as ap lic a c io n e s u ti l i z an u n a t cn i c a d e po lling donde sea r equ erid a un a
a c tu a l iz a c i n au to m t i ca . M ed ian t e es t a t cn ica r eso lv e mo s p a r c i a l me n t e e l
prob lema , deb ido a qu e:
L a f r e cu encia d e ac tu a l iz a c i n n o p u ede s er a l ta , d eb id o a q u e e l p ar ad i g ma
se ma n tien e sncrono ( requer imien to /r espu esta), lo qu e implica que tamb in
e s i mp o s ib le r ec ib i r d a to s en t ie mp o r e a l.
El an cho d e b and a o cupado es alto, p ara cad a ped ido por par te del navegador ,
e s tran sf er id a la p g ina w eb co mp le ta , en v ez d e tr ansf er ir se n ic a me n te los
d a tos qu e necesitan ser actualizados.
El imp acto en los Serv idor es W eb son enor me s, porqu e n e cesita co mp lacer
un a alta cantid ad d e pedidos de pg in a in clusiv e si lo s usu arios estn
in activo s.
EVOLUCIN DE LA RED
Cuando la red in ici, no s en con tr b a mos en un en torno esttico , con p g inas en
HTML qu e sufr an pocas actu a lizacion es y no te n an in ter accin con el u suar io. Este
estado d e la r ed es lo qu e se d eno min co mo Web 1.0 .
Con tinuame n te, la r ed fu e creciendo d eb ido al x ito d e la s p g inas w eb. Este x ito a
su vez tuvo co mo consecuen c ia la necesid ad d e ofr e cer nuevo s serv icios de car cter
cad a v e z m s d inmico . Po r tan to la r ed fue apun tando h acia serv icios dond e es
n ec es ar i a l a a c tu a l i za c i n d e lo s d at o s en u n t ie mp o c ad a m s co r to .
A s la r ed dio un pas ma s, y este p aso con s is ti en w ebs d in micas dond e las CMS (
Con ten t Man ager System, Sistema d e G estin d e Con ten ido), que son in terf aces qu e
con tro lan un a o v ar ias b ases de dato s donde se alojan todos lo s con ten ido s del sitio
e n cue s t i n , se r v an p g i n as H T ML d in mic a s cr ead a s sob r e e l v u e lo d e sd e u n a b as e
de datos en actualizacin. A este paso algunos lo consid eraro n c o mo W eb 1 . 5 .
A l situarnos en este estado, par a las p g inas web, el con seguir h its (v isitas) y la
esttica v isu al eran consid er ados co mo unos factores mu y imp or tan tes, por lo qu e los
pr in cipales propu lsores y d esarro llador es de avances en al r ed fu eron vislu mb r ando
qu e e l uso de las red es d eber a e s tar o r ien t ad o a l a in te r a c ci n y r ed e s s o c i a le s, q u e
pu eden s ervir con ten ido qu e exp lo ta lo s ef ec to s d e las red es con o s in cr ea r w ebs
i n t er a c t iv as y v isu a le s. E s d e c ir , e st o s s i t io s co n es t a s car ac t er s t ic a s cu mp l en m s
b ien fun c ion es d e pun to s de en cu en tro, o w ebs d ep end ien te s d e u su ar io s, qu e co mo
w ebs trad icion a le s. A este estado es dond e se pretend e llegar al me n c ion ar la W eb
2.0 .
Sin tetizando, La W eb 2.0 se r ef ier e a la tr an sicin p er c ib ida en In tern et d esd e las
w eb s t r ad i c ion a le s a ap lic a c io n e s w e b d es t in ada s a u su ar io s . La g en t e i n v o lu crad a en
e s ta id ea e sp era que los se rv ic io s su stitu yan a la s ap lica c ion es d e e scritor io en
mu chos uso s.
J av a W eb S ta r .
CSS , ma rcado XHTML v lido semn ticamen te.
U RL s sen c illa s y con s ign if icado .
Sopo rte p ara postear en un b log.
A lguno s aspecto s d e r edes so ciales.
Ex isten o tras t cn icas, cu yo u so tamb in imp lican usar te cno log a d e la W eb 2 .0,
p ero lo s en g ener a l lo s pr in cip ios o b ases a segu ir son :
-
El sitio no d ebe actuar co mo un j ard n cerr ado, la info r macin deb e pod er
i n tro d u c ir s e y ex tr a er s e f c i l me n te .
Lo s u suar ios deb en contro lar su prop ia infor macin .
Basada ex clu siv amen te en la W eb. Lo s sitios W eb 2.0 con m s x ito pu eden
ser u tilizado s en terame n te d esd e un n av egador .
WEB 1.0
WEB 2.0
DoubleClick
Google Adsense
Ofoto
Flickr
Akamai
BitTorrent
mp3.com
Napster
Britannica Online
Wikipedia
webs personales
blogging
evite
especulacin de nombres de
dominio
pginas vistas
screen scraping
servicios web
publicar
participacin
Pginas estticas
CMS
directorios (taxonomas)
etiquetas ( "folksonomy" )
stickiness
sindicacin
El sigu ien te cu adro ilu str a el p aso in ter med io en tr e lo llama do W eb 1.0 y la W eb 2.0
y las ap licaciones webs in terv in ientes:
WEB 1.0
WEB 1.5
WEB 2.0
Pginas Personales
Wikis
Blogging
Foros de Discusin
RSS-Sindication
mp3
Napster
iTunes
Terraserver
MapQuest
Google Maps
Britnica Online
Wikipedia
Flickr
La rev isin exhau s tiva d e las tcn icas y serv ic ios u tilizado s en la evo lu c in d e la
W eb no es el mo tivo de este tr ab ajo, aunqu e d entro d e esta nu eva ma ner a d e en tender
la W eb, es tn en ma r cada s c ier tas tec no log a s qu e cu mp len los ro les fund amen ta les
e n e l d es ar r o l lo d e l mis mo , A JA X y su b s e cu en te me n t e COM E T.
A syn ch ro no u s
Las p e ticiones pu ed en ser sncron a s o asncronas, las asncron as
engaan m s porque el cliente sigue tr abaj ando con la aplicacin
mien tras se resu elv e la p e ticin .
J avaScript
L en g u aje q u e con tr o la la s a cc io n e s d e l c l ien t e
XML
Su e le o pu ed e s er e l con ten ido d e lo s me ns aj es d e so lic itud
X MLH TT PREQU ES T
Es un a A PI qu e se en cuen tra imp lemen tado en el n aveg ador qu e p ropor ciona los
m to dos y prop iedad e s n ecesar io s para la co mu n icacin con el serv idor.
Or ig in alme n te fu e d esarro llad a por Microso f t co mo objeto A c tiveX , d iscpon ib le
d esd e In ternet Exp lo rer. Esta API es u tilizad a por v ario s lengu ajes d e scrip ting,
ta le s co mo J av aS cr ip t, J s cr ip t V BSc r ip t y o tros lengu aje s de s cr ip ting d e
n aveg ador es w eb. Lo fund amen ta l de esta API es que emp lea un canal de conex in
ind epend iente.
C mo fun cion a AJA X?
Br eve me n te exp licado s e s to s son los pa so s que s e s igu en en e l fun c ion amie n to d e
A JAX :
In icia lmen te un u suar io provo ca un ev en to, lu ego se crea y conf igur a un obj eto
X MLH t tp R equ es t. E l o b j e to X MLH ttp Requ e s t r e a l i za u n a l la ma d a a l s er v id o r , l a
p e ticin se pro cesa en el serv idor , el serv idor retorna un do cu me n to XML que
c on tien en e l r e su ltado , e l obj e to XMLH ttp Requ es t lla ma a la fun c in c a llb ack () y
pro ce s a e l re su ltado y fin a lme nte se ac tu a liz a e l DO M d e la p g ina a so c iado con la
p e ticin con el r e su ltado d evu elto.
E l s igu ien te cu adro r e a liz a una co mp ara c in en tr e e l mod e lo d e ap lica cion es c ls ico
y el mo delos de ap licacion es W eb A JAX :
Cuad ro co mp ara tivo en tr e e l fun c ion a mie n to de las ap lic ac ion es W eb tra d ic ion a le s,
d e ma n era sn crona y e l fun c ion a mie n to d e la te cno log a AJ AX, d e ma n era s n crona :
COMET
FUNDA MENTOS D E CO MET
A c tualme n te, se ha acu ado un nu evo tr mino p ara un aspe c to var ian te d e AJ AX qu e
esta llama ndo la atencin m s qu e la an ter ior te cno log a. El te r mino CO ME T
d escr ib e a la s ap licacion es dond e el serv idor se ma n tien e emp ujando d a tos, o
ma n ten iendo un torr en te con tinuo d e d a tos a la ap licacin clien te, en v ez de ten er al
n aveg ador realizando var ias p e ticion es al s ev idor p ar a a c tu a liz ar e l con ten ido.
E s ta tcn ica d if ier e fund a me n ta lme n te d e AJAX, ya que :
AJAX r ea liza g rand es cam b ios p rin c ipa lme n t e en e l n a v e g a d o r, m ien t ra s q u e
COM ET f un dam enta lm en te ca mb ia la nat ur a le za de la com un icacin r ea lizada
e n la ar qu it ec tu ra c lien te s e rv ido r.
Es en esta arqu itectu ra en la qu e se d if iere d e la tecno log a A JAX, aunqu e en v ar io s
sitio s d e d iscusin en Internet ven a CO MET como una par te d e todo lo of recido por
A JAX, co mp le me n tar io a lo s asp e ctos de In terfa s e d e U suar io d e A JAX. P ero es
n ecesar io dejar en claro qu e CO ME T es el nomb r e d e un p a trn d e arqu itectur a en la
r e lacin con A JAX
CO ME T se b asa en qu e el serv idor te env a datos aunqu e el clien te no lo s p ida
(H TTP Pu sh), si el mismo haces una llamad a, el canal se qu eda ab ier to y el serv idor
te v a ma ndando info r macin, o lo qu e es lo mismo , qu e el serv idor no s v a a estar
d evo lv iendo el r e su ltado en p ar tes. En o tr as p a la bras tod as las ap licacion es d e
CO ME T u tiliz an con ex ion es HTT P d e larga duracin par a reducir a la te ncia con la
cuallo s me nsaj es son p asado s al serv idor. En esencia no realizan ped idos
o casionalmen te al serv idor. En vez d e eso el serv idor ma n tiene una lnea ab ier ta de
c o mun i ca c i n me d i an te l a cu a l p u ed e e mp u j ar d a tos h a c ia e l c li en t e.
Renkoo
Meebo
cg i:irc
KnowNow
En Fir efox se imp lemen ta usando Con ten t- type mu ltipart/x-m ixed- repla ce e
ind icando qu e e l can a l qu e s e abr e e s m u l t ip a r t, o lo qu e es lo mismo , qu e el
serv idor nos v a a estar devo lv iendo el r esu ltado en p ar tes.
Con o tro s naveg ador es esta po sib ilid ad no ex is te , y lo qu e se h ace es abr ir un can al
X MLH ttp Requ es t, dur ante cier to tiemp o e ir comp rob ando a cad a r a to lo qu e no s
llega del serv idor. Par a h acer esto, no es necesar io A JAX, n i X M LH t tp R equ es t, n i
n ada nuevo , simp leme n te un iframe y un a fun c in j av ascr ipt qu e te r ealice llamad as
c ad a c ie r to t i e mp o . Y q u p as a s i e l s er v id o r ta r d a m s tiemp o en d ev o lv ern o s la
salid a d e que tenemo s la conex in ab ier ta? , esto pu ed e ser solu cion ab le , p ero
tamb in pued e ser un prob lema .
Qu se d istingu e un a llamad a CO ME T a un a llama d a AJAX en Jav a scr ip t? , tan so lo
en qu e h a y qu e ind icar qu e v a a r ecib ir v ar io s obj etos d e l serv idor, para eso se usar
e l a tr ib u to mu ltipart. H a y qu e indicar que es mu ltipart ante s d e qu e se abra la
conex in (op en) p ara ind icar que es mu ltipart En el sigu iente ejemp lo d e cd igo
J av as cr ip t se i lu s t r a :
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
function holaMundo () {
var obj = document.getElementById("texto");
obj.innerHTML = "";
comet = cometobj();
comet.multipart = true;
comet.open("GET", "holamundo.php", true);
comet.onreadystatechange=function() {
if (comet.readyState==4) {
obj.innerHTML += comet.responseText;
}
}
comet.send(null);
}
Co mo se ilustra arriba, las ap licacion es COMET pued en entr egar los datos al cliente
en cualqu ier timepo , no solame n te en r e spuesta d e algn inpu t d e l u suar io. Lo s d a to s
son en treg ado s sob re un a simp le con ex in, prev ia me n te ab ier ta. Este enfoque r edu ce
la la ten c ia de la en treg a d e d a tos s ign if ica tiv ame n te .
L a arqu itec tur a se ba sa d esd e e l pun to d e v is ta d e lo s d a tos , e l cua l e s or ien tada a
even to s en amb os lado s d e la con exin HTTP. Aqu e llos que estn familiarizado s con
los midd lewa re que e s tan or ien tados a lo s me n saj es pu ed en e ncon tr ar e ste d iagra m
esp ecialme nte familiar. El unn ic ao camb io sustan tivo es qu e el pun to d e en treg a es
un n av egador.
En tan to COME T es s imila r a A JAX en qu e es as n crono , la s ap lica c ion es qu e
imp lemen tan el estilo CO ME T pu eden co mun icar camb ios d e estados pagando una
p eque a la te nc ia. E s to h ac e a es ta te cno log a ad ecu ad a p ara mu ch as c la s es de
ap licacion es co labor ativ as mu lti u suar ios y d e mon itor eo qu e d e o tra for ma ser a
mu y d ifcil o imp osib le d e ma n ejar en un n av egador sin la u tilizacin d e p lug ins.
C O N CL U S I N
Es bu eno CO ME T p ar a los usu ar io s? Si todos lo s usu ar io s estn tr atando d e h a cer la
mis ma cosa en el mismo lug ar a algn p ed azo de d a tos, en ton ces es lo ind icado . LA
a c tu a l iz a c i n d e lo s d a to s q u e s e r ea l i z a me d i an t e es t a t cn i ca e s id eal,
especialme nte para aplicaciones de conversacin. Si en el ma r c o d e l a a p l ic a c i n lo s
d a tos pu ed en qu ed ar la te n te s y a n ad ie pud ies e no imp or ta rle , en ton ce s no e s
n ec e s a r io u ti l i z a r lo .
Po r e l e s tado a c tua l de la s red es , la te cno loga CO ME T es a prop iad a y surg e d e
vu elta co mo r e spuesta a lo s r equ er imien tos actu a le s d e las ap licaciones w eb.
BI BLIOG RAFIA
h ttp ://www.ajax ian. co m/arch iv es/comet - a -n ew-approach- to- ajax -app lications
h ttp ://www.dojo too lk it.co m
h ttp ://a lex.dojo too lk it. co m
h ttp ://ph il.techno me tria.co m
h ttp ://cssh ya ms und ar .wordpr ess.com
ANEXO 1
Otras Tecnologas asncronas para la Web
N i co ls Gon z l e z
ARSC IF
E l ARSC IF (A synch ronou s Re mo te- Scr ip t Callb ack Invocation Framework) . H ace
f cil in ter c amb iar d a to s con un servidor en ECMAScr ip t (v ersin estand ar iz ad a del
lenguaj e Jav aScrip t, o rig in almen te d esaro llada por Netscap e) u tilizando frames
o cu ltos y c allb ack s.
Utilizar frames ocu lto s p ara co municarse con un serv idor si n recargar un a p ag ina es
conocido como remo te scr ip ting. Lo qu e r ealme n te o curr e es que in ic iamo s
asn cron amen te con scrip t r e mo to , lu egop el scr ip t invo ca un callback (po s ib le me nte
p asando d a to s que no estn d ispon ibles d e l lado d e l clien te). Se u tiliza re mo te
c a llbac k in vo ca tion ( RCI) (que no debe confundir se con r emo te pro c edu re ca ll ya
qu e es te d eno ta lla mada s a func ione s ej ecu tad as r e mo ta men te d e for ma
tr ansp ar en te).
Po rque A RSC IF e s me j o r q u e o t r a s l ib r er as e sc r i ta s p ar a la s mis ma s f u n c io n e s
- ARS CIF pu ede env iar y r ed c ib ir da tos arb itr aria me n te comp le jos en for ma de
literales ECMAScrip t cann ico s. Uno no est limitad o a tipo s primitivo s o arreg los.
- Sopor te p leno d e car acter e s UTF-8 lo que permite in ter camb io de dato s en
cualqu ier lengu aje u tilizando UNICODE, la i mp l e me n ta c i n h a ce d e e st e so p o r te
d epend ien te n icamente d e l lenguaje scr ip t del serv idor y as no d e l n av egador n i en
e l H T TP S er v er.
- ARS CIF con sid er a se ria me n te la con curr enc ia y ofr ece mu chas op cion es p ar a lidiar
con las mismas.
- ARS CIF es sob re lib re d is tr ibu ido b ajo la lice nc ia d e X11.
Fu en te:
h ttp ://a rs c if.d s i.un imi. it
Java2 EE
S e rv ic e A ctivato r
Provee Procesamien to asn crono par a cualqu ier En te rpr ise Bean s.
En la esp ecif icacin 2 .0 d e EJB (EJB es una de las A PI qu e for man par te d e l
e s t an d a r d e c o n s tru c c i n d e ap l i ca ci o n es e mp res ar ia les J2EE de Sun Microsyste ms ),
el b ean manejado por me nsajes es de un a sesin sin estado. U tilizando el p a trn
S er vice A c tiv a tor , e s p o sib le proveer aplicaciones asncronas en todos los tipos de
b ean s empr esar iales in clu yendo los d e sesin sin estado, sesion es d e estado y lo s de
en tidad , en po cas p a labr as sobr e cualqu ier servicio d e n egocio. Por lo ta n to prov ee
un a ma n era d e h ab ilitar pro cesamien to asn crono p ar a clientes qu e o no tien en
n ec es id ad d e esp er ar p ar a r esu l t ad o s , o n o q u ier en esp er ar l a f in a l iz a c i n d e l
pro cesamien to. El p rocesamien to pu ede ser d ifer ido y realiz ado m s tard e
p ermitiendo al clien te co mp letar el serv icio en me n or timepo.
Fu en te:
h ttp ://jav a. sun. co m/b lu epr in ts /cor ej2 eepatterns/Patterns/Serv iceA ctivator.h tml