|
|
|
|
|
- Présentation
- Importance des sessions prélancées
- Principe d'une requête d'affichage d'une page AWP
- Intérêt des sessions prélancées
- Mise en place
- Les différentes étapes
- Activer la détection des erreurs spécifiques aux sessions prélancées
- Corriger les erreurs spécifiques aux sessions prélancées
- Activer les sessions prélancées sur le serveur
Les sessions prélancées
Une session prélancée est une session d'un site Web (ou d'un webservice) lancée automatiquement sur le serveur Web depuis le Serveur d'Application WEBDEV. L'utilisation des sessions prélancées permet d'accélérer l'affichage des pages en effectuant par anticipation des traitements longs : connexions aux bases de données, chargement des configurations de pages, etc. Les sessions prélancées peuvent être utilisées avec les sites WEBDEV en mode Session, les sites WEBDEV AWP et les webservices SOAP et les Webservices REST. Le mode de fonctionnement est identique dans tous les cas. Remarque : Les sessions prélancées sont autorisées uniquement sur le serveur illimité ou 10 connexions. Elles ne sont pas actives sur le poste de développement. Importance des sessions prélancées Principe d'une requête d'affichage d'une page AWP Pour comprendre l'importance des sessions prélancées (notamment pour les pages AWP), revenons un instant sur le principe des pages AWP. Lorsqu'un internaute effectue une requête à partir d'une page AWP, les opérations suivantes sont réalisées : - La requête est transmise du navigateur au serveur Web.
- Le serveur Web analyse la requête.
- Le serveur Web transmet la requête au Serveur d'application WEBDEV.
- Le Serveur d'application WEBDEV :
- charge le projet correspondant à la page.
- exécute le code d'initialisation du projet, puis le code de la page.
- renvoie la réponse au serveur Web.
- Le serveur Web renvoie la réponse au navigateur.
Intérêt des sessions prélancées Lors de l'affichage d'une page AWP, chaque appel au Serveur d'application WEBDEV est totalement indépendant. Conséquence : A chaque requête (et donc à chaque changement de page, chaque appel Ajax), le Serveur d'application WEBDEV recharge le projet et ré-exécute le code d'initialisation. Ce code d'initialisation du projet exécute souvent des opérations "longues" : - connexion à la base de données,
- chargement des fichiers de configuration,
- ...
Les sessions prélancées permettent de demander au Serveur d'application WEBDEV de faire ces opérations à l'avance, par anticipation. Ainsi, lorsque la requête de l'internaute arrive au Serveur d'application WEBDEV, le serveur d'application n'a plus qu'à exécuter la requête et envoyer le résultat. Les sessions prélancées présentent donc un bénéfice en temps de réponse puisqu'une partie du code est exécuté en avance. Cependant, les sessions pré-lancées ne réduisent pas la charge sur le serveur (le code étant tout de même exécuté) et ne remplacent pas l'optimisation des codes d'initialisation. Les différentes étapes Pour mettre en place les sessions pré-lancées dans un projet WEBDEV : - Activez la détection des erreurs spécifiques aux sessions prélancées.
- Corrigez les erreurs en utilisant l'événement "Initialisation lors d'une connexion à une session prélancée".
- Activez les sessions prélancées sur le Serveur d'application WEBDEV.
Activer la détection des erreurs spécifiques aux sessions prélancées Si votre projet utilise des sessions prélancées, certaines fonctions ne peuvent plus être utilisées lors de l'initialisation du projet. Pour connaître les problèmes potentiels lors de l'utilisation des sessions prélancées, il suffit d'activer le mode de détection des erreurs spécifiques aux sessions prélancées : - Affichez si nécessaire le volet "Erreurs de compilation" : sous le volet "Accueil", dans le groupe "Environnement", déroulez "Volets" et sélectionnez "Volets" puis "Erreurs de compilation".
- Dans le volet des erreurs de compilation, cliquez sur l'icône .
- La liste des erreurs s'affiche.
Remarque : L'activation de la détection des erreurs peut également être effectuée depuis la fenêtre de description de la configuration courante : - Sous le volet "Projet", dans le groupe "Configuration de projet", cliquez sur "Configuration courante".
- Dans l'onglet "Compatibilité", cochez l'option "Afficher les erreurs de compilation relatives aux sessions prélancées".
- Validez.
- Dans le volet des erreurs, la liste des erreurs s'affiche.
Corriger les erreurs spécifiques aux sessions prélancées Les erreurs des sessions prélancées indiquent les fonctions WLangage interdites dans l'événement "Initialisation" du projet. Ces fonctions sont les suivantes :
| | AnnuleContexteAWP | Supprime du contexte AWP une variable ajoutée par la fonction DéclareContexteAWP. | AnnuleContexteWebservice | Supprime du contexte du webservice une variable ajoutée par la fonction DéclareContexteWebservice. | ASPAffiche | Appelle un script ASP externe et renvoie la page résultat dans la fenêtre en cours du navigateur. | CertificatClientInfo | Renvoie des informations sur le certificat utilisé par le poste client. | ChaîneAffiche | Renvoie une chaîne spécifique (ou un buffer) sur le navigateur du client en réponse à la requête reçue. | ConfigureContexteAWP | Configure le mode de fonctionnement du contexte AWP. | Confirmer | Affiche un message dans une boîte de dialogue standard proposant les réponses "Oui", "Non", "Annuler" et renvoie la réponse de l'utilisateur. | ContexteFerme | Ferme un contexte de page. | ContexteOuvre | Ouvre un nouveau contexte de page sans renvoyer les informations vers le navigateur. | CookieLit | Récupère la valeur d'un cookie enregistré sur le poste de l'internaute. | DéclareContexteAWP | Permet de déclarer une liste de variables dont la valeur sera persistante entre les affichages successifs des pages AWP. | DéclareContexteWebservice | Permet de déclarer une liste de variables dont la valeur sera persistante entre les appels successifs à un Webservice. | ExécuteProcédureDifférée | Exécute une procédure différée (dans le serveur d'application WEBDEV). | FichierAffiche | Affiche un fichier sur le navigateur de l'internaute. | FramesetActualise | Actualise un frameset affiché dans le navigateur de l'internaute à partir du contexte présent sur le serveur. | FramesetAffiche | Affiche un frameset WEBDEV dans le navigateur de l'internaute. | FramesetUtilise | Affiche un frameset WEBDEV dans le navigateur de l'internaute et ferme tous les contextes de pages et de framesets en cours. | GglConnecte | Permet de s'authentifier auprès d'un serveur Google (via le mode d'authentification "OAuth 2.0"). | gpwOuvre | Ouvre la fenêtre ou la page de login du groupware utilisateur. | IdentifiantContexteAWP | Renvoie l'identifiant du contexte AWP. | ImagePosX | Renvoie la position horizontale (X) du curseur de souris par rapport au champ Image considéré. | ImagePosY | Renvoie la position verticale (Y) du curseur de souris par rapport au champ Image cliquable considéré. | ImageZone | Renvoie le numéro de la zone de l'image cliquée par l'internaute. | LibèreContexteAWP | Libère de manière anticipée le contexte AWP (sur disque) pour permettre à d'autres appels sur le même contexte AWP d'être traités en parallèle. | NavigateurAdresseIP | Renvoie l'adresse IP du poste de l'Internaute connecté au site WEBDEV. | NavigateurNom | Renvoie le nom du navigateur de l'internaute ("user agent"). | NavigateurPlateforme | Retourne la plateforme du navigateur utilisée par l'internaute. | NavigateurType | Retourne le type du navigateur utilisé par l'internaute. | NavigateurVersion | Retourne la version du navigateur utilisé par l'internaute. | OKAnnuler | Affiche un message dans une boîte de dialogue standard proposant les réponses "OK" et "Annuler" et renvoie la réponse de l'utilisateur. | OuiNon | Affiche un message dans une boîte de dialogue standard proposant les réponses "Oui" et "Non" et renvoie la réponse de l'utilisateur. | PageActualise | Actualise une page affichée dans le navigateur de l'internaute à partir du contexte présent sur le serveur. | PageAffiche | Affiche une page du site dans le navigateur de l'internaute. | PageAfficheDialogue | Affiche une page de manière modale. Cette fonction permet de créer un dialogue avec l'utilisateur. La page est affichée devant et en arrière-plan se trouve la page ouvrante, grisée par le mécanisme de GFI. | PageFermeDialogue | Ferme la page courante. Cette page a été ouverte avec la fonction PageAfficheDialogue. Une valeur de retour peut être renvoyée à la page appelante. | PageParamètre | Renvoie la valeur d'un paramètre passé à la page en cours. | PageUtilise | Affiche une page WEBDEV dans le navigateur de l'internaute et ferme tous les contextes de pages actuellement ouverts sur le serveur. | PHPAffiche | Appelle un script PHP externe et renvoie la page résultat dans la fenêtre en cours du navigateur. | rssAffiche | Construit un flux RSS et renvoie le contenu du flux RSS au client. | ScriptAffiche | Appelle un script ou une page externe (par exemple .php, .asp, .mhtml ou .mht) et renvoie la page résultat dans la fenêtre en cours du navigateur. | UploadCopieFichier | Enregistre sur le serveur un fichier "uploadé" par l'internaute. | UploadNomFichier | Renvoie le nom d'un fichier "uploadé" par l'internaute. Cet upload a pu être effectué : - via un champ de saisie de type "Upload".
- via un champ Upload mono ou multi-fichiers.
| WebserviceAdresseIPClient | Renvoie l'adresse IP du poste utilisant et appelant le Webservice. |
Pour gérer les sessions prélancées, deux événements sont associés au projet : - l'événement "Initialisation" du projet, exécuté avant l'arrivée de la requête sur le Serveur d'application WEBDEV. Ce code est exécuté lors du lancement de la session prélancée.
- l'événement "Initialisation lors d'une connexion à une session prélancée", exécuté lorsque le Serveur d'application WEBDEV traite la requête.
Pour corriger les erreurs spécifiques aux sessions prélancées, il suffit de déplacer le code correspondant dans l'événement "Initialisation lors d'une connexion à une session prélancée". Lorsque le site est compatible avec le mécanisme des sessions prélancées, il est possible de le déployer et d'activer les sessions prélancées sur le Serveur d'application WEBDEV. Activer les sessions prélancées sur le serveur Pour activer les sessions prélancées pour un site : - Lancez l'administrateur WEBDEV.
- Affichez l'onglet "Configuration".
- Cochez l'option "Autoriser les sessions prélancées.". Par défaut, tous les sites et webservices ont un nombre de sessions prélancées égal à 0.
- Sélectionnez le site ou le webservice à configurer (onglet "Sites" ou onglet "Webservice").
- Dans les paramètres du site (option "Paramètres" de l'onglet "Sites") ou du Webservice (option "Paramètres" de l'onglet "Webservices"), précisez le nombre de sessions prélancées à utiliser.
- Validez.
Remarques : - Les sessions prélancées sont comptées dans le nombre total de connexions au site (ou au Webservice). Cette information doit être prise en compte lors du paramétrage du serveur d'application WEBDEV.
- Le nombre de sessions prélancées à définir dépend de l'utilisation du serveur et du nombre de requêtes.
- Quand un utilisateur se connecte (dans le cas d'un site en mode Session) ou affiche une page (cas d'un site AWP), le serveur d'application WEBDEV utilise une session prélancée de cette application s'il en existe une, sinon le serveur d'application WEBDEV lance une session normale (comme si le site n'avait pas de sessions prélancées).
- Le nombre de sessions prélancées disponibles est vérifié (par site) chaque seconde. Donc le nombre de sessions prélancées dépend du nombre de connexions (cas d'un site en mode Session) ou d'affichages de page (cas d'un site AWP) par seconde.
- Attention, il faut tenir compte du temps de lancement des sessions prélancées : si une session prend plus de une seconde à se (pré)lancer, le nombre de sessions prélancées effectivement disponible diminue.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|