Ala 2.0 Keynote
description
Transcript of Ala 2.0 Keynote
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$%$© Sunnyvale 2010
Keynote
Adapter-Logic Application
codename: Milky Way
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$&$© Sunnyvale 2010
Disclaimer
Tutti i marchi ed i loghi contenuti in queste slide sono di proprietà dei rispettivi titolari
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$'$© Sunnyvale 2010
Contenuti
- What’s new in 2.0
- Service Pipelining
- Enriched utility APIs
- General improvements
- Recursive Pipelining
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$($© Sunnyvale 2010
What’s new in 2.0
Nuove funzionalità e consolidamento di quelle esistenti con lo scopo di migliorare il prodotto nei seguenti punti:
- Versatilità di utilizzo - Scalabilità - Facilità di configurazione e personalizzazione - Velocità d’esecuzione
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$)$© Sunnyvale 2010
What’s new in 2.0 !"#$%&#'(%)*+ ,-./0%$%&#-+ 1-#-2/%+
*+,-./+$!.0+1.2.2#$ 32"$!.0+1.2+$4$52$.26.+7+$8.$*+,-.9.$,"##,500":$;,"$1<,<$/=+$-+,,"22<$,./=."7":$.2$6+>5+29"?$
@$/1.+2A$/<2$52B52./"$,./=.+6A"$0<66<2<$,+0+,.,+$8":$8"$8.-+,6.$6.6A+7.$8.$C"/D+28?$
E+/5,6.-+$!.0+1.2.2#$ FB$0<66.C.1+$"22.8",+$!.0+1.2+$"11B.2A+,2<$8.$"1A,+$!.0+1.2+$
G57+2A"2<$1+$0<66.C.1.AH$8.$<,/=+6A,",+$.1$I566<$8":$,./+-5A<$8"$52$/1.+2A?$
F2,./=+8$5:1.AJ$G!@6$ K5<-+$/1"66.$+$7+A<8.$8.$5:1.AH$-+2#<2<$;<,2.:$/<701+:$8.$8</57+2A"9.<2+$0+,$1<$6-.1500"A<,+?$$$
E.651A"$0.L$;"/.1+$A,"M",+$8</57+2:$NOPQ$A,"6;<,7",+$8"A+Q$7.65,",+$.$A+70.$8.$52"$A,"26"9.<2+Q$+A/?$$$
R+2+,"1$.70,<-+7+2A$ @1$7<A<,+$8+11B"001./"9.<2+$4$6A"A<$7.#1.<,"A<$
G8"0A+,SP<#./$G001./":<2$4$0.L$62+11<Q$1+##+,<Q$-+1</+$+8$"T8"C.1+$
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$U$© Sunnyvale 2010
Contenuti
- Service Pipelining
- What’s new in 2.0
- Enriched utility APIs
- General improvements
- Recursive Pipelining
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$V$© Sunnyvale 2010
Service Pipelining
Adapter-Logic Application rende disponibili ai client delle risorse di interconnessione con i sistemi di backend.
Tali risorse (Resources) si suddividono in:
• Service (disponibili fino alla versione 1.x) Si tratta di un’integrazione punto-punto tra un client ed un sistema di backend
• Pipeline (introdotte dalla versione 2.0) Si tratta di un raggruppamento logico di altre risorse che verranno richiamate in maniera sequenziale
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$W$© Sunnyvale 2010
Service Pipelining
!"#$%#&'()*+,*-$%.$,'#,/0'$1%$2%2/.%#/$345$6%/#/$7+.%88*9'$2/($%#1%,*(/$7#$%#:%/)/$1%$,')2'#/#+$:';<*(/$9(*$.'('$,'../=*+$*$,*:,*9*$%#$)'1'$,>/$%.$(%:7.9*9'$2('1'0'$1*$7#'$1/=.%$/./)/#+$:%*$.?%#=(/::'$1%$@7/..'$%))/1%*9*)/#9/$:7,,/::%6'A$
Da Wikipedia, voce “Pipeline software”
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$X$© Sunnyvale 2010
Service Pipelining
!"#$%#&'()*+,*-$%.$,'#,/0'$1%$2%2/.%#/$345$6%/#/$7+.%88*9'$2/($%#1%,*(/$7#$%#:%/)/$1%$,')2'#/#+$:';<*(/$9(*$.'('$,'../=*+$*$,*:,*9*$%#$)'1'$,>/$%.$(%:7.9*9'$2('1'0'$!"#$%&#'()#*(*+*,-#./*0*!*,-$1)"#!)1.2,)3)(*#02+*#%#=(/::'$1%$@7/..'$%))/1%*9*)/#9/$:7,,/::%6'A$
Sunnyvale estende il concetto in:
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$%Y$© Sunnyvale 2010
Service Pipelining
Dalla versione 2.0, ALA consente di organizzare più servizi all’interno di una Pipeline.
Tali servizi verranno invocati in sequenza in modo che gli output dei servizi precedenti comporranno l’input del servizio successivo.
Un client, richiamando una Pipeline invece di un Servizio semplice, potrà raggiungere diversi sistemi di backend.
ALA memorizza gli XML di input ed output dei servizi in modo da rendere disponibili i dati di ritorno da tutti i beckend verso il client
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$%%$© Sunnyvale 2010
Service Pipelining
Esempio di Pipeline
*+,-./+$G$
*+,-./+$Z$
*+,-./+$[$
Pipeline 1 Client request
Service A outgoing document Z"/D+28$
G$Service A incoming document
Service B outgoing document Z"/D+28$
Z$Service B incoming document
Service C outgoing document Z"/D+28$
\$Service C incoming document
Service D outgoing document Z"/D+28$
[$Service D incoming document
Pipeline response
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$%&$© Sunnyvale 2010
Service Pipelining Un caso pratico: un cliente acquista un viaggio on-line sul sito di un’agenzia
*+,-.9.<$8.$.26+,.7+2A<$25<-<$/1.+2A+$65$\EO$
*+,-.9.<$8.$0"#"7+2A<$<21.2+$
Pipeline Client request
Pipeline response
*+,-.9.<$8.$C<<D.2#$8+1$A<5,$<0+,"A<,$
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$%'$© Sunnyvale 2010
Contenuti
- Service Pipelining
- What’s new in 2.0
- Enriched utility APIs
- General improvements
- Recursive Pipelining
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$%($© Sunnyvale 2010
Recursive Pipelining
In precedenza è stata definita una Pipeline come un raggruppamento logico di altre risorse che verranno utilizzate in modo sequenziale
Una Pipeline si può definire anch’essa come una risorsa
La diretta conseguenza è la possibilità di creare Pipeline di Pipeline
Aumentano così le possibilità di orchestrare il flusso dati proveniente dal client verso n sistemi di backend in modo ricorsivo
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$%)$© Sunnyvale 2010
Recursive Pipelining Pipeline 0
*+,-./+$%G$
*+,-./+$%Z$
*+,-./+$%[$
Pipeline 1
Z"/D+28$%G$
Z"/D+28$%Z$
Z"/D+28$%\$
Z"/D+28$%[$
*+,-./+$2G$
*+,-./+$2Z$
*+,-./+$2[$
Pipeline n
Z"/D+28$2G$
Z"/D+28$2Z$
Z"/D+28$2\$
Z"/D+28$2[$
Client request
Pipeline response
…
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$%U$© Sunnyvale 2010
Contenuti
- Service Pipelining
- What’s new in 2.0
- Enriched utility APIs
- General improvements
- Recursive Pipelining
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$%V$© Sunnyvale 2010
Enriched utility APIs Fin dalle prime versioni di ALA, lo sviluppatore può estenderne le funzionalità implementando:
• Controllers di tipo custom • Handlers • Connectors di tipo custom • XPath custom functions
ALA 2.0 facilita lo sviluppi con classi e metodi di utilità che aiutano a:
• Trattare XML (DOM, JAXB) • Trattare documenti SOAP • Convertire date • Misurare il tempo delle invocazioni (di un Servizio o di una Pipeline) • etc
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$%W$© Sunnyvale 2010
Contenuti
- Service Pipelining
- What’s new in 2.0
- Enriched utility APIs
- General improvements
- Recursive Pipelining
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$%X$© Sunnyvale 2010
General improvements
G$1.-+11<$\<,+Q$.1$6500<,A<$0+,$1+$!.0+1.2+$="$,./=.+6A<$52"$,+.2#+2.+,.99"9.<2+$8+11B$GPG$E<5A+,$52.A"7+2A+$"$A5M+$1+$0",:$/=+$/<6:A5.6/<2<$.1$7<A<,+$-+,<$+$0,<0,.<$8+11B"001./"9.<2+?$P+$7<8.]/=+$="22<$7.#1.<,"A<$.1$7+//"2.67<$8.$,<5:2#$;,"$1+$,.6<,6+$-+1</.99"28<$.$A+70.$8.$+-"6.<2+$8+11+$,./=.+6A+?$
^5M+$1+$<0+,"9.<2.$8.$/<2A,<11<$8+11"$1./+29"$6<2<$6A"A+$60<6A"A+$.2$;"6+$8.$C<<A$+8$.1$,.651A"A<$.77"#"99.2"A<$.2$7+7<,."?$$G$,52:7+$2<2$-.+2+$0.L$5:1.99"A<$.1$]1+$,.60",7."28<$65.$A+70.$8.$1+M5,"$+$8+/,.0A"9.<2+?$
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$&Y$© Sunnyvale 2010
General improvements
!+,$/<26+2:,+$"11<$6-.1500"A<,+$8.$A+6A",+$.1$1"-<,<$6-<1A<Q$_\56A<7$\<2A,<11+,6Q$`"281+,6$+a<$8</57+2:$N*P̂ b$-.+2+$;<,2.A<$52$[577J\<22+/A<,$/=+$6.751"$52B.2-</"9.<2+$"8$52$6.6A+7"$8.$C"/D+28?$*<1<$8<0<$"-+,$-+,.]/"A<$1"$;529.<2"1.AH$8.$>5"2A<$6-.1500"A<$4$0<66.C.1+$/"7C.",+$\<22+/A<,$+$0,</+8,+$/<2$.$A+6A$,"##.52#+28<$.1$6.6A+7"$8.$8+6:2"9.<2+?$$
Denis Maggiorotto, CEO Sunnyvale mail: [email protected]
!"#$&%$© Sunnyvale 2010
Grazie dell’attenzione!
[+2.6$O"##.<,<M<$
F7".1c$8+2.6?7"##.<,<M<d6522J-"1+?.A$O<C.1+c$e'X$'&W$XV')Y%'$f+Cc$ggg?6522J-"1+?.A$\<7.2#$6<<2c$ggg?"8"0A+,1<#./"001./":<2?/<7$