ARCHITECTURES INTERNET

quaggaholeInternet και Εφαρμογές Web

15 Αυγ 2012 (πριν από 4 χρόνια και 10 μήνες)

428 εμφανίσεις

1

Séminaire Novembre 2001


PLB


J.M. Vanel

1
-

Architecture Internet


Introduction


Les concepts


Modèles N
-
Tiers


Les composants


Rôle et Fonctionnement


Les serveurs d

’applications


Le modèle J2EE


Intégration d’applications
-

EAI


Les offres


Les composants



2

Séminaire Novembre 2001


PLB


J.M. Vanel

1

En guise d

’introduction

Préoccupation




architecture



EJB

UML


Quelques points de repères ?


3

Séminaire Novembre 2001


PLB


J.M. Vanel

1

Les préoccupations ...


Nouveau business
-

model :


Accélération des traitements


du Batch au WEB
-

transactionnel


Multi
-
sources, multi destinations


du Document au WEB/XML/WAP ...


Les points chauds :


Évolution du S.I. :


multi
-
composants (ERP, CRM, ... Composant factory)


évolution des échanges et modèles d’intégration (EAI / ETL)


Évolution des Architectures


Corba, COM, J2EE ...


Déploiement des postes clients / Internet
-

Intranet
-

Extranet


Évolution des modèles de conception


maturité du concept et solutions ‘OBJET



4

Séminaire Novembre 2001


PLB


J.M. Vanel

1

Modèles d’architecture


Du Client/Serveur au
...



... modèle N/Tiers












5

Séminaire Novembre 2001


PLB


J.M. Vanel

1

Historique ,

le C/S mais c’est très simple ...

Main
Frame

Main
Frame

Terminal
passif

Informatique
Personnelle

Main
Frame

Réseaux

PC non
connectés

PC connectés

Poste Client

Main
Frame

Réseaux

Serveurs

?

6

Séminaire Novembre 2001


PLB


J.M. Vanel

1

2001 ...

Un modèle multi serveurs
-

multi terminal

Client UNIVERSEL

Main
Frame

Réseaux de l’E.

Réseaux Externes

Serveurs
applications

Serveurs ...

Serveurs de
publication

7

Séminaire Novembre 2001


PLB


J.M. Vanel

Les modèles N
-
Tiers

Intégration


Présentation


Logique Métier

WEB serveur

Serveurs

Applications

8

Séminaire Novembre 2001


PLB


J.M. Vanel

1

Objectifs


Poste client universel


Poste léger


Pas de déploiement


Multi support


Implantation de la logique
métier


Développement
composants


Intégration avec l’existant


Middleware / EAI / moniteur
TP


Connecteurs (ERP, CRM,
SGBD,...)



EVOLUTIVITE





REUTILISABILITE




PERFORMANCE &
FIABILITE


9

Séminaire Novembre 2001


PLB


J.M. Vanel

Le fonctionnement

Serveur

Serveur

Legacy

Scripts

Pages

Accès SGBD

Accès Annuaire

Annuaire

Données

entreprise

Applications


Pourquoi faire ? ... du plus simple au plus complexe


navigateur + pages statiques,


navigateur + pages dynamiques


navigateur + pages dynamiques + SGBD


navigateur + serveur d'applications (+ SGBD + annuaire)


10

Séminaire Novembre 2001


PLB


J.M. Vanel

Rôle des diverses couches


Le navigateur :



affiche du texte, des images, des formulaires, des boutons; il sait
envoyer des requêtes HTTP.


Le serveur Web :


répond à des requêtes HTTP par des pages en language HTML (ou
autre) que le navigateur affiche.


Un SGBD gère des données structurées


(en général suivant le modèle relationnel)


assure l'intégrité, la sécurité, la durabilité, les requêtes et les
transactions (ACID). C'est un serveur de données.


11

Séminaire Novembre 2001


PLB


J.M. Vanel

Rôle des diverses couches

:

Le serveur d

’Applications (SA)


Entre le serveur Web et le SGBD.



Il assure lui aussi la sécurité et les transactions,


mais sans écrire de code (procédural),


en général de manière déclarative (fichier de déploiement).


Il prend en charge les aspects performance:


répartition des applications entre les différentes machines, la
réutilisation de ressources : connections aux sources de données,
mémoire, etc


Ainsi le code métier se trouve simplifié :


Pas de code à écrire pour la sécurité, les transactions, les accès
partagés (multi
-
thread)


le code est écrit comme si l'objet était tout seul sur une machine
isolée

12

Séminaire Novembre 2001


PLB


J.M. Vanel

Fonctionnement des couches


Le navigateur, outre l'affichage statique, peut
faire des calculs et des animations :


DHTML + langage Javascript, ou Applets Java


SMIL ou SVG


Le serveur Web répond à des requêtes HTTP
par des pages en langage HTML

Pour cela, le serveur Web peut :


Renvoyer un fichier tout préparé («

pages statiques

»)


Générer par programme une page réponse («

pages
dynamiques »)

13

Séminaire Novembre 2001


PLB


J.M. Vanel

Exemple page Web dynamique

You have the following items in your cart:

1.

Beavis & Butt
-
head Video collection

2.

Love life

3.

Concert tickets



Please enter item to add or remove:

Add Item:
Beavis & Butt-head Video collection


add
remove


Exemples de pages dynamiques, livrées avec Tomcat 4.0 :


Caddie


Calendrier

14

Séminaire Novembre 2001


PLB


J.M. Vanel

Les serveurs d

’applications


Quel modèle?


Définition et fonctionnement


Modèle J2EE

15

Séminaire Novembre 2001


PLB


J.M. Vanel


Point de vue de
SIEVERS

en 2000

2000 ?

Microsoft Com/Dcom

-

arrivé à maturité,

-

en attente de COM+ et DNA2000

Le modèle SUN /J2EE

-

engouement de l’année 2000,

-

modèle complet disponible pour l’implémentation

Evolution des modèles

-

Web services, XML


-

Microsoft .Net

Corba :

-

complexité de mise en oeuvre

-

interopérabilité vers J2EE (ex : offreurs type Iona)

Quel modèle Corba/COM/EJB ?


16

Séminaire Novembre 2001


PLB


J.M. Vanel

Evolution


Une longue évolution :


Moniteurs transactionnels (Tuxedo)


Moniteurs transactionnels OO, MTS


Le modèle CORBA et les ORB (dialogue entre objets)


Puis


Standard Sun Java 2 Enterprise Edition (J2EE)


17

Séminaire Novembre 2001


PLB


J.M. Vanel

Définition


Le SA est un conteneur d'applications


Le SA manipule les objets métiers

(EJB : Enterprise Java Beans) :


Activation et désactivation


Lancement des transactions


Contrôle d'accès


Le SA permet de déployer des objets métiers


Le standard J2EE permet d’écrire ces objets (EJB), de les
‘emballer’ pour un déploiement facile et général

18

Séminaire Novembre 2001


PLB


J.M. Vanel

Le modèle J2EE


Le standard J2EE :


Construit sur JAVA


Couvre toute l’informatique répartie et de gestion



Une communication normalisée entre le
Serveur d'EJB et les autres couches :


Avec le serveur Web: Servlets, JSP


Entre les composants (RMI / IIOP / Corba)


Avec les SGDBR : JDBC


Avec les annuaires (JNDI)


19

Séminaire Novembre 2001


PLB


J.M. Vanel

Exemples


Exemple de pages dynamiques + SGBD


un exemple simple du type gestionnaire de rendez
-
vous.


Exemple d'utilisation de Serveur d'Application


même exemple simple avec un serveur EJB. Il faut écrire
un peu plus de code (standard EJB) pour la machinerie,
mais ensuite on peut gérer les permissions sur l'agenda
sans toucher au code.


De même sans toucher au code, on peut déclarer la mise
à jour d'un rendez
-
vous comme une transaction ACID, ou
relacher plus ou moins cette contrainte pour une raison de
performance.

20

Séminaire Novembre 2001


PLB


J.M. Vanel

J2EE et Sécurité

Rôle

Rôle: Administrateur

Méthode Assuré.créer

Méthode Assuré.enlever

Méthode Assuré.facturer

Agent Dubois

Agent Durand

Rôle: agent

Méthode Dossier.traiter

21

Séminaire Novembre 2001


PLB


J.M. Vanel

1

N
-
Tiers

Serveurs
Applications

Architecture

J2EE

CORBA

COM/DCOM

DNA

Websphere

WebLogic

Gemstone

SGBDOO

Mapping SGBD

Scripting

JSP

ASP

Silverstream

HahtSite

Java : Orion

Jaguar

Client léger

Applet

Dhtml

Citrix

Serveur

EJB

servlet

Com

others

cgi

perl


iPlanet

Arbre de connaissance N
-
Tiers

Les offres

22

Séminaire Novembre 2001


PLB


J.M. Vanel

1

Exemple de solution IBM

Serveur UNIX ou OS/390

Java

SGBDR

(DB2)

Service

Applicatif

JavaBean

(interface)

CICS ...

WebSphere

Page JSP

servlet

Cobol

Java

Visual Age for Java

Cobol/370

23

Séminaire Novembre 2001


PLB


J.M. Vanel

1

Exemple de solution mixtes

J2EE
-

Corba

Serveur Unix

Java

Composants

Corba

EJB

Iona

SA
-

WebLogic

Page JSP

servlet

Java

Compilateur C

Atelier Java

C++

Connecteurs

(OTM)

24

Séminaire Novembre 2001


PLB


J.M. Vanel

1

Et la solution MicroSoft

.. bientôt .NET

Serveurs NT

Composant

technique


Page HTML

Script client

Applet tech.


Application

Win32

HTML/CSS

JavaScript

Java

Active X (?)

dll

COM / DCOM

COM+(?)

Visual Interdev

Visual J++

.NET ? C#

Internet

Explorer

MTS (?)

Visual C++

25

Séminaire Novembre 2001


PLB


J.M. Vanel

1

Les composants

fonctionnement et standards

Serveur WEB

Serveur application

Données & existant

Scripting

JSP

Serveur de pages

Servlet et EJB

socle

technique

référentiel

Données

entreprise

applications

Http / https

Object

(RMI/IIOP)

SQL et JDBC...

LDAP ...

..XML.

26

Séminaire Novembre 2001


PLB


J.M. Vanel

1

1
-

Le poste client


Objectifs


Poste léger


déploiement simple


administration


Communication http


simplicité (proxy)


sécurité (https)


Ergonomie




Solutions & questions


utilisation d

’un browser ‘

standard




limite sur la compatibilité des browsers
et sur les extensions (plug
-
in et version
JVM java)


utilisation des protocoles propriétaires
(RMI, activeX)



Futur :

XML et XHTML


Deux solutions à investiguer :


HTML pur / applet java

une alternative : DHTML
(Javascript)

27

Séminaire Novembre 2001


PLB


J.M. Vanel

1

2
-

Le serveur WEB


Objectifs


Flux pages http


scalabilité


sécurité




Services


présentation et réalisation des pages


gestion Session & fail over


appel des composants des autres Tiers





Solutions & questions


marché dominé par


IIS


Apache


sécurité


https


Firewall / proxy


JVM


méthodes de scripting


JSP, XSP


ASP


.. Et perl, python,


solutions de gestion session (cookies,
html marqué ...)

28

Séminaire Novembre 2001


PLB


J.M. Vanel

1

3
-

Le serveur d

’application


Objectifs


médiateur entre les 2 environnements :


1
-

WEB et client lèger


2
-

existant (‘

legacy

’)



introduction de la notion de composants


métier




indépendance du socle technique


réutilisabilité


montée en charge


scalabilité


load balancing



et notion de Fail Over





Solutions & questions


3 modèles (*)


Corba / COM / EJB





réutilisabilité et composants :


mythe ou réalité ?





Administration


(*) Le marché aujourd’hui est dominé par J2EE ...


... Maturité des implémentations

29

Séminaire Novembre 2001


PLB


J.M. Vanel

1

4
-

L’intégration avec l’existant


Objectifs


interopérabilité


accès données


accès applications




gestion des transactions


multi environnements et applications




Solutions & questions


2 modèles


middleware de type messages (vers EAI)


connecteurs propriétaires



persistance des objets


mapping relationnel


SGBOO


Mapping XML ...

Le marché des EAI arrive à maturité ...


... Format d’échanges propriétaires >> XML

30

Séminaire Novembre 2001


PLB


J.M. Vanel

1

Serveur

Base de

données

Composant

EJB

Serveur d’Applications


Page JSP,

servlet

Java

Poste client

Browser


Page HTML

Script

Applet

SQL

SGBDR


HTML/CSS

JavaScript

Java


le schéma

relationnel

Générer

les squelettes

de classes

Java



Persistance

Exemple :

de la conception à l

’implémentation