1 / 31

APPLICATION SERVERS

APPLICATION SERVERS. Seminari de CASO Q2 2002 Josep Sanjuàs Cuxart Marc Pous i Marín. ÍNDEX DEL SEMINARI. Introducció Què és un application server ? Prestacions Aventatges del seu ús Conceptes que usen els application server Llenguatge Java Web Application Servers

frayne
Download Presentation

APPLICATION SERVERS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. APPLICATION SERVERS Seminari de CASOQ2 2002 Josep Sanjuàs Cuxart Marc Pous i Marín

  2. ÍNDEX DEL SEMINARI Introducció Què és un application server ? Prestacions Aventatges del seu ús Conceptes que usen els application server Llenguatge Java Web Application Servers Exemples Comercials d’Application Servers Bibliografia

  3. INTRODUCCIÓ MODEL DE LES 3 CAPES (3-tier architecture) Presentació (client) application Business logic server Dades i serveis (bases de dades)

  4. INTRODUCCIÓ (II) Exemple: una possible implementació del Racó de l’estudiant Presentació Navegador web Servidor web + php Business logic Dades i serveis SQL server

  5. En definitiva, un application server conté un software intermig (middleware) que connecta les capes superior i inferior, i gestiona els recuros usant-los per servir els clients. És una idea molt genèrica per la qual existeixen moltes implementacions QUÈ ÉS UN APPLICATION SERVER ?

  6. PRESTACIONS Gestionen les bases de dades, l’accés a les mateixes, i tots els aspectes de l’aplicació. Aïllen codi i dades que han de ser privats, i proporcionen una interfície d’accés remot.

  7. AVENTATGES DEL SEU ÚS • Robustesa: els application servers aïllen les tasques crítiques i controlen les fallades del sistema. • Seguretat: implementen mètodes d’encriptació (la majoria usen SSL) • Gestió de sessions: gestió de l’accés al sistema (autentificació dels usuaris) i manteniment de sessions.

  8. AVENTATGES DEL SEU ÚS (II) • Alt rendiment: tenir caches, redirigir peticions cap a altres servidors d’un cluster, load balancing. A més, en tenir les dades locals o properes, l’accés és més ràpid. • Fàcil manteniment: com que el codi està localitzat, és més fàcil fer updates i monitoritzar-ne el funcionament, • Gestió de sessions: gestió de l’accés al sistema (autentificació dels usuaris) i manteniment de sessions.

  9. AVENTATGES DEL SEU ÚS (III) • Disminució de la càrrega de treball dels clients: els servidors poden ser usats per córrer aplicacions de cost inabastable pels clients. • Protecció de les dades: la majoria de dades i algorismes no són públics, i s’evita que puguin ser analitzats per extreure’n informació privada.

  10. QUINS CONCEPTES USEN ELS APPLICATION SERVER ? Model client /servidor lleuger/pesant Programació per capes CORBA, DCOM, ...

  11. MODEL CLIENT/SERVIDOR LLEUGER/PESANT Qualsevol aplicació orientada a xarxes usa aquest model. El client enviarà dades (processades o no) al servidor (que les tractarà) i retornarà resultats al client. Els clients i servidors poden ser pesants o lleugers.

  12. CLIENT LLEUGER – SERVIDOR PESANT El client no processa les dades, sinó les envia directament al servidor. El servidor haurà de fer tota la feina. Tindrem clients amb poc poder de procés i poc ample de banda, ja que circularan peticions i resultats i no dades intermitges.

  13. CLIENT LLEUGER – SERVIDOR PESANT • El client fa un pre-procés de les dades abans d’enviar-les al servidor, amb l’objectiu d’estalviar temps de procés al servidor. • El servidor esdevé lleuger, i com a tal, requereix menys potència i més ample de banda amb el qual enviar dades als clients. • Aquest tipus de servidor és usat quan el servidor té moltes peticions en poc temps.

  14. PROGRAMACIÓ PER CAPES

  15. CORBA, DCOM, ... (I) • S’usa CORBA com a estàndard per a comunicar client i servidor. • CORBA és una plataforma per a crear entorns distribuïts. • Pot comunicar qualsevol plataforma mentre tinguin una implementació de CORBA • Funciona a través d’objectes que s’usen com si fossin locals, encara que en realitat poden ser remots.

  16. CORBA, DCOM, ... (II) • Objectes distribuïts:La programació és independent de la plataforma i llenguatge de programació sobre la qual es treballa. • Els llenguatges del client o servidor són Java, C++, Eiffel, o bé qualsevol llenguatge orientat a objectes.

  17. CORBA, DCOM, ... (III) • DCOM (Distributed Component Object Model) és la versió Microsoft de CORBA. • RMI (Remote Method Invocation) és un model de Java per desenvolupar aplicacions amb objectes distribuïts. • ...

  18. PER QUÈ S’USA JAVA EN LES APPLICATION SERVERS ? • Java • Java2EE • JavaBeans • Servlets de Java • JSP

  19. Java (I) • Java és un llenguatge creat per Sun MicroSystems. • Java és un llenguatge d'alt nivell, orientat a objectes. • Java és robust. • Java no deixa forats a la memòria, i no té errors de referència a memòria.

  20. Java (II) • Amb múltiples components integrats, podem trobar més ràpid les errades (no hi ha "segmentation violations") • Java no és un llenguatge fràgil en xarxes. • Java és un llenguatge madur, i està a tot arreu. • Java té moltes classes implementades i molt exteses. • Java és més ràpid que C/C++. • ...

  21. JAVA2EE • És una plataforma de Sun (Sun's Java 2 Platform, Enterprise Edition) que defineix l'arquitectura estàndard d'una aplicació multi-capa. • Conté els següents APIs: JavaBeans, JDBC, JavaIDL, Servlets, JSP, ...

  22. JAVABEANS • JavaBeans és un model per a plataformes independents i portable, escrit en Java. • Permet als programadors usarcomponents ja fets i utilitzar-los a qualsevol lloc • Write Once, Run Anywhere

  23. SERVLETS DE JAVA • Un Servlet de Java és un programa Java que corre en el servidor. • Normalment rep peticions i genera respostes del tipus GET i POST (HTTP) • Tracta amb HTML tot i que pot generar dinàmicament qualsevol tipus de codi.

  24. SERVLETS DE JAVA (II) • També poden accedir a APIs de Java, com JDBC per obtenir informació de la tercera capa. • Són equivalents als CGIs o als scripts de Perl.

  25. JSP • Java Server Pages (JSP) és una tecnologia similar a les Active Server Pages de Microsoft. • Contenen un mixt entre codi HTML i codi Java. • Està basat en Servlets de Java.

  26. WEB APPLICATION SERVERS • Actualment és un dels usos més extesos dels Application Servers. • És una plataforma extensa i robusta per implementar i executar aplicacions web. • És una combinació de molts components. • Els clients són els navegadors. • Els servidors poden usar CGIs, ASP, JSP, PHP, Java...

  27. WEB APPLICATION SERVERS (II) • Incorpora un gestor de solicitud d’objectes (ORB) basat en CORBA.

  28. EXEMPLES COMERCIALS D’APPLICATION SERVERS (I) Els Application Servers estan orientats a les empreses. Per tant la majoria de productes són comercials i no es coneixen codis font, ni com funcionen internament. Les solucions comercials costen milers de dòlars.

  29. EXEMPLES COMERCIALS D’APPLICATION SERVERS (II)

  30. EXEMPLES COMERCIALS D’APPLICATION SERVERS (III)

  31. BIBLIOGRAFIA http://www.covero.com/appserverfaq.html http://www.devx.com/appserver/appservfaq.asp http://www.scottsnetworkclass.com/~student/Gaskins/app.html http://www.bea.com/products/weblogic/server/paper_Java.shtml http://jakarta.apache.org Manual Oracle Application Server ...

More Related