Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parGisselle Foulon Modifié depuis plus de 10 années
1
Le serveur HTTPd WASD Jean-François Piéronne
2
Sommaire l Caractéristiques l Architecture générale l Performances l Intégration dans OpenVMS
3
Caractéristiques l Implémentation complète HTTP/1.0 l Méthodes "GET", "HEAD", "POST et "PUT" l Services (serveurs) virtuels l Protection des transferts via la technologie Secure Sockets Layer (SSL) l Support des cookies
4
Caractéristiques l Service proxy, avec cache local, pour toutes les méthodes HTTP/1.0, plus la méthode CONNECT (permettant le SSL tunnelling) l Fonctionnalité "if-Modified-Since:" / "304 not Modified" (envoie du document seulement sil a été modifié depuis une date spécifiée par le client)
5
Caractéristiques l Http/1.0 de-facto connexions persistantes (i.E. "Keep-Alive:) l Navigation dans les répertoires (générique et VMS-style) l CGI scripting par sous-process ou par process détaché (configurable, automatique, choix du contenu MIME) n Choix du compte exécutant le script dans le cas dun process détaché (OpenVMS V6.2 minimum)
6
Caractéristiques l Scripts persistants n réduction du temps de latence, augmentation du throughput et diminution de limpact sur le système) n "CGIplus" scripting èInterface Java, Python,… n Run-Time Environments (RTEs) èLe script nest pas persistant, seulement lenvironnement lui-même uPar exemple pour Perl,… n "ISAPI" extensions/scripting
7
Caractéristiques l CGI scripting via DECnet (avec réutilisation des connexions) l Émulation OSU scripting, avec réutilisation des connexions, permettant lutilisation de nombreux scripts OSU sans modifications l Processeur de script (e.g. PERL) configurable sur type du fichier (extension)
8
Caractéristiques l Pré-processeur HTML n Inclusion conditionnelle de documents n Ajout de la date n Etc.… l Cache configurable,invalidation basée sur le temps pouvant être forcée l Support image clickable (formats NCSA et CERN)
9
Caractéristiques l Règles de mapping puissantes et faciles demploi n Possibilité de règles conditionnelles l Possibilité dauthentification par SYSUAF et droit daccès dun utilisateur par identifieur
10
Caractéristiques l Trace des accès n Formats standard "common" et "combined" (ce qui permet lanalyse avec la plus part des outils danalyse de trace) n Format de traces personnalisable n Création automatique, journalière, hebdomadaire ou mensuelle dun nouveau fichier de traces
11
Caractéristiques l Support de services virtuels et de services multi-ports l Messages paramétrables n Support multi-langues
12
Caractéristiques l Configuration on-line n Visualisation et modification de la configuration n Graphique dactivité n Rapports sur les requêtes l Puissant outils de trace dexécution dune requête (WATCH)
13
Monitoring, exemple
15
Configuration, exemple
18
Monitoring WATCH, exemple
20
Architecture générale l Un seul process n Multi-threaded èPeux gérer plusieurs connexions simultanées èMécanisme interne de threading uNutilise pas Decthreads n I/O asynchrone èUtilisation intensive dAST l Support volume ODS5
21
Architecture générale l Configuration et monitoring via une interface WEB l Authentification n Interne (base HTA) n Externe via UAF èValidation par identifieur èUtilisation possible de compte nil-access n Externe via un agent èScript CGIplus
22
Architecture générale l Droits daccès n Méthode de connexion (SSL ou non) n Liste dutilisateurs n Identifieurs n Base HTA
23
Pré-processeur HTML l Server Side Includes (SSI) n Ajout dynamique de dinformations à une page n Création de page virtuelle n Génération conditionnelle de page n Exécution de commande DCL èExemples :
24
Hello Simple SSI Demonstration Hello, the time here is The source of this document Pré-processeur HTML
25
Hello 192.168.0.30! Simple SSI Demonstration Hello 192.168.0.30, the time here is 22:55 The source of this document Pré-processeur HTML
26
Mécanisme de scripting l Trois types de process n Sous-process n Process detaché èPeut ne pas appartenir au serveur uUtilisation de $PERSONA (OpenVMS 6.2 minimum) uRestriction des comptes autorisés par un identifier n Decnet l Réutilisation dun process n Peut être désactivé èPerformances…
27
Mécanisme de scripting l Environnement dexécutions n Compte du serveur èMode par défaut n Compte prédéfini èExemple : # one script to be executed under the account SET /cgi-bin/a_big_script* script=as=BIG_ACCOUNT # all scripts in this area to be executed under this account SET /database-bin/* script=as=DBACCNT
28
Mécanisme de scripting l Environnement dexécutions n Compte utilisateur dauthentification (connexion) èExemple : SET /cgi-bin/cgi_process script=as=$ n Environnement utilisateur de connexion èExemple : SET /~*/www/cgi-bin/* script=as=~ UXEC /~*/cgi-bin/* /*/www/cgi-bin/* UXEC+ /~*/cgiplus-bin/* /*/www/cgi-bin/* USER /~*/* /*/www/* REDIRECT /~* /~*/ PASS /~*/* /dka0/users/*/*
29
Mécanisme de scripting l Common Gateway Interface (CGI) n Mode le plus simple n Le script (programme) sexécute et se termine n Compatibilité Apache, OSU,… n CGIplus, ISAPI èLe script est rémanent èTemps de latence très court èProgrammation (conception) plus complexe l DECnet & OSU
30
Mécanisme de scripting l CGI Callouts n Permet d établir un dialogue entre le script et le serveur èExemples : uModification de la durée de vie du process uConversion URL nom de fichier l Run-Time Environments l Perl l Java l Raw TCP/IP Socket
31
Mécanisme de scripting l Exemple 1 $ say = "write sys$output" $! the next two lines make it CGI-compliant $ say "Content-Type: text/plain" $ say "" $! start of plain-text body $ show system
32
Mécanisme de scripting l Exemple 2 $ say = "write sys$output" $! the next two lines make it CGI-compliant $ say "Content-Type: text/html" $ say "" $! start of HTML script output $ say " " $ say "Hello ''WWW_REMOTE_HOST'" !(CGI variable) $ say " " $ say "System time on node ''f$getsyi("nodename")' is:" $ say " ''f$cvtime()' " $ say " "
33
Performances comparatives l Extrait de la documentation WASD n AlphaServer 2100 4/275 bi-processeur, VMS v7.2-1 et DEC TCP/IP 5.1. n Keep-Alive désactivé: chaque requête nécessite une connexion/déconnexion TCP/IP complète. n DNS et trace daccès (logging) désactivés n Le serveur et la machine tournant le test sont reliés par un réseau 100 Mbps FDDI n WASD V7.2, CSWS V1.1, OSU V3.9a
34
Performances comparatives l Cache désactivé n Requêtes/Seconde n Consommation CPU (Secondes)
35
Performances comparatives l Cache activé n Requêtes/Seconde n Consommation CPU (Secondes)
36
Performances comparatives l Taux de transfert n Moctets/Seconde
37
Performances comparatives l CGI Scripting n Requests/Second
38
Prochaines évolutions l Configuration (méta-config) n Règles conditionnelles de « mapping » pour HTTPD$AUTH if (remote-addr:131.185.250.*) else endif
39
Prochaines évolutions l Instances multiples n Inclus les fonctionnalités pour configurer, maintenir et coordonner plusieurs serveurs tournant sur un seul système ou sur un cluster èVersions V7.n contient déjà quelques fonctionnalités de ce type n Peuvent partager sur un nœud les requêtes entrantes èMécanisme de « round-roubin »
40
Prochaines évolutions l Instances multiples (suite) n Le premier serveur sexécutant créé automatiquement les autres instances n Réalisé en utilisant le lock manager VMS n Comporte des mécanismes déquilibre de charge, de redémarrage et de « failover » automatiques n La limitation devient rapidement la stack IP utilisée…
41
Prochaines évolutions l Scripts « Inter-Serveur » n Configuration et exécution de script (CGI/CGIplus) à travers un autre serveur tournant dans un même cluster en utilisant les routines ICC (Intra-Cluster Communications) èExtension possible de ce mécanisme via TCP/IP à un serveur extra-cluster avec, dans ce cas, lutilisation de SSL (par exemple au moyen dune passerelle HTTP:/HTTPS)
42
Prochaines évolutions l Passerelle HTTP:/HTTPS n Transforme une requête émise via standard HTTP en une requête SSL pour un service nécessitant un accès SSL n Permettra également de sécuriser les scripts inter-serveur de manière transparente l Conversion de caractères via les routines VMS NCS
43
Prochaines évolutions l Cache VLM n Partagé entre les différentes instances du serveur n Pouvant être « mappé » sur une section globale galactique l Sélection automatique du document en fonction de la langue configurée dans le navigateur client n Document générique EXAMPLE.HTML èFrançais EXAMPLE_FR.HTML èAllemand EXAMPLE_DE.HTML
44
Prochaines évolutions l Proxy FTP l Interface TOMCAT l Support IPF (Itanium processor family)
45
Calendrier prévisionnel l WASD V7.2.1 n Novembre 2001 n Corrections de bugs l WASD V8.0 n Beta novembre 2001 n Production début 2002 n Méta-Config n Instances multiples
46
Calendrier prévisionnel l WASD 8.1 n Beta prévu second trimestre 2002 n Production troisième trimestre 2002 n Exécution de script « inter-serveur » n Passerelle HTTP:/HTTPS n Autres fonctionnalités ? èUtiliser la liste de distribution
47
Pour plus dinformations l http://wasd.vsm.com.au/ http://wasd.vsm.com.au/ l http://wasd.vsm.com.au/wasd/ http://wasd.vsm.com.au/wasd/ l WASD HTTPd OpenVMS Web Server discussion list : info-wasd@vsm.com.au info-wasd@vsm.com.au l Alan Winston n OpenVMS with Apache, OSU and WASD The Nonstop Webserver
48
Questions ?
49
Informations Orateur jf.pieronne@laposte.netf.pieronne@l http://www.pi-net.dyndns.org/
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.