quatrième partie: le serveur de diffusion express server par mario lapointe ing. mba architecte...
TRANSCRIPT
Quatrième partie:
Le serveur de diffusion Express Server
Par Mario Lapointe ing. MBAArchitecte d’affaires, Régie de l’Assurance Maladie du QuébecDe 14h45 à 15h30
Sujets abordés:
1. Pourquoi utiliser Express Server ?
2. Les modes de diffusion offerts aux clients
3. Stratégie de diffusion : MrSID vs JPEG
4. Fonctionnement de Express Server
5. Démonstration de Express Server
Le serveur de diffusion Express Server
• MrSID pour les images
• DjVu pour les documents
• Express Server pour la diffusion Web
Technologie LizardTech
1. Pourquoi utiliser Express Server ?
• Solution Web intégrée pour l’affichage des données sous format MrSID ou DJVU
• Diffusion accessible pour tous les fureteurs• Conversion des images selon les formats les plus
utilisés sur le WEB• Architecture ouverte XML - XSL• Solution garantissant des performances optimales
peu importe le volume de trafic généré• Requiert un dépôt de données unique
2. Les différents modes de diffusion offerts aux clients
• HTML ou DHTML
• Applet Java
• Les Plug-ins
HTML ou DHTML• Mode très avantageux puisqu’il permet
de rejoindre tous les utilisateurs sur le Web, peu importe le type de fureteur ou le système d’exploitation
• Navigation moins conviviale que celle offerte par les Plug-ins MrSID ou DJVU
http://localhost:9001/StyleServer/calcrgn?cat=Interiors&item=/cellar.sid&wid=500&hei=250&style=simple/view-dhtml-lap.xsl
Applet Java
• Simple d’utilisation • Source disponible• Taille de l’applet (environs 16 KB)
http://localhost:9001/StyleServer/calcrgn?cat=Airplanes&item=/airplane-5.sid&wid=500&hei=250&props=item(Name,Description),cat(Name,Description)&style=simple/view.xsl&applet=true&plugin=false&browser=win_ie
Les Plug-ins
• Plug-in MrSID
• Plug-in DJVU
• L’auto-installation
• Prérequis d’installation
Plug-in MrSID
• Convivialité et performance • Fonction évoluée de Zoom-in et Zoom-out• Haut niveau de résolution• Faible sollicitation de la bande passante • Qualité d’impression supérieure au JPEGhttp://localhost:9001/StyleServer/calcrgn?browser=win_ie
&cat=Interiors&item=/study.sid&wid=420&hei=400&style=default/view.xsl
Plug-in DjVu
• Convivialité et performance
• Fonction évoluée de Zoom-in , Zoom-out, pan et rotation des images
• Fonction d’OCR permettant de rechercher du texte
http://localhost/lizardtech/iserv/getdoc?cat=Geo&doc=USGS_map.djvu
Lors du chargement d’un document DJVU ou d’une image MrSID, Express Server détecte la version du fureteur, le système d’exploitation et la disponibilité du Plug-in pour cet environnement. L’usager n’aura ensuite qu’à approuver l’installation du Plug-in.
L’auto-installation des Plug-ins
• Windows 98, NT, 2000, ME, XP, Mac OS X ou 9, Solaris, Linux
• Environ 3 MB d’espace disque pour l’installation.
• Netscape Navigator® versions supérieur à 4.77, ou Microsoft Internet Explorer 5.0 et plus
Prérequis d’installation
3. Stratégie de diffusion MrSID Vs JPEG
• Diffusion des images en format MrSID– Avantages– Désavantages
• Diffusion des images en format JPEG– Avantages– Désavantages
Avantages
• Navigation conviviale• Qualité d’affichage et d’impression• Vitesse de rafraîchissement optimale• Détection automatique du Plug-in• Contrôle de l’impression et de la sauvegarde
du côté client.
Diffusion des images en format MrSID
Diffusion des images en format MrSID
Désavantages
• Installation d’un Plug-in
• Disponibilité du Plug-in MrSID
Avantages
• Supporté par tous les environnements • Poids de l’image sensiblement constant
• Création de page WEB entièrement personnalisable.
Diffusion des images en format JPEG
Diffusion des images en format JPEG
Désavantages
• La performance du serveur peut se dégrader lors d’utilisation intensive.
• Perte de qualité de l’image due à la conversion des images MrSID en JPEG
• Perte de convivialité par rapport à l’utilisation du Plug-in.
4. Fonctionnement de Express Server
• Express Server et ses composantes– Content Server– Style Server– SDK
• Processus de flux de données
• Les catalogues
• MetaData ou Métadonnées
• Web API
Content Server
• Retourne aux clients les images et les documents
• Gestion des catalogues
• Multi-thread
• Optimisation de la bande passante (caching)
• Serveur de conversion d’image
• Utilise les standards XML et XSL
• Processeur XSLT (eXtensible Stylesheet Language Transformation)
• Conversion du XSLT en HTML
Style Server
Exemples d’utilisations
• Feuilles de style par défauthttp://localhost:9001/StyleServer/calcrgn?cat=Airplanes&item=/airplane-5.sid&wid=500&hei=250&props=item(Name,Description),cat(Name,Description)&style=simple/view-
dhtml.xsl
• Feuilles de style personnaliséhttp://localhost:9001/StyleServer/calcrgn?
cat=Interiors&item=/cellar.sid&wid=500&hei=250&style=simple/view-dhtml-per.xsl
Style Server
SDK
• Architecture ouverte
• Écrit en langage C ++
• Création de ses propres Web API
• API permettant l’accès au catalogue
Express Server et ses composantes
• Content Server
Serveur Web (NT, Solaris, Linux)
Express Server et ses composantes
• Content Server
Serveur Web (NT, Solaris, Linux)
Express Server et ses composantes
• Content Server• File Provider
Module
Serveur Web (NT, Solaris, Linux)
File providermodule
File System
Express Server et ses composantes
• Content Server• File Provider
Module• Style Server
(optionnel) Serveur Web (NT, Solaris, Linux)
File providermodule
Style ServerURL
XML
File System
Express Server et ses composantes
• Content Server• File Provider
Module• Style Server
(optionnel)• SDK
Web Server (NT, Solaris, Linux)
File providermodule
Style Server
SDK
URL
XML
API
File System
Processus de flux de données
• Images ou documents sous format papier
Images sous formats papier
Processus de flux de données
• Images ou documents sous format papier
• Numérisation
Images sous format papier
Create electronicversion
TIFFTIFF
TIFF
TIFFTIFF
TIFF
Photographs Documents
Processus de flux de données
• Images ou documents sous format papier
• Numérisation• Générer au
format MrSID ou DjVu
Images sous formats papier
Numérisation
TIFFTIFF
TIFF
TIFFTIFF
TIFF
Photos Documents
Processus de flux de données
Serveur Web (NT, Solaris, Linux)
File providermodule
Style ServerURL
XML
File System
URL
HTML
Fureteur
Processus de flux de données
Serveur Web (NT, Solaris, Linux)
File providermodule
Style ServerURL
XML
File System
URL
HTML
Fureteurs
Processus de flux de données
Serveur Web (NT, Solaris, Linux)
File providermodule
Style Server
SDK
URL
XML
API
File System
URL
HTML
API
Fureteurs
Applications
Les catalogues
• Gérés par le File Provider Module de Content Server
• Images MrSID et documents DJVU
• Structure de répertoire et sous-répertoire
• Utilise le système de fichier du système d’exploitation
MetaData ou Métadonnées
• S’applique aux Images MrSID
• Extraction des Métadonnées
• L’utilitaire MUTA
Extraction des métadonnées
Pour visualiser les métadonnées que l’on veut extraire, il suffit d’ajouter le paramètre props (properties) lors de l’appel de la commande WEB API browse. Cette requête retournera le résultat en format XML.
http://localhost/lizardtech/iserv/browse?cat=Airplanes&props=item(Name,Description),cat(Name,Description)&style=none
L’utilitaire MUTA
• Un utilitaire “command line” pour ajouter ou éditer les métadonnées
• Paramètres
– -f [filename, sid]
– -d [descriptor=“value”]
L’utilitaire MUTAExemple:
Les données descriptives pour les valeurs “Name” et “Description” sont ajoutées à l’image sample.sid en utilisant la commande MUTA selon la syntaxe suivante:
C:\>LizardTech\Content Server\bin\muta -f sample.sid -d Name=“Nom de l’image"
-d Description=“Voici la description de l’image."
Web API
Commandes à ajouter dans vos pages Web permettant d’afficher des images ou des documents
• GETIMAGE • GETTHUMB • GETWATERMARK • GETDOC
Web API
getimagegetimage?cat=paraml&img=param2 [&oif=param3] [&rgn=param4] [&wid=param5] [&hei=param6]
Paramètres• cat• img• oif [optionel]• rgn [optionel] • wid [optionel]• hei [optionel]
Web API
Retourne l’image dans le format de son choix (MrSID, JPEG, BMP, TIFF).
Exemple getimage:
http://localhost/lizardtech/iserv/getimage?cat=Airplanes&item=/airplane-3.sid&oif=jpeg&rgn=0,0,.5,.5&wid=200&hei=300
Web APIExemples getimage:
Une image complète de taille différentehttp://localhost/lizardtech/iserv/getimage?cat=Airplanes&item=/airplane-3.sid&oif=jpeg&rgn=0,0,1,1&wid=400&hei=600
• Une portion de l’imagehttp://localhost/lizardtech/iserv/getimage?cat=Airplanes&item=/airplane-3.sid&oif=jpeg&rgn=0,0,.5,.5&wid=400&hei=600
Web API
getthumbgetthumb?cat=paraml&img=param2 [&thumbspec=param3]
Paramètres
• Cat• Img• Thumbspec- [optionel]
Web API
Génère un thumbnail ou une image timbre-poste.
Exemple getthumb:
http://localhost/lizardtech/iserv/getthumb?cat=Interiors&img=foyer.sid&thumbspec=main
Web API
getdocgetdoc?cat=paraml&doc=param2
Paramètres• cat• doc
Web API
Retourne un document DJVU.
Exemple getdoc:
http://localhost/lizardtech/iserv/getdoc?cat=Geo&doc=DjVuWebGuide.djvu
Web API
Commandes permettant le retour de données en format XML
• BROWSE • GETSTYLE• CALCRGN
Web API
browse browse? [cat=paraml] [&folder=param2] [&style=param3] [&props=param4]
Paramètres
• cat [optionel] • folder [optionel] • style [optionel] • props [optionel]
Web API
Browse peut retourner en format XML un des résultats suivants:
• La liste des catalogues de Express server
• La liste des répertoire pour un catalogue
• La liste des fichiers pour un répertoire
Web API
Exemples browse:
• Une requête pour afficher tous les catalogueshttp://localhost/lizardtech/iserv/browse?style=none
• Une requête pour afficher le contenu d’un catalogue http://localhost/lizardtech/iserv/browse?cat=Airplanes&style=none
Web API
getstylegetstyle?style=param1
Paramètres• style
La commande getstyle permet à Style Server ou aux clients l’accès au feuille de style permettant de formater l’affichage des données XML transmis par Content Server.
Web API
Exemples getstyle:Présente le contenu de la feuille de style default.xsl
http://localhost/lizardtech/iserv/getstyle?style=default
Avec le style simple.xslhttp://localhost/lizardtech/iserv/getstyle?style
=simple
Web API
Calcrgncalcrgn?cat=paraml&img=param2 [&rgn=param3] [&cmd=param4] [&x=param5] [&y=param6]
[&wid=paramT] [&hei=paramS] Paramètres • Cat• Img• rgn [optionel]
Web API
Paramètres (suite)• cmd [optionel ]• zoomin (augmente la résolution par deux)• zoomout (diminue la résolution par deux)• Pan• x [optionel] • y [optionel]• wid • hei
Web API
Extrait de Express Server les informations de l’image qui seront retournées en format XML directement au demandeur. Celui-ci peut être Style Server ou un fureteur capable d’interpréter du XML.
Exemple #1 calcrgnhttp://localhost/lizardtech/iserv/calcrgn?cat=Interiors&img=
foyer.sid&wid=200&hei=200&oif=jpeg&style=none
Web API
Exemple #2 intégration calcrgn
On peut utiliser le résultat XML de la commande précédente pour générer une image en format JPEG
http://localhost/lizardtech/iserv/getimage?cat=Interiors&img=foyer.sid&wid=200&hei=200&oif=jpeg&style=none&rgn=-0.0490129340, -0.1845365229,1.0401633764,1.1824006835
Web API
Exemple #3 calcrgn
Utilisation du paramètre cmd=zoomin
http://localhost/lizardtech/iserv/calcrgn?cat=Interiors&img=foyer.sid&wid=200&hei=200&oif=jpeg&style=none&cmd=zoomin
Web API
Exemple #3 intégration calcrgn
Le résultat XML est ensuite envoyé avec la commande getimage
http://localhost/lizardtech/iserv/getimage?cat=Interiors&img=foyer.sid&wid=200&hei=200&oif=jpeg&styye=none&rgn=0.2232811436,0.1571977787,0.7678692988,0.8406663819
Web API Exemple #3 calcrgn avec rgn
Pour doubler la résolution, on répète la commande calcrgn en y ajoutant les coordonnées du paramètre rgn de la commande précédente
http://localhost/lizardtech/iserv/calcrgn?cat=Interiors&img=foyer.sid&wid=200&hei=200&oif=jpeg&style=none&cmd=zoomin&rgn=0.2232811436,0.1571977787,0.7678692988,0.8406663819
Web APIExemple #3 intégration calcrgn avec
rgnLe résultat XML est ensuite envoyé une seconde fois avec la commande getimage
http://localhost/lizardtech/iserv/getimage?cat=Interiors&img=foyer.sid&wid=200&hei=200&oif=jpeg&style=none&cmd=zoomin&rgn=%200.3567052417,0.3246475865,0.6289993193,0.6663818881
Démonstration de Express Server
• Page d’accueil par défaut de Express Server
http://localhost:9001/StyleServer/browse?
Merci pour votre attention