Le serveur HTTPd WASD JeanFranois Pironne Sommaire Caractristiques
- Slides: 49
Le serveur HTTPd WASD Jean-François Piéronne
Sommaire Caractéristiques l Architecture générale l Performances l Intégration dans Open. VMS l
Caractéristiques 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 l
Caractéristiques 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 s’il a été modifié depuis une date spécifiée par le client) l
Caractéristiques 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) l n Choix du compte exécutant le script dans le cas d’un process détaché (Open. VMS V 6. 2 minimum)
Caractéristiques l Scripts persistants n n réduction du temps de latence, augmentation du “throughput” et diminution de l’impact sur le système) "CGIplus" scripting èInterface Java, Python, … n Run-Time Environments (RTEs) èLe script n’est pas persistant, seulement l’environnement lui-même u. Par exemple pour Perl, … n "ISAPI" extensions/scripting
Caractéristiques CGI scripting via DECnet (avec réutilisation des connexions) l Émulation OSU scripting, avec réutilisation des connexions, permettant l’utilisation de nombreux scripts OSU sans modifications l Processeur de script (e. g. PERL) configurable sur type du fichier (extension) l
Caractéristiques l Pré-processeur HTML Inclusion conditionnelle de documents n Ajout de la date n Etc. … n Cache configurable, invalidation basée sur le temps pouvant être forcée l Support image clickable (formats NCSA et CERN) l
Caractéristiques l Règles de “mapping” puissantes et faciles d’emploi n l Possibilité de règles conditionnelles Possibilité d’authentification par SYSUAF et droit d’accès d’un utilisateur par identifieur
Caractéristiques l Trace des accès Formats standard "common" et "combined" (ce qui permet l’analyse avec la plus part des outils d’analyse de trace) n Format de traces personnalisable n Création automatique, journalière, hebdomadaire ou mensuelle d’un nouveau fichier de traces n
Caractéristiques Support de services virtuels et de services multi-ports l Messages paramétrables l n Support multi-langues
Caractéristiques l Configuration on-line Visualisation et modification de la configuration n Graphique d’activité n Rapports sur les requêtes n l Puissant outils de trace d’exécution d’une requête (WATCH)
Monitoring, exemple
Monitoring, exemple
Configuration, exemple
Configuration, exemple
Configuration, exemple
Monitoring WATCH, exemple
Monitoring WATCH, exemple
Architecture générale l Un seul process n Multi-threaded èPeux gérer plusieurs connexions simultanées èMécanisme interne de threading u. N’utilise pas Decthreads n I/O asynchrone èUtilisation intensive d’AST l Support volume ODS 5
Architecture générale Configuration et monitoring via une interface WEB l Authentification l Interne (base HTA) n Externe via UAF n èValidation par identifieur èUtilisation possible de compte “nil-access” n Externe via un agent èScript CGIplus
Architecture générale l Droits d’accès Méthode de connexion (SSL ou non) n Liste d’utilisateurs n Identifieurs n Base HTA n
Pré-processeur HTML l Server Side Includes (SSI) Ajout dynamique de d’informations à une page n Création de page virtuelle n Génération conditionnelle de page n Exécution de commande DCL n èExemples : <!--#exec cmd="show device/full tape 1: " --> <!--#dcl show="device/full tape 1: " --> <!--#dcl dir="web: [000000]“ par="/nohead/notrail" -->
Pré-processeur HTML <TITLE>Hello <!--#echo value="{REMOTE_HOST}!" --></TITLE> <H 1>Simple SSI Demonstration</H 1> Hello <!--#echo value={REMOTE_HOST} -->, the time here is <!--#echo value={DATE_LOCAL, 12, 5} --> <P> <UL> <LI><A HREF="ssi. txt">The source of this document</A> </UL>
Pré-processeur HTML <TITLE>Hello 192. 168. 0. 30!</TITLE> <H 1>Simple SSI Demonstration</H 1> Hello 192. 168. 0. 30, the time here is 22: 55 <P> <UL> <LI><A HREF="ssi. txt">The source of this document</A> </UL>
Mécanisme de scripting l Trois types de process Sous-process n Process detaché n èPeut ne pas appartenir au serveur u. Utilisation de $PERSONA (Open. VMS 6. 2 minimum) u. Restriction des comptes autorisés par un identifier n l Decnet Réutilisation d’un process n Peut être désactivé èPerformances…
Mécanisme de scripting l Environnement d’exé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
Mécanisme de scripting l Environnement d’exécutions n Compte utilisateur d’authentification (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 /~*/* /dka 0/users/*/*
Mécanisme de scripting l Common Gateway Interface (CGI) Mode le plus simple n Le script (programme) s’exécute et se termine n Compatibilité Apache, OSU, … n CGIplus, ISAPI n èLe script est rémanent èTemps de latence très court èProgrammation (conception) plus complexe l DECnet & OSU
Mécanisme de scripting l CGI Callouts n Permet d’ établir un dialogue entre le script et le serveur èExemples : u. Modification de la durée de vie du process u. Conversion URL <-> nom de fichier Run-Time Environments l Perl l Java l Raw TCP/IP Socket l
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
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 "<HTML>" $ say "Hello ''WWW_REMOTE_HOST'" !(CGI variable) $ say "<P>" $ say "System time on node ''f$getsyi("nodename")' is: " $ say "<H 1>''f$cvtime()'</H 1>" $ say "</HTML>"
Performances comparatives l Extrait de la documentation WASD Alpha. Server 2100 4/275 bi-processeur, VMS v 7. 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 d’accè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 V 7. 2, CSWS V 1. 1, OSU V 3. 9 a n
Performances comparatives l Cache désactivé n Requêtes/Seconde n Consommation CPU (Secondes)
Performances comparatives l Cache activé n Requêtes/Seconde n Consommation CPU (Secondes)
Performances comparatives l Taux de transfert n Moctets/Seconde
Performances comparatives l CGI Scripting n Requests/Second
Prochaines évolutions l Configuration (méta-config) n Règles conditionnelles de « mapping » pour HTTPD$AUTH if (remote-addr: 131. 185. 250. *) <map or authorize rule> else <etc> endif
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 V 7. 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 »
Prochaines évolutions l Instances multiples (suite) Le premier serveur s’exé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… n
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, l’utilisation de SSL (par exemple au moyen d’une passerelle HTTP: /HTTPS)
Prochaines évolutions l Passerelle HTTP: /HTTPS 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 n l Conversion de caractères via les routines VMS NCS
Prochaines évolutions l Cache VLM n n l Partagé entre les différentes instances du serveur Pouvant être « mappé » sur une section globale galactique 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
Prochaines évolutions Proxy FTP l Interface TOMCAT l Support IPF (Itanium processor family) l
Calendrier prévisionnel l WASD V 7. 2. 1 Novembre 2001 n Corrections de bugs n l WASD V 8. 0 Beta novembre 2001 n Production début 2002 n Méta-Config n Instances multiples n
Calendrier prévisionnel l WASD 8. 1 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 ? n èUtiliser la liste de distribution
Pour plus d’informations http: //wasd. vsm. com. au/ l http: //wasd. vsm. com. au/wasd/ l WASD HTTPd Open. VMS Web Server discussion list : info-wasd@vsm. com. au l Alan Winston l Open. VMS with Apache, OSU and WASD The Nonstop Webserver n
Questions ?
Informations Orateur jf. pieronne@laposte. net http: //www. pi-net. dyndns. org/
- Command line: '/usr/sbin/httpd -d foreground'
- 1php
- Serveur fax gratuit
- Serveur:9999
- Le protocole arp
- Xen hypervisor
- Gfi fax server
- Serveur iis
- Serveur zemmouchi
- Sommaire dossier professionnel
- Cv sommaire
- Sommairelnh
- Vision sommaire
- Sommaire
- Nettoyage sommaire
- Sommaire d'un projet
- Exemple oral brevet
- Sommaire 1 2020
- Intertitre journalisme
- Sommaire dossier de presse
- Sommaire introduction
- Concept d'évocation
- Sommaire manga
- Sommaire interactif powerpoint
- Gestation berger allemand
- Vincent sommaire
- Symbole transformateur
- Sommaire mémoire
- Exemple de mini projet
- Retour sommaire
- Glossaire exemple
- Sommaire plan de communication
- Sommaire
- Motivation sommaire
- Sommaire 1
- Facteur k pliage
- Sommaire projet professionnel
- Balliance
- Rapport de stage bts crsa