S1 - Michael BOURAK - ACAMAYA

Dimension: px
Commencer à balayer dès la page:

Download "S1 - Michael BOURAK - ACAMAYA"

Transcription

1 Performance pour les applications Notes & Domino S1 - Michael BOURAK - ACAMAYA

2 Introduction 45 minutes Critères d évaluation d une application - 7+ slides Je vais en sauter beaucoup, vous aurez donc de la lecture pour après ;-) Justesse Performance Maintenabilité La justesse est primordiale mais - Si l application répond le résultat correct en 1min! Si l application répond en 1/1ème de seconde mais que le code n est pas évolutif et que vous êtes le seul à pouvoir le comprendre que toute modification demande un refactoring important Optimiser une application, c est souvent trouver de bons compromis Ne pas oublier l aspect utilisateur - la performance «perçue»

3 Généralités Il faut Mesurer - - On ne peut, en général, pas prédire les performances d une application Il faut être capable de quantifier les progrès suite à une «optimisation» Il n y a pas que le temps d exécution à prendre en compte Mémoire utilisée CPU Charge réseau induite Il faut toujours comparer des résultats en environnement équivalent La performance est un critère à prendre en compte tout au long du développement et de la vie de l application Rien ne remplace une bonne conception et souvent rien ne permettra de rattraper une mauvaise conception! Domino n est pas la solution adaptée à tous les problèmes - Cette remarque est valable pour tous les serveurs d applications Domino peut être utilisé conjointement à un serveur J2EE, une base de données La «légende urbaine» sur la mauvaise performance des applications Domino

4 Facteurs de performance d une application Le Serveur - Serveur physique : CPU / RAM / Disk - Réseau - Configuration du serveur Domino L application elle-même - Toutes les recommandations sont très «application dependant» - Il faudra toujours tester : - Dans votre contexte applicatif Dans votre environnement On peut toujours tuner un serveur Domino, mais Dans la majorité des cas le facteur le plus influant sur les performances d une application est l application elle-même ;-) - Pourtant, en cas de problème, la tendance est de commencer par regarder le serveur, essayer de le tuner - Seul un serveur trés mal configuré ou avec un problème hardware peut causer des problèmes de performance - A moins qu il ne soit sous dimensionné depuis le début Ou que la volumétrie de l application / le nombre d utilisateurs aient augmenté significativement Une application non optimisée sera toujours peu performante même avec un serveur tuné Dimensionner un serveur sans connaitre un minimum de l application est souvent impossible

5 Un coup d œil sur le serveur Domino

6 Un bon début

7 Première analyse des performances d un serveur Domino Log.nsf - Evénements divers : recherche d erreurs, d incidents etc Informations sur les bases : tailles des bases, des vues etc Commandes Serveur - Show Task Show Server Show Stats Show dbs Notes.ini et Directory (names) du serveur - Paramètres spécifiques Planification de taches type compact (documents «program») Réseau - Commandes niveau O.S Notesconnect On aboutit à un premier bilan sur le serveur - On a vérifié qu il n y a rien d anormal Première approche applicative

8 Show Task T as k Des c ription Databas e Server P erform c ons ole c ommands Databas e Server Lis ten for c onnec t reques ts on T C P I P Databas e Server Load M onitor is idle Databas e Server Databas e Direc tory M anager C ac he Refres her is idle Databas e Server O rganization N ame C ac he Refres her is idle Databas e Server I dle tas k Databas e Server P erform Databas e C ac he maintenanc e Databas e Server I dle tas k... Databas e Server P latform Stats is idle SM T P Server I dle tas k LDA P Server I dle tas k LDA P Server I dle tas k SM T P Server I dle tas k A dmin P roc es s I dle LDA P Server Lis ten for c onnec t reques ts on T C P P ort:3 8 9 SM T P Server Lis ten for c onnec t reques ts on T C P P ort:2 5 A gent M anager E xec utive '2 ': I dle A gent M anager Replic ator E xec utive '1 ': I dle I dle SM T P Server C ontrol tas k LDA P Server Router C ontrol tas k I dle A dmin P roc es s I dle Sc hedule M anager I dle Direc tory I ndexer I ndexer I dle I dle A gent M anager I dle Direc tory I ndexer I ndexer I dle I dle Direc tory I ndexer I ndexer E vent M onitor I dle I dle I dle

9 Show Server Lotus Domino (r) Server (Release 6.5.4FP1 for UNIX) 7/12/25 9:44:58 AM Server name: XXXXX/OUOUOUOU/OOOOO - Serveur DOMINO de XXXXX Server directory: /notes/donnees Partition:.notes.donnees Elapsed time: 1:55:47 Transactions/minute: Last minute: 1581; Last hour: 56; Peak: 315 Peak # of sessions: 31 at 7/12/25 9:44:36 AM Transactions: Max. concurrent: Availability Index: 1 (state: AVAILABLE) Mail Tracking: Not Enabled Mail Journaling: Not Enabled Shared mail: Not Enabled Number of Mailboxes: 1 Pending mail: 3 Dead mail: 1 Waiting Tasks: Transactional Logging: Not Enabled Fault Recovery: Enabled Activity Logging: Not Enabled Server Controller: Not Enabled Diagnostic Directory: /var/log/notes/ibm_technical_data Console Logging: Not Enabled Console Log File: /var/log/notes/ibm_technical_data/console.log

10 Show dbs Database Name Refs Mod FDs LockWaits/AvgWait #Waiters MaxWaiters.../stats.nsf 1 Y 1.../mail/fmut.nsf 3 Y 1.../public/diffacoss.nsf5 Y 1.../public/capnats.nsf 3 Y /mail/pika.nsf 3 N 1.../mail/rr.nsf 3 N 1.../mail/reyj.nsf 3 Y 1.../mail/ur nsf 3 Y 1.../mail/edibdem.nsf 3 N 1.../mail/ur nsf 3 Y 1 NB : Certains indicateurs nécessitent le positionnement d une variable dans le notes.ini

11 Show stat Database.Database.BufferPool.Maximum.Megabytes = 256 Database.Database.BufferPool.MM.Reads = 1 Database.Database.BufferPool.MM.Writes = Database.Database.BufferPool.Peak.Megabytes = 255 Database.DbCache.CurrentEntries = 93 Database.DbCache.HighWaterMark = 566 Database.DbCache.Hits = 4311 Database.DbCache.InitialDbOpens = 5936 Database.DbCache.Lookups = 616 Database.DbCache.MaxEntries = 768 NET.TCPIP.Sessions.Limit = NET.TCPIP.Sessions.LimitMax = NET.TCPIP.Sessions.LimitMin = 1 NET.TCPIP.Sessions.Peak = 38 Platform.Memory.RAM.AvailMBytes = Platform.Memory.RAM.AvailMBytes.Avg = Platform.Memory.RAM.AvailMBytes.Min = Platform.Memory.RAM.AvailMBytes.Peak = Platform.Memory.RAM.PctUtil = 52 Platform.Memory.RAM.TotalMBytes = Server.Users.Peak = 32 Server.Users.Active15Min = 25 Server.Users.Active1Min = 67

12 Notes.ini AMGR_DISABL LOOKUP=1 CONSTRAINEDSHMSIZEMB=124 EXTMGR_ADDINS=libmailreleaser.so INET_AUTHENTICATE_WITH_SECONDARY=1 NSF_BUFFER_POOL_SIZE_MB=256 ROUTERDISABLEREADERSFIELD=1 ROUTERENABL BYDEST= SERVER_MAX_CONCURRENT_TRANS=2 UPDATERS=3 VIEW_REBUILD_DIR=/translog/dtf/

13 Coming in 8.5

14 Désactiver les options de log et debug! Il y a des tas de paramètres pour tracer, loguer, débuguer Log_update, log_replication, debug_... Mais attention Comparatif debugthreadlogging - HTTPD.cnf 6 # req / s debugthreadlogging on Note: C ette variable s e trouve dans le fic hier httpd.c nf debugthreadlogging off

15 Quelques recommandations «serveur» Lisez le redbook ;-) - Défragmentation des disques - A associer intelligemment avec l optimisation des bases(compact) Seulement si vous avez suffisamment d espace libre Toujours copier les bases Domino via Domino - pas de ftp, partage réseau etc.. Tips set config CLUSTER_ADMIN_ON=1 CL copy servera!!db1.nsf serverb!!db2.nsf Transaction Log sur un disque séparé - Vraiment séparé Sinon, les performance seront certainement dégradées Attention aux config RAID, aux SAN Il y a beaucoup de chose dont je n ai pas le temps de parler (clustering etc ) «Best practices for Implementing Lotus Domino in a Storage Area Network (SAN) Environment» Attention aux environnements virtualisés - Le monde virtuel est parfois loin du monde réel ;-)

16 Un coup d œil sur les applications Domino Recommandations générales Recommandations spécifiques pour les applications Web Recommandations spécifiques pour les applications Notes

17 Recommandations générales La conception de l application est le point crucial - Particulièrement en environnement Domino qui est moins «libre» que d autres - Il y a un certain nombre de questions à se poser avant de démarrer les développements Légomino? Volumétrie, nombres d utilisateurs, type de client (w eb / notes), sécurité etc. Vous aurez besoin d un serveur pour faire vos tests - Soit vous avez une architecture dev / recette / preprod / prod Soit local, mais il vous faut donc un minimum de connaissance d administration Toujours tester vos applications avec des jeux de données représentatifs Toujours spécifier en début de projet les populations visées - nombres d utilisateurs, nombre d utilisateurs simultanés Vos interlocuteurs fonctionnels peuvent comprendre les implications de leurs décisions sur les performances - Pour peu que vous leur expliquiez! Au moins, vous les aurez prévenu ;-)

18 Recommandations générales Les agents et le scripting ne sont pas la solution ultime - La plupart du temps, un traitement sera bien plus performant - Essayez de toujours penser de façon «progressive» Il faut prendre en compte et utiliser à votre profit les spécificités de Domino Si vous devez intervenir quand il y a déjà un problème de performance - Quelques points-clés Identifier les goulots d étranglement avant de se lancer dans une optimisation Réduire l influence des composants non concernés (par exemple, le réseau) Un changement à la fois - : «Introduction to performance tuning in Domino» - We know how to do that!

19 Au niveau Application (base) Domino Vérifier que votre application est au bon niveau d ODS Bien configurer les options des applications Domino Ne pas activer l enregistrement des activités utilisateur Evidemment, à ajuster en fonction de l application! Organisation des données : - Les améliorations de performances amenées par les versions successives de Domino sont souvent liées à l ODS - Compact c + notes.ini en 8 / 8.5 (CREATE_R8_DATABASE=1) - Archiver les données inutiles - Structurez vos applis pour éviter que les bases les plus accédées soient aussi celles où le plus de document sont créés Exemple : 1 base C atalogue produits et 1 base C ommandes, pas une seule base Tous les traitements ne sont pas obligatoirement à exécuter en temps réel - pensez aux agents planifiés

20 Au niveau Application Domino : 8 & 8.5

21 Au niveau Application Domino (suite)

22 @ & Performance

23 Utiliser intelligemment les options de cache class : cache ; server : database ; view ; key ; columnnumber ; keywords) - NoCache que si vraiment utile, penser à «ReCache» - Cache + fermeture/ouverture de la base NoCache en bcp plus efficace Faire les requêtes sur une colonne plutôt que sur un nom de champ class : cache ; server : database ; view ; key ; columnnumber ; keywords) - Si requête sur un numéro de colonne, la donnée est issue de l index, sinon Domino doit «ouvrir» le document Utiliser pour ne faire les calculs que quand nécessaire - Sinon vos requêtes s exécutent plusieurs fois - Y compris dans les formules de choix, même si ND6/7/8 ont fait un certain nombre d optimisations seuls Formule de choix de valeurs : ))

24 (suite) Rapatrier toutes les données en 1 et parser le résultat - plutôt que de faire Toujours faire sur des vues systèmes non susceptibles d être modifiées pour des raisons «graphiques» Penser à l option de vue «generate unique keys in index» et à la catégorisation - Permet de limiter la quantité de données renvoyée - C est le moteur d indexation de Domino qui fait le travail une fois à l indexation - au lieu que ce soit vous à chaque (avec par ex) Tirer partie des nouvelles @For - Permettent dans bien des cas de ne pas avoir recours à un agent WQO / WQS

25 LS & Performance

26 LotusScript Certaines recommandations sont possibles au niveau «core language» - List plutôt que Array - For Loops plutôt que Do Loop plutôt que While Wend For y=1 to 15 z=z+1 Next Do z=z+1 y=y+1 Loop While y<= 15 - Simplifier vos «branching» if (a=x and b=y) then if a=x then if b=y then - Toujours déclarer les variables Les opérations de conversion de type sont très c outeuses For I = 1 to 1/ Next vs Dim I as Integer For I = 1 to 1 Next Mais dans la majorité des cas, si il y a pb, il ne vient pas de là - cela ne veut pas dire qu il ne faut pas y faire attention ;-)

27 LotusScript (suite) Les objets Domino sont souvent gros et leur création prend du temps LotusScript gère des références vers les objets - Tant qu il existe une référence vers un objet, celui-ci reste en mémoire Recommandations concernant les objets Domino - Les créer seulement quand et au moment où vous en avez besoin - Supprimer les quand vous n en avez plus besoin (Delete) - Passez les aux différentes Sub(...) et Function(...) plutôt que de les recréer Sub Initialize Dim s as New NotesSession Set db = s.currentdatabase Set view = db.getview ( "(Keyw ords)" ) Call Sub1 ( view ) Call Sub2 ( view ) -Ou utiliser les déclarations globales -Pas la peine pour les objets Session, CurrentDatabase et «Source» (dans les évènements), ces objets étant créés automatiquement par Domino

28 LotusScript (suite) Utiliser des variables temporaires pour référencer les objets Domino plutôt que de les utiliser directement dans des boucles de traitement VarViews = db.views Forall v in VarViews print v.name End Forall Forall v in db.views print v.name End Forall Utiliser les méthodes d accès plutôt que la notation étendue - doc.getitemvalue(«title»)() plutôt que doc.title() - Idem doc.replaceitemvalue( ) Utiliser la bonne casse - Si un champ s appelle Title, getitemvalue(«title») est plus performant que getitemvalue(«title») Accéder aux éléments de structure via leur nom, en respectant la casse - Rechercher un élément de structure par son alias est moins performant - Rechercher avec la bonne casse est plus performant

29 LotusScript (suite) Chaines - LotusScript gère toutes les strings en UNICODE (UTF16) - Notes/Domino gère les strings en LMBCS - Conclusion Faire les manipulations de chaines toujours en LS Eviter les va-et-vient entre LS et objets Domino Méthodes d accès aux documents - Get*ByKey Souvent la méthode la plus rapide Rapide mais nécessite la création de l index de recherche qui n est pas toujours à jour Limite du nombre de résultats en R5 Attention, ne jamais utiliser de cutoff date, surtout si la base est grosse - FTSearch - dbsearch - Penser à View.AutoUpdate pour les Get*ByKey - ByUNID ou ByNoteID?

30 LotusScript (suite) Db.DelayUpdates = True - Save & Remove method View.AutoUpdate = False - Décale la mise à jour de l index de vue à la fin de l exécution (et pas à chaque modification de document) - A utiliser Lors de mise à jour en masse de documents Lors de parcours de vue avec suppression Méthodes au niveau de toute une collection plutôt qu une itération - RemoveAll, StampAll - StampAllMulti en 8.5 Librairies de script - Plus il y a de librairies de script déclarées, plus le chargement est long charger uniquement les librairies utiles et concevoir les librairies de façon à ce que chaque librairie n ai pas besoin de toutes les autres - Plus la librairie est grosse, plus son chargement est long - Appendix B-2 : Dynamic Script Library Loading du redbook Domino Performance Considerations

31 Comment en savoir plus sur les performances d un script Agent Profiler - Depuis la R7 - Permet d évaluer les performances des agents et des webservices, en LS ou Java - Même si vous êtes en version inférieure, rien ne vous empêche de monter un serveur de test pour «profiler» vos agents

32 Comment en savoir plus sur les performances d un script GetThreadInfo - Retourne des informations sur l unité d exécution courante - Exmple : (Getthreadinfo(6)-StartTic) / Getthreadinfo(7) - Il existe aussi LSI_Info mais à ne pas utiliser! Function Value LSI_THREAD_LINE () C urrent line number LSI_THREAD_PROC (1) Name of current procedure LSI_THREAD_MODULE (2) Name of current module LSI_THREAD_VERSION (3) LotusScript version number LSI_THREAD_LANGUAGE (4) (Human) language setting LSI_THREAD_C OUNTRY (5) C ountry or region setting LSI_THREAD_TIC KS (6) Get current clock ticks LSI_THREAD_TIC KS_PER_SEC (7) Get clock ticks per second LSI_THREAD_PROC ESS_ID (8) Get current process ID LSI_THREAD_TASK_ID (9) Get current task ID LSI_THREAD_C ALLPROC (1) Get the name of the calling procedure LSI_THREAD_C ALLMODULE (11) Get the name of the calling module

33 Et si on faisait un p tit peu de Java?

34 Recycle me baby! Nécessaire car le GC Java ne sait pas réclamer la mémoire utilisée par les objets «non java» - Toutes les ressources sont récupérées a la fin de l exécution d un agent ou de l application - La méthode recycle ne corrige pas de fuite mémoire à proprement parler - C est plus un GC qui agit pendant l exécution - Très utile pour les servlets ou programme «hors domino» Recycle a plus d influence sur la stabilité de l application que sur sa vitesse d exécution Il faut recycler si possible, tous les «gros/nombreux» objets que l on crée - Les meilleurs candidats au recycle sont les parcours de collections de documents Document doc, doctemp; doc = view.getfirstdocument(); w hile (doc!= null) { // Le code ici... doctemp = view.getnextdocument(doc); doc.recycle(); doc = doctemp; } - Dans les agents (et uniquement dans les agents), les objets suivants ne peuvent pas être «recyclés» CurrentDatabase, CurrentAgent, AgentContext Car ils sont créés par Domino

35 Give me more! Où stocker ses librairies Java? Comparatif Librairies Java 8 7 # req / s Librairies Java "dans" l'agent Jar dans l'agent Jar dans le JavaUserClasses DIIOP - Se connecter depuis un programme Java «distant» - Utilisation d un pool de connexion (ex : Apache Commons Pool) Servlets - Domino possède un moteur de servlet mais aussi un «Websphere entitlement» - Bientôt peut-être que

36 Parlons un peu de vue

37 Vues Limiter le nombre de vues dans vos applications - Chaque vue demande des ressources pour son indexation - Si votre appli possède plus de 5 vues - Moyen simple d analyse : log.nsf Taille des vues, utilisation Formule de sélection la plus simple possible - Elle est évaluée pour chaque document de la base Même remarque pour les formules de colonnes - Dans certains cas, il vaut mieux stocker dans chaque document le résultat d une formule complexe plutôt que de mettre cette formule dans une vue - Bien sûr, cela implique de gérer les mises à jour Attention aux catégorisations, aux tris, au «re-sort» - Chaque tri supplémentaire augmente la taille d une vue Et donc les ressources nécessaires pour mettre à jour d index Autant de ressources qui ne seront pas disponibles pour répondre aux autres requêtes - Chaque option compte, la pire étant re-sort - Nouveau en 8 : «defer index creation» pour les «re-sort» - Penser aux propriétés permettant de contrôler la fréquence de ré-indexation - Note: les index de vue n ont rien a voir avec l index FT (recherche)

38 Vues (suite) Attention aux champs lecteurs - Et à l option «do not show empty categories» Séparer les vues systèmes des vues destinées aux utilisateurs Penser pour réduire le nombre de vues - Proche de l option «show single category» - Mais nécessite un peu de travail (nettoyage des filtres avant et après) Supprimer les vues qui ne servent plus - Cela nécessite de savoir si une vue est encore utile ou non (par ex en regardant la log.nsf) Ne «jamais» utiliser des critères dynamiques dans les formules de sélection : ne marche @Modified = impact sur les performances (réindex à chaque ouverture) - = ne marche pas (sauf le premier jour ou sauf si on modifie tous les documents tous les jours) - Si vous avez besoin de ce type de vues Vues privées, si possible desktop 1 Dossier privé et y mettre les documents NSFDB2 later today ;-)

39 Vues (suite) Lors du parcours d une vue en LS, utiliser les données des vues plutôt qu ouvrir chaque document - NotesViewEntryCollection & ColumnValues plutôt que NotesDocumentCollection et NotesDocument - Si pas possible, préférer GetNextDocument à GetNthDocument (pas toujours vrai, mais au pire quasi-équivalent) set doc = collection.getfirstdocument while not doc is nothing Set doc = collection.getnextdocument(doc) wend for x = 1 to collection.count set doc = collection.getnthdocument(x) next x Notes.ini: log_update = 1 pour suivre les mises à jour d index de vues Essayer de rendre les vues le plus «étanches» possibles les unes des autres Ne pas masquer les vues pour Notes, même si elles ne sont que pour les clients web Notes.ini : ViewRebuildDir = path - La mise à jour d un document doit entrainer le moins de ré-indexation possible - Sinon elles sont hors de portée de la tache d indexation - A faire pointer vers un disque rapide pour optimiser l indexation

40 Formulaires La performance d un formulaire est principalement liée aux calculs des champs qui le composent, mais pas uniquement Limiter le nombre de champs dans un formulaire - Après qq centaines de champs, même simples, les performances se dégradent - Ces champs se retrouvent aussi dans les documents créés avec ce formulaire et cela impacte les perfs - Penser a supprimer les champs temporaires Agent plannifié, SavenDisk = false) Attention aux champs Lecteurs Formules de masquage - Très utiles, mais à ne mettre en œuvre que si le niveau de sécurité exigé par l application le demande - Pas de champ lecteur vide, ou avec un rôle que tout le monde a, ou avec * - Les champs de type auteur ont bcp moins d influence sur les performances - Limiter leur nombre, simplifier les formules - Si la même formule est répétée n fois, passer par un champ temporaire - Penser aux solutions alternatives: sous-masques calculés, masquage de sections complètes ) Autres - Tableaux très complexes, images importées - Options de refresh, évènements LS dans tout les sens remettant à jour le document (Performance perçue)

41 Formulaires (suite) Evaluer les formules une seule fois si elles sont répétées dans le formulaire Limiter l utilisation des champs partagés, les sous-masques et surtout les imbrications de ressources partagées - Exemple : passer par un champ temporaire, Computed For Display - Un sous-masque dans un sous-masque dans. Limiter l utilisation des «Form Formula» Attention à l option «Automatically Refresh Fields» AutoReload = False (dans les vues) - Désynchronise le NotesUIDocument et son NotesDocument correspondant en back-end - Utiliser la méthode Reload pour rafraichir le uidoc M odific ations made to non-ric h-text items on the bac k- end doc ument ac c es s ed through the Doc ument property appear on the c urrent doc ument immediately; A utoreload is unnec es s ary. M odific ations made to non-ric h-text items on the c orres ponding bac k-end doc ument ac c es s ed from the front-end doc ument but not through the Doc ument property (for example, if you us e GetDoc umentbyu N I D) do not appear immediately unles s A utoreload is T rue. T o make the modific ations appear when A utoreload is Fals e, c all the Reload method or c los e the doc ument and reopen it. M odific ations made to ric h-text items on the bac k-end doc ument do not appear on the c urrent doc ument until it is c los ed and reopened.

42 Documents «Profile» Documents de structure, stockés en mémoire pendant leur utilisation - N apparaissent pas dans les vues Soit globaux, soit par «utilisateur» Excellente performance en lecture - Parfait pour stocker la configuration d une application, des listes de valeurs ) beaucoup plus performant que etc Principe de base : «one write, many read» - Si vous tentez d échapper à ce principe, vous risquez de rencontrer des pb liés au cache - Mais il y a des moyens de rafraichir le cache d une application Sortir de la base par exemple (c est le cas dans un agent planifié) Plus compliqué à gérer dans le cadre des applications web

43 Performance des applications Web Domino

44 Comment évaluer les performances d une application Web Simulation de charge - Outils simples MS W eb Application Stress Tool Pratique pour tester une url précise ou un scénario simple OpenSTA : free - Plus complets Permet de définir des scénarii complexes, de gérer des pools d utilisateurs, d injecter des données pour les formulaires, de faire du reporting etc IBM Rational Performance Tester Mercury Load Runner - A coupler avec les outils de suivi de performances de l OS Domlog.nsf - Temps serveur pour traiter chaque requête - Souvenez-vous, jamais en production ;-) Performance «coté client» - IBM Page detailler - Penser à bien vider le cache du navigateur avant un test

45 IBM Page Detailler & MS Web Application Stress Tool

46 Généralités Ne pas utiliser la Domlog - Uniquement pour du test ou site à très faible charge, activer l agent de purge - Préférer les logs au format texte : Analysable par les outils standards du marché Activer les filtres pour le pas tout loguer (images/gif, images/jpeg etc ) Autoriser les agents web concurrents - Ce n est pas le cas par défaut Pas de Cache pour pour les applis web attention! WebQueryOpen / WebQuerySave souvent les «performance killers» - A utiliser SI nécessaire - s exécutent dans les évènements «WebQuery», on peut y faire des choses sans déclencher d agent

47 Généralités (suite) Attention à «Generate HTML for all fields» Utiliser des redirections internes quand cela est possible - [/base.nsf/mapage?openpage] [[/base.nsf/mapage?openpage]] (la ressource cible doit être sur le serveur plutôt ([WebUsers]) Passthru plutôt que [< >] ou HTML Style.. Domino HTML directory Alternative HTTP Stack, ICM Configuration du serveur Domino Toutes les remarques «web» pures : - SSL seulement si vraiment nécessaire - Pas de DNSLookup - tailles des images, css, js etc.. - Gzip

48 Quelques mauvais exemples No!

49 Exemple de configuration pour GZIP

50 Tirer partie des spécificités du client web Javascript - Permet de déléguer certains traitements et certains rendus au browser - AJAX Ressource caching - Javascript libraries, CSS, images Comment contrôler le cache des browsers? - Domino en fait une partie Last_Modified, Expires etc Etags Expires / Pragma / Cache-control Cache Max-Age - Web Site rules - Attention aux proxy (cache-control: private) Comment valider vos développements vis-à-vis du cache? - IBM Page detailer et un sniffer de Header HTTP (IE live http headers) - Domlog (pour le développement uniquement) - Attention à firebug, aux options des navigateurs, aux différences de navigateurs

51 Exemple de règle pour l ajout de header HTTP

52 Domino Command Cache Cache de pages côté serveur Présent depuis Domino 4.6x Certainement une des fonctionnalités les moins exploitées par les développeurs - et pourtant

53

54

55 Domino Command Cache (suite) Cache de pages coté serveur Uniquement pour les accès en mode Anonyme Nécessite de configurer le site pour ne pas prendre en compte les spécificités régionales du client Basé sur les URL - Le HTML généré est caché par le serveur Domino - Une entrée de cache par URL (l url est une clé de cache) - Certaines URL Domino seulement Ex :?ReadForm ok, OpenForm= ko uniquement avec des arguments Domino valides (&Count=12 ok &Count=Test Tout ajout d argument «non Domino» rend le résultat non cachable - Utile aussi pour des fichiers CSS, des lib JS stockées dans des pages Par défaut, le command cache est inactif ko) - $CacheValid : nombre, temps en seconde de validité du cache - $CacheOptions : «1» ou - Used to be notes.ini DominoAnalyzeFormulas=1, DominoTraceCmdCache=1 no more Show Stat Domino

56 Domino, HTTP, AJAX

57 Domino & HTTP HTTP Home page - Redirection interne / externe HTTP Thread settings - Le «trop» est l ennemi du bien HTTP queuing methods - HTTPQueueMethod dans le notes.ini : default: round robin distribution 1 : thread avec la queue la moins longue 2 : «à la R5» : w orker thread pulls from queue must disable http Scope = Serveur

58 Domino & HTTP (suite) HTTP 1. vs HTTP Toujours demander explicitement la fermeture d une connexion HTTP quand on s adresse à Domino depuis une autre application - Exemple de cas : «proxy» applicatif pour contourner les restrictions de sécurité JS en AJAX - Exemple avec les librairies Java standard try { HttpURLConnection uc = null; uc.setrequestproperty("connection","close"); } Catch ( ) { uc.disconnect(); uc = null; }

59 Web 2., mais AJAX is cool Mais attention - Au Nombre de requêtes HTTP par page Limitation coté serveur Limitation coté client JSON plutôt que XML Yahoo «best practices guide»

60 Performance des applications Client Notes

61 Notes Client performance Plus proche d un mode «client serveur» qu avec un client web Une beaucoup plus grande partie de l application s exécute sur le poste client - Même si l application est sur le serveur - Opposé d une application web où tout s exécute sur le serveur Chaque requête vers des objets ou des données Domino Lotuscript etc.) peut générer un trafic réseau non négligeable - Souvent ce trafic réseau tire les performances des applications Notes vers le bas - Penser à activer la compression réseau sur le client et le serveur mais ce n est pas la solution ultime!

62 Notes Client performance (suite) Notes.ini - CLIENT_CLOCK=1 - CONSOLE_LOG_ENABLED=1 - Debug_Outfile=C:\client.txt Résultat sous la forme - (Counter-Time [Thread]) RPC: Time Taken [Bytes Sent + Bytes Received = Total] Exemple de résultat (21-98 (22-98 (23-98 (24-98 (25-98 [251]) [252]) [253]) [254]) [255]) OPEN_DB(CN=UR83-SECUNOTS1/OU=UR83/O=REC!!names.nsf): ms. [134+29=424] FINDDESIGN_NOTES: ms. [44+16=6] OPEN_NOTE(REPC1256DCC:45CCFE-NT2A,341): ms. [ =3276] OPEN_COLLECTION(REPC1256DCC:45CCFE-NT2A,,): ms. [42+34=76] FIND_BY_KEY: ms. [52+34=86]

63 Notes Client performance (suite) Exemple Client XXXXX (21-1 [26]) OPEN_DB(UR83-SECUNOTS1!!protect\wwatt.nsf): (Connect to UR83-S.../UR83/REC: ms) (211-1 [261]) CLOSE_DB(REPC1256EC5:56158): ms. [14+=14] (212-1 [262]) OPEN_DB(CN=UR83-SECUNOTS1/OU=UR83/O=REC!!protect\wwatt.nsf): 31 ms. [134+29=424] (213-1 [263]) SEARCH: 5469 ms. [ = ] ( [264]) OPEN_NOTE(REPC1256EC5:56158-NTB9EFA,742): ms. [48+735=7398] ( [265]) CLOSE_DB(REPC1256EC5:56158): ms. [14+=14]

Session 29 Performance des applications Domino. Présentation de Jérôme Deniau pour [In://ForM]

Session 29 Performance des applications Domino. Présentation de Jérôme Deniau pour [In://ForM] Session 29 Performance des applications Domino Présentation de Jérôme Deniau pour [In://ForM] Les incontournables de tout développement Lotus-Notes La volumétrie Qui fait quoi? Les champs à afficher dans

Plus en détail

Mise en oeuvre TSM 6.1

Mise en oeuvre TSM 6.1 Mise en oeuvre TSM 6.1 «Bonnes pratiques» pour la base de données TSM DB2 Powered by Qui sommes nous? Des spécialistes dans le domaine de la sauvegarde et de la protection des données 10 ans d expertise

Plus en détail

LOT03P6 - Domino 8.5 : XPages dans Domino Designer 8.5 - Partie 6

LOT03P6 - Domino 8.5 : XPages dans Domino Designer 8.5 - Partie 6 LOT03P6 - Domino 8.5 : XPages dans Domino Designer 8.5 - Partie 6 Objectifs du développement en 8.5 Fournir un outil de développement moderne Faire pour les développeurs ce que Notes 8 a fait pour l'utilisateur

Plus en détail

Remote Control Library Librairie Remote Control

Remote Control Library Librairie Remote Control Remote Control Library Librairie Remote Control Installation File, Fichier : REMOTEVPU.EXE After installation Après installation In the toolbox : Dans la boite à outils : Files Added, Files Ajoutés : C:\API32\Modules\

Plus en détail

LSI2 Programmation Web TP n 3 du 10 décembre 2007

LSI2 Programmation Web TP n 3 du 10 décembre 2007 Page 1 sur 9 LSI2 Programmation Web TP n 3 du 10 décembre 2007 Premiers éléments de corrigé du TP n 2 Première page Web 1/ Créer une première page Web qui affiche un message de bienvenue avec la date et

Plus en détail

RELEASE NOTES. Les nouveautés Desktop Manager 2.8

RELEASE NOTES. Les nouveautés Desktop Manager 2.8 RELEASE NOTES Les nouveautés Desktop Manager 2.8 Décembre 2013 Réf : FR-DTM-R28-RN-V1.00 Contenu Introduction...3 Synthèse des nouveautés...3 Interface administrateur revisitée...4 Intégration d un moteur

Plus en détail

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement Guillaume HARRY l Contenu sous licence Creative Commons CC-BY-NC-ND Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement P. 2 1. Introduction 2.

Plus en détail

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage Technologies du Web Créer et héberger un site Web Page 1 / 26 Plan Planification Choisir une solution d hébergement Administration Développement du site Page 2 / 26 Cahier des charges Objectifs du site

Plus en détail

Supervision et infrastructure - Accès aux applications JAVA. Document FAQ. Page: 1 / 9 Dernière mise à jour: 15/04/12 16:14

Supervision et infrastructure - Accès aux applications JAVA. Document FAQ. Page: 1 / 9 Dernière mise à jour: 15/04/12 16:14 Document FAQ Supervision et infrastructure - Accès aux EXP Page: 1 / 9 Table des matières Introduction... 3 Démarrage de la console JMX...4 I.Généralités... 4 II.WebLogic... 5 III.WebSphere... 6 IV.JBoss...

Plus en détail

Extension SSO Java. Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java.

Extension SSO Java. Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java. Note technique W4 Engine Extension SSO Java Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java. 1 Présentation 3 2 Custom SSO Java 4 3 Bilan 10 Sommaire Référence

Plus en détail

Performance, rendement Vs Evolutivité

Performance, rendement Vs Evolutivité La Communauté Drupal 1000 cerveaux sont bien plus puissants qu un seul Les fonctionnalités que nous cherchons existent déjà! Ne réinventons pas la roue! Il ya des développeurs Drupal qui sont des génies!

Plus en détail

PHP /MySQL Interface d'accès aux BDDs PDO. Youssef CHAHIR

PHP /MySQL Interface d'accès aux BDDs PDO. Youssef CHAHIR PHP /MySQL Interface d'accès aux BDDs PDO Youssef CHAHIR 1 PLAN Architecture Interface phpmyadmin Créer une interface PHP/MySQL : Établir une connexion Exécuter une requête Gérer les erreurs Exploiter

Plus en détail

Bypass et filtre sur les requêtes destinées à la servlet W4

Bypass et filtre sur les requêtes destinées à la servlet W4 Note technique W4 Engine Bypass et filtre sur les requêtes destinées à la servlet W4 Cette note technique décrit le filtre de contrôle du bypass de la servlet W4. Versions de W4 Engine concernées : 5.0

Plus en détail

PHP & BD. PHP & Bases de données. Logiciels & matériels utilisés. Bases de données et Web

PHP & BD. PHP & Bases de données. Logiciels & matériels utilisés. Bases de données et Web PHP & Bases de données La quantité de données utilisée par certains sites web nécessite l'utilisation d'une base de données Il faut donc disposer d'un SGBD (mysql, postgresql, oracle, ) installé sur un

Plus en détail

Chapitre 1 Windows Server 2008 11

Chapitre 1 Windows Server 2008 11 Chapitre 1 Windows Server 2008 11 1.1. Les fondations du système... 15 1.2. La virtualisation... 16 1.3. La sécurité... 18 1.4. Le Web... 20 1.5. Fonctionnalité disponible dans Windows Server 2008... 21

Plus en détail

Vulnérabilités et sécurisation des applications Web

Vulnérabilités et sécurisation des applications Web Rencontres SPIRAL 25/02/03 Vulnérabilités et sécurisation des applications Web Pourquoi les firewalls sont impuissants face à certaines attaques patrick.chambet@edelweb.fr http://www.edelweb.fr http://www.chambet.com

Plus en détail

L3 informatique TP n o 2 : Les applications réseau

L3 informatique TP n o 2 : Les applications réseau L3 informatique TP n o 2 : Les applications réseau Sovanna Tan Septembre 2009 1/20 Sovanna Tan L3 informatique TP n o 2 : Les applications réseau Plan 1 Transfert de fichiers 2 Le Courrier électronique

Plus en détail

«Cachez-moi cette page!»

«Cachez-moi cette page!» «Cachez-moi cette page!» Atelier Pratique 1h30 Hugo Hamon (@hhamon) http://hugohamon.com Qui suis-je? Au menu de cet atelier 1. Introduction 2. Avantages 3. Expiration (Expires & Cache-Control) 4. Validation

Plus en détail

- - - Version 1.0 - - - Documentation

- - - Version 1.0 - - - Documentation - - - Version 1.0 - - - Documentation Frédéric BOLLON 21 septembre 2008 Table des matières 1 Introduction 2 2 Pré-requis 3 3 Installation 4 4 Utilisation 6 4.1 Précisions importantes......................

Plus en détail

LSI2 Programmation Web TP n 4 du 17 décembre 2007

LSI2 Programmation Web TP n 4 du 17 décembre 2007 Page 1 sur 6 LSI2 Programmation Web TP n 4 du 17 décembre 2007 Corrigé des TPs précédents Le code source de la solution est fourni dans un fichier.zip téléchargeable à l adresse http://www.isitix.com/enssat/enssat20071217.zip

Plus en détail

BIRT (Business Intelligence and Reporting Tools)

BIRT (Business Intelligence and Reporting Tools) BIRT (Business Intelligence and Reporting Tools) Introduction Cette publication a pour objectif de présenter l outil de reporting BIRT, dans le cadre de l unité de valeur «Data Warehouse et Outils Décisionnels»

Plus en détail

Symphony. Optimisation. Version Nom Date Action 1.0 Adrien CAMBON 08/08/2014 Création 1.1 Adrien CAMBON 02/09/2015 Ajout partie serveur Web

Symphony. Optimisation. Version Nom Date Action 1.0 Adrien CAMBON 08/08/2014 Création 1.1 Adrien CAMBON 02/09/2015 Ajout partie serveur Web Symphony Optimisation Version Nom Date Action 1.0 Adrien CAMBON 08/08/2014 Création 1.1 Adrien CAMBON 02/09/2015 Ajout partie serveur Web 1 / 19 TABLE DES MATIERES 1. Introduction... 3 1.1. But du document...

Plus en détail

Programmation Web. Madalina Croitoru IUT Montpellier

Programmation Web. Madalina Croitoru IUT Montpellier Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance

Plus en détail

Symphony. I. Base de données Oracle XE 11g : défaire le dimensionnement de la bdd... 40

Symphony. I. Base de données Oracle XE 11g : défaire le dimensionnement de la bdd... 40 Symphony Procédures d installation de Symphony avec la BDD Oracle en local et configuration de la BDD avec l application SQL Developer (BDD installée manuellement) 1. Avant installation... 2 2. Les manuels

Plus en détail

Vulnérabilités et sécurisation des applications Web

Vulnérabilités et sécurisation des applications Web OSSIR 09/09/2002 Vulnérabilités, attaques et sécurisation des applications Web Pourquoi les firewalls sont impuissants patrick.chambet@edelweb.fr http://www.edelweb.fr http://www.chambet.com Page 1 Planning

Plus en détail

Guide de démarrage rapide de WinReporter

Guide de démarrage rapide de WinReporter Guide de démarrage rapide de WinReporter Pour plus d information à propos de WinReporter, vous pouvez contacter IS Decisions à : Tél : +33 (0)5.59.41.42.20 (Heure française : GMT +1) Fax : +33 (0)5.59.41.42.21

Plus en détail

Lotus Notes et Domino 8.5 Administration de serveurs Domino

Lotus Notes et Domino 8.5 Administration de serveurs Domino Introduction 1. Introduction 9 2. Définitions et principes de base 10 2.1 Domaine 10 2.2 Hiérarchie de noms 11 2.3 Hiérarchie et authentification 13 Installation des serveurs et des clients 1. Introduction

Plus en détail

Maarch Framework 3 - Maarch. Tests de charge. Professional Services. http://www.maarch.fr. 11, bd du Sud Est 92000 Nanterre

Maarch Framework 3 - Maarch. Tests de charge. Professional Services. http://www.maarch.fr. 11, bd du Sud Est 92000 Nanterre Maarch Professional Services 11, bd du Sud Est 92000 Nanterre Tel : +33 1 47 24 51 59 Fax : +33 1 47 24 54 08 Maarch Framework 3 - Maarch PS anime le développement d un produit d archivage open source

Plus en détail

Plugin Payment-OnLine

Plugin Payment-OnLine Plugin Payment-OnLine Le plugin "Payment-Online" est un plugin technique dont l'objectif est de faciliter l'utilisation du paiement en ligne dans des applications Lutèce. Il se compose d'une librairie

Plus en détail

FICHE PRODUIT COREYE CACHE Architecture technique En bref Plateforme Clients Web Coreye Cache applicative Références Principe de fonctionnement

FICHE PRODUIT COREYE CACHE Architecture technique En bref Plateforme Clients Web Coreye Cache applicative Références Principe de fonctionnement COREYE CACHE Solution d absorption de charge pour une disponibilité et une performance optimales des applications Web En bref Architecture technique La plateforme Coreye Cache délivre la majeure partie

Plus en détail

Manuel d intégration du service AByster

Manuel d intégration du service AByster Manuel d intégration du service AByster PHP API Version 1.0 11 février 2013 www.abyster.com 1 Table des matières 01. Objet... 3 02. Définitions... 3 03. Introduction... 4 04. Le Core... 5 04.1 Organisation

Plus en détail

Documents web dynamiques. 20 novembre 2007 Architecture Multi-Niveaux 54

Documents web dynamiques. 20 novembre 2007 Architecture Multi-Niveaux 54 Documents web dynamiques 20 novembre 2007 Architecture Multi-Niveaux 54 Documents web dynamiques Contenu Statique Le client envoie une requête avec un nom de fichier Le serveur répond en lui retournant

Plus en détail

SharePoint Output Caching dans un site Intranet

SharePoint Output Caching dans un site Intranet SharePoint Output Caching dans un site Intranet Comment utiliser le cache dans un site Publishing Afin de permettre l amélioration des performances de sa ferme MOSS utilisée pour le site portail corporate

Plus en détail

Programmation Android TP7 - WebServices

Programmation Android TP7 - WebServices 1. WebService Dans le TP6, les avis étaient stockés dans une base SQL. Cette semaine les n-uplets sont stockés sur une base de données externe gérée par un serveur HTTP sur lequel tournent des scripts

Plus en détail

Recherche Indexée. Indexation automatique

Recherche Indexée. Indexation automatique Recherche Indexée Indexation automatique SOMMAIRE INTRODUCTION... 3 1 L EXTENSION INDEXED_SEARCH... 3 1.1 INSTALLATION... 3 1.2 CONFIGURATION A L INSTALLATION... 3 1.3 CONFIGURATION DU TEMPLATE PRINCIPAL...

Plus en détail

Jeremy Serror. Financial library Interfaces XML Exportation Remote Execution

Jeremy Serror. Financial library Interfaces XML Exportation Remote Execution Interfacing Excel with The Grid Jeremy Serror Financial library Interfaces XML Exportation Remote Execution Interfacing Excel with the grid Introduction Les interfaces de la librairie - Deux interfaces

Plus en détail

Module 10 : Supplément 2

Module 10 : Supplément 2 Module 10 : Supplément 2 Ce supplément est conçu pour être utilisé avec l ouvrage publié aux éditions Tsoft ou Eyrolles, intitulé Lotus Domino 8 Administration : Gestion et Optimisation. Configurer l index

Plus en détail

Développement XPages : Cursus standard

Développement XPages : Cursus standard Développement XPages : Cursus standard Modules Pré requis Développeur Notes 2 jours Développeur Web 2 jours Module principal Développeur XPages 3 jours Modules spécialisés 2 jours par module dojo et dijit

Plus en détail

Oracle Maximum Availability Architecture

Oracle Maximum Availability Architecture Oracle Maximum Availability Architecture Disponibilité des systèmes d informations Technologies et recommandations 1 Qu est-ce que Oracle Maximum Availability Architecture (MAA)? 1. Objectif : Disponibilité

Plus en détail

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10 Dossier Technique Page 1/10 Sommaire : 1. REPONSE TECHNIQUE A LA DEMANDE 3 1.1. Prise en compte de la dernière version de phpcas 3 1.2. Gestion de la connexion à GRR 3 1.2.1. Récupération des attributs

Plus en détail

Solution d hébergement de "SWIFTAlliance ENTRY R7" Politique de Sauvegarde et de Restauration

Solution d hébergement de SWIFTAlliance ENTRY R7 Politique de Sauvegarde et de Restauration Solution d hébergement de "SWIFTAlliance ENTRY R7" Politique de Sauvegarde et de Restauration Avril 2012 I- Introduction Le présent document présente la politique de sauvegarde et de restauration à adopter

Plus en détail

Optimiser les performances d un site web. Nicolas Chevallier Camille Roux

Optimiser les performances d un site web. Nicolas Chevallier Camille Roux Optimiser les performances d un site web Nicolas Chevallier Camille Roux Intellicore Tech Talks Des conférences pour partager son savoir Le mardi au CICA Sophia Antipolis http://techtalks.intellicore.net

Plus en détail

RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005

RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005 Oussama ELKACHOINDI Wajdi MEHENNI RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005 Sommaire I. Préliminaire : Notice d exécution et mode opératoire...4 II. Architecture globale de l application...5

Plus en détail

REAL APPLICATION CLUSTERS

REAL APPLICATION CLUSTERS Oracle upg adm 9i Claude DA COSTA Chap 11 Scalable Real Appli Clusters Page 1/10 REAL APPLICATION CLUSTERS Cash Fusion Shared server_side initialization parameter Oracle upg adm 9i Claude DA COSTA Chap

Plus en détail

Guide de démarrage Intellipool Network Monitor

Guide de démarrage Intellipool Network Monitor Guide de démarrage Intellipool Network Monitor Sommaire Glossaire... 3 Icônes... 3 Page de connexion... 4 Page d accueil... 5 Saisie de la clé de licence... 7 My settings... 8 Création d un compte... 9

Plus en détail

PHP /MySQL Interface d'accès aux BDDs PDO. Youssef CHAHIR

PHP /MySQL Interface d'accès aux BDDs PDO. Youssef CHAHIR PHP /MySQL Interface d'accès aux BDDs PDO Youssef CHAHIR 1 PLAN Architecture Créer une interface PHP/MySQL : Établir une connexion Exécuter une requête Gérer les erreurs Exploiter les résultats de la requête

Plus en détail

D un point de vue système, ajuster la mémoire est l une des principales méthodes pour augmenter ou réduire les performances d un processus.

D un point de vue système, ajuster la mémoire est l une des principales méthodes pour augmenter ou réduire les performances d un processus. GESTION DE LA MEMOIRE SOUS UNIX La mémoire est une ressource critique car elle conditionne les temps de traitements. Différentes options SAS sont disponibles pour utiliser au mieux la mémoire de la machine.

Plus en détail

Exemple de configuration de mise en cache transparente avec le module de commutation de contenu

Exemple de configuration de mise en cache transparente avec le module de commutation de contenu Exemple de configuration de mise en cache transparente avec le module de commutation de contenu Contenu Introduction Avant de commencer Conditions requises Composants utilisés Conventions Configurez Diagramme

Plus en détail

Programmation VBA. Identificateurs. Types de base. Déclaration d une variable. Commentaires. Activer l onglet Développeur (Excel)

Programmation VBA. Identificateurs. Types de base. Déclaration d une variable. Commentaires. Activer l onglet Développeur (Excel) Activer l onglet Développeur (Excel) Programmation VBA Michel Reid Cliquez sur le bouton Office (coin supérieur gauche) Cliquez sur le bouton Options Excel Dans la section Standard, cochez la case Afficher

Plus en détail

Tp2 Emacs Développement Web

Tp2 Emacs Développement Web Tp2 Emacs Développement Web Les indications ci-dessous donnent les grandes lignes du développement. 1/ Evenement Ajax Jquery: Le code javascript jquery suivant permet d afficher un message dans un span

Plus en détail

Simplification apportée en Version 8.5, dans la gestion des IDs. Le Notes ID Vault

Simplification apportée en Version 8.5, dans la gestion des IDs. Le Notes ID Vault Simplification apportée en Version 8.5, dans la gestion des IDs. Le Notes ID Vault Laurent Godmé Spécialiste Lotus 2009 IBM Corporation Qu est ce que le Notes ID Vault*? Le Notes ID Vault est une nouvelle

Plus en détail

Sauvegarde avec R1Soft Guide de mise en route

Sauvegarde avec R1Soft Guide de mise en route Service Technique 0 892 350 503 ikoula@ikoula.com Service Commercial 0 890 710 712 sales@ikoula.com Sauvegarde avec R1Soft Guide de mise en route 1 Sommaire 2 Installation de l'agent R1Soft... 2 3 Connexion

Plus en détail

Module GPO de Préférences

Module GPO de Préférences Configuration de Windows Server 2008 Active Directory Module GPO de Préférences Introduction Windows Server 2008 apporte son lot de nouveautés et notamment les stratégies de groupe de préférence. En entreprise,

Plus en détail

Installation et compilation de gnurbs sous Windows

Installation et compilation de gnurbs sous Windows Installation et compilation de gnurbs sous Windows Installation de l environnement de développement Code::Blocks (Environnement de développement) 1. Télécharger l installateur de Code::Blocks (version

Plus en détail

web / Éco-conception les 100 bonnes pratiques Doper son site et réduire son empreinte écologique

web / Éco-conception les 100 bonnes pratiques Doper son site et réduire son empreinte écologique Éco-conception web / Doper son site et réduire son empreinte écologique les 100 bonnes pratiques Frédéric Bordage Avec la contribution de Stéphane Bordage, Jérémy Chatard et Olivier Philippot Groupe Eyrolles,

Plus en détail

Outline. Traces sur le client. Cookies. Traces sur le client. Emmanuel Benoist. Chargé de cours Université de Lausanne.

Outline. Traces sur le client. Cookies. Traces sur le client. Emmanuel Benoist. Chargé de cours Université de Lausanne. Traces sur le client Emmanuel Benoist Chargé de cours Université de Lausanne Traces sur le client 1 Cookies 2 Lors d une saisie, il faut prouver quel ordinateur a fait quoi? L adresse IP seule n est pas

Plus en détail

Exploiter les statistiques d utilisation de SQL Server 2008 R2 Reporting Services

Exploiter les statistiques d utilisation de SQL Server 2008 R2 Reporting Services Exploiter les statistiques d utilisation de SQL Server 2008 R2 Reporting Services Nous verrons dans cet article comment exploiter simplement les données de Log de SQL Server 2008 R2 Reporting Services

Plus en détail

Installing the SNMP Agent (continued) 2. Click Next to continue with the installation.

Installing the SNMP Agent (continued) 2. Click Next to continue with the installation. DGE-530T 32-bit Gigabit Network Adapter SNMP Agent Manual Use this guide to install and use the SNMP Agent on a PC equipped with the DGE-530T adapter. Installing the SNMP Agent Follow these steps to install

Plus en détail

Vulnérabilités logicielles Injection SQL. Chamseddine Talhi École de technologie supérieure (ÉTS) Dép. Génie logiciel et des TI

Vulnérabilités logicielles Injection SQL. Chamseddine Talhi École de technologie supérieure (ÉTS) Dép. Génie logiciel et des TI Vulnérabilités logicielles Injection SQL Chamseddine Talhi École de technologie supérieure (ÉTS) Dép. Génie logiciel et des TI 1 Plan SQL Injection SQL Injections SQL standards Injections SQL de requêtes

Plus en détail

Soon_AdvancedCache. Module Magento SOON. Rédacteur. Relecture & validation technique. Historique des révisions

Soon_AdvancedCache. Module Magento SOON. Rédacteur. Relecture & validation technique. Historique des révisions Module Magento SOON Soon_AdvancedCache Rédacteur Hervé G. Lead développeur Magento herve@agence-soon.fr AGENCE SOON 81 avenue du Bac 94210 LA VARENNE ST HILAIRE Tel : +33 (0)1 48 83 95 96 Fax : +33 (0)1

Plus en détail

Contrôler les programmes VBA

Contrôler les programmes VBA 7 Contrôler les programmes VBA Au sommaire de ce chapitre Utiliser les opérateurs logiques Trier des données Répéter une série d instructions : les boucles Utiliser des instructions conditionnelles Définir

Plus en détail

Alfstore workflow framework Spécification technique

Alfstore workflow framework Spécification technique Alfstore workflow framework Spécification technique Version 0.91 (2012-08-03) www.alfstore.com Email: info@alfstore.com Alfstore workflow framework 2012-10-28 1/28 Historique des versions Version Date

Plus en détail

Développement Web. Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer. 24 janvier 2011

Développement Web. Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer. 24 janvier 2011 1 / 56 Développement Web Le modèle MVC Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer 24 janvier 2011 2 / 56 Objectif Objectif du cours Se familiariser avec

Plus en détail

OPTIMISATION DES CUBES OLAP, DE LA CREATION A LA NAVIGATION

OPTIMISATION DES CUBES OLAP, DE LA CREATION A LA NAVIGATION OPTIMISATION DES CUBES OLAP, DE LA CREATION A LA NAVIGATION Vous travaillez avec des cubes OLAP. Vous avez été Caractéristiques : confronté, ou le serez peut-être, à des problèmes tels Catégories : SAS

Plus en détail

Surveillance de Scripts LUA et de réception d EVENT. avec LoriotPro Extended & Broadcast Edition

Surveillance de Scripts LUA et de réception d EVENT. avec LoriotPro Extended & Broadcast Edition Surveillance de Scripts LUA et de réception d EVENT avec LoriotPro Extended & Broadcast Edition L objectif de ce document est de présenter une solution de surveillance de processus LUA au sein de la solution

Plus en détail

Sous Linux, il existe plusieurs programmes

Sous Linux, il existe plusieurs programmes Dix extensions pour Firefox à ne pas manquer Emanuele Prestifilippo Sous Linux, il existe plusieurs programmes pour surfer sur Internet dont un grand nombre est aussi multi-plateforme. Si vous avez choisi

Plus en détail

Documentation utilisateur MANTIS

Documentation utilisateur MANTIS Documentation utilisateur MANTIS Outil de suivi d anomalies des Référents Utilisateur : Rapporteur SOMMAIRE 1 Préambule...3 1.1 Convention typographique...3 1.1.1 ICONES...3 1.1.2 Attributs...3 1.2 Contexte...4

Plus en détail

WEB page builder and server for SCADA applications usable from a WEB navigator

WEB page builder and server for SCADA applications usable from a WEB navigator Générateur de pages WEB et serveur pour supervision accessible à partir d un navigateur WEB WEB page builder and server for SCADA applications usable from a WEB navigator opyright 2007 IRAI Manual Manuel

Plus en détail

WDpStats Procédure d installation

WDpStats Procédure d installation WDpStats Procédure d installation Table de matières WDpStats... 1 Procédure d installation... 1 Table de matières... 1 Résumé... 2 Réquisits... 2 Installation... 2 Difficultés... 6 Lancement... 7 wdpstats_install_oracle_fr.xml

Plus en détail

Guide de l utilisateur WebSeekurity

Guide de l utilisateur WebSeekurity SCRT Information Security Julia Benz Guide de l utilisateur WebSeekurity Version 1.0 Mars 2012 Table des matières Table des matières i 1 Introduction 1 1.1 Contributions.............................. 1

Plus en détail

Version de la documentation 1.00

Version de la documentation 1.00 Version de la documentation 1.00 Documentation ECHOLINK par F4ASB Page 1 06/01/03 Présentation d'echolink EchoLink est un logiciel qui permet aux stations radio d'amateur de communiquer entre eux via Internet,

Plus en détail

Le protocole HTTP. Olivier Aubert 1/40

Le protocole HTTP. Olivier Aubert 1/40 Le protocole HTTP Olivier Aubert 1/40 Liens http://www.jmarshall.com/easy/http/ Références : RFC1945 (HTTP1.0), RFC2616 (HTTP1.1), RFC822 (format des entêtes), RFC2396 (syntaxe des URL), RFC1521 (types

Plus en détail

Introduction à ElasticSearch

Introduction à ElasticSearch Introduction à ElasticSearch Présentée par : Romain Pignolet Lundi 7 Juillet 2014 Sommaire 1 Présentation de Elasticsearch 2 Installation et exemples simples 3 API Rest 4 Comment fonctionne Elasticsearch?

Plus en détail

SOMMAIRE EXMERGE. Chapitre 1 Installation EXMERGE 2. Chapitre 2 Modification ExMerge 6. Chapitre 3 Exécution sans erreur 23

SOMMAIRE EXMERGE. Chapitre 1 Installation EXMERGE 2. Chapitre 2 Modification ExMerge 6. Chapitre 3 Exécution sans erreur 23 Exchange 2003 Page 1 sur 32 SOMMAIRE Chapitre 1 Installation 2 1.1 Téléchargement 2 1.2 Installation 4 1.3 1 er lancement 5 Chapitre 2 Modification ExMerge 6 2.1 2 nd lancement 6 2.2 3ème lancement 11

Plus en détail

Lieberman Software Corporation

Lieberman Software Corporation Lieberman Software Corporation Managing Privileged Accounts Ou La Gestion des Comptes à Privilèges 2012 by Lieberman Software Corporation Agenda L éditeur Lieberman Software Les défis Failles sécurité,

Plus en détail

Modèles de script VBS Proposés par KoXo Dev.

Modèles de script VBS Proposés par KoXo Dev. 1 Script 1 Lors de la connexion de l utilisateur on désire que: Modèles de script VBS Proposés par KoXo Dev. 1 - Les lecteurs réseau présents soient déconnectés 2 - Le lecteur perso soit connecté 3 - Le

Plus en détail

GUIDE UTILISATEUR NQI ORCHESTRA V.2.9.5 BIRT V.2.2.2

GUIDE UTILISATEUR NQI ORCHESTRA V.2.9.5 BIRT V.2.2.2 GUIDE UTILISATEUR NQI ORCHESTRA V.2.9.5 BIRT V.2.2.2 Table des Matières 1. INTRODUCTION...3 1.1 SUJET...3 1.2 OBJECTIFS...3 1.3 DÉFINITION DE TERMES, ACRONYMES...3 1.4 RÉFÉRENCE...3 2. CONFIGURATION...4

Plus en détail

Le SupportPack MO71. Présentation. Préalables. Installation

Le SupportPack MO71. Présentation. Préalables. Installation Présentation Ce document présente les étapes d installation et de paramétrage du Support Pack IBM «MO71», ainsi que quelques manipulations de base. Le MO71 permet de configurer et gérer facilement un réseau

Plus en détail

Éric Sarrion. JQuery. & JQuery UI. Groupe Eyrolles, 2011, ISBN : 978-2-212-12892-5

Éric Sarrion. JQuery. & JQuery UI. Groupe Eyrolles, 2011, ISBN : 978-2-212-12892-5 Éric Sarrion JQuery & JQuery UI Groupe Eyrolles, 2011, ISBN : 978-2-212-12892-5 11 Onglets Les pages HTML comportant des onglets (tabs) sont devenues courantes dans les sites web actuels. Elles permettent

Plus en détail

Manuel d utilisation Logiciel de sauvegarde du système RF500 COMARK

Manuel d utilisation Logiciel de sauvegarde du système RF500 COMARK Manuel d utilisation Logiciel de sauvegarde du système RF500 COMARK CITEC NU 118-07/11 COMARK 07.07.04-1 - 1- Introduction Le logiciel RF500 Backup Server permet une sauvegarde automatique des fichiers

Plus en détail

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/

Plus en détail

La base de données dans ArtemiS SUITE

La base de données dans ArtemiS SUITE 08/14 Vous préférez passer votre temps à analyser vos données plutôt qu à chercher un fichier? La base de données d ArtemiS SUITE vous permet d administrer et d organiser confortablement vos données et

Plus en détail

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5 Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5 Machine virtuelle Machine virtuelle Machine virtuelle VMware ESX Network Shutdown Module

Plus en détail

LE LOCKDOWN OU COMMENT RESTREINDRE L'ACCES A CERTAINES

LE LOCKDOWN OU COMMENT RESTREINDRE L'ACCES A CERTAINES LE LOCKDOWN OU COMMENT RESTREINDRE L'ACCES A CERTAINES RESSOURCES Apparu avec SAS 9.4 M1, le LOCKDOWN a pour objectif de permettre aux administrateurs de restreindre l accès à certaines ressources. «To

Plus en détail

FICHE PRODUIT CEPHINET REPLICAMAKER

FICHE PRODUIT CEPHINET REPLICAMAKER FICHE PRODUIT CEPHINET REPLICAMAKER 28 octobre 2010 Page 2 sur 5 Sommaire Contexte problème posé...3 Outil «Cephinet replicamaker»...3 Objectif et principe de fonctionnement...3 Mise en service...3 Désactivation...3

Plus en détail

Open Source Job Scheduler

Open Source Job Scheduler Open Source Job Scheduler Interface web Pré-requis : o Installation Interface Web Configuration Utilisation Administration SOS-Paris 2 Rôle o Interface de publication o Gestion de la base de données o

Plus en détail

Université Paris 1 Panthéon Sorbonne UFR 06. Fiche de TD VBA

Université Paris 1 Panthéon Sorbonne UFR 06. Fiche de TD VBA 1 / 13 Fiche de TD VBA L objectif de cette fiche est de faire un rappel (voire une présentation rapide) du langage de programmation VBA et de son usage sur des documents Excel et Access. Pour rappel, VBA

Plus en détail

Proxy Gemma. 1) Introduction. 2) Solution proposée

Proxy Gemma. 1) Introduction. 2) Solution proposée 1) Introduction Proxy Gemma Le LIMS Gemma repose sur une base de données 4D serveur 7.0.5 fonctionnant sur un serveur Windows 2000 server. Cette version de 4D est depuis longtemps dépassée, donc plus maintenue,

Plus en détail

NVU, Notepad++ (ou le bloc-note), MySQL, PhpMyAdmin. HTML, PHP, cas d utilisation, maquettage, programmation connaissances en HTML, PHP et SQL

NVU, Notepad++ (ou le bloc-note), MySQL, PhpMyAdmin. HTML, PHP, cas d utilisation, maquettage, programmation connaissances en HTML, PHP et SQL Prise en main de NVU et Notepad++ (conception d application web avec PHP et MySql) Propriétés Intitulé long Formation concernée Matière Présentation Description Conception de pages web dynamiques à l aide

Plus en détail

Utilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa www.degenio.com Novembre 2008

Utilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa www.degenio.com Novembre 2008 Introduction Utilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa www.degenio.com Novembre 2008 Forms 10g permet l utilisation du JAVA côté client et côté application

Plus en détail

OpenEdge Chiffrage avec SSL

OpenEdge Chiffrage avec SSL OpenEdge Chiffrage avec SSL Paul Koufalis Président Progresswiz Consulting Your logo here Progresswiz Informatique Offre de l expertise technique Progress, UNIX, Windows et plus depuis 1999 Spécialisé

Plus en détail

Baccalauréat technologique. spécialité gestion des systèmes d information SESSION 2009. Éléments de correction et barème

Baccalauréat technologique. spécialité gestion des systèmes d information SESSION 2009. Éléments de correction et barème Baccalauréat technologique spécialité gestion des systèmes d information SESSION 2009 Épreuve de spécialité Partie écrite Éléments de correction et barème Liste des dossiers Barème Dossier 1 : L'organisation

Plus en détail

IBM Workplace : Live! IBM Lotus Notes/Domino v7, fonctionnalités et évolutions

IBM Workplace : Live! IBM Lotus Notes/Domino v7, fonctionnalités et évolutions IBM Workplace : Live! IBM Lotus Notes/Domino v7, fonctionnalités et évolutions Agenda Overview Notes / Domino 7 Les clients V7 Le serveur V7 Démonstrations Un peu d histoire. 1989 : Notes v1 1993 : Notes

Plus en détail

IH03 ou RFHUTIL. Sommaire IH03 ou RFHUTIL, définition 2 Interfaces, leurs fonctionnalités Les pré-requis Les commandes manuelles L interface graphique

IH03 ou RFHUTIL. Sommaire IH03 ou RFHUTIL, définition 2 Interfaces, leurs fonctionnalités Les pré-requis Les commandes manuelles L interface graphique IH03 ou RFHUTIL Sommaire IH03 ou RFHUTIL, définition 2 Interfaces, leurs fonctionnalités Les pré-requis Les commandes manuelles L interface graphique IH03 ou RFHUTIL Est un support-pack d IBM destinéau

Plus en détail

Familiarisation avec Eclipse / Netbeans

Familiarisation avec Eclipse / Netbeans Institut Galilée LEE Année 011-01 Master T.P. 0 Familiarisation avec Eclipse / Netbeans Lien important contenant le pdf du cours et du TP, et ensuite des sources : http://www-lipn.univ-paris13.fr/~fouquere/mpls

Plus en détail

Guide d'installation et de configuration de Pervasive.SQL 7 dans un environnement réseau Microsoft Windows NT

Guide d'installation et de configuration de Pervasive.SQL 7 dans un environnement réseau Microsoft Windows NT Guide d'installation et de configuration de Pervasive.SQL 7 dans un environnement réseau Microsoft Windows NT Ce guide explique les différentes étapes de l installation et de la configuration des composantes

Plus en détail

INTERFACE. Supervision / Bases de Données

INTERFACE. Supervision / Bases de Données MASTER ASE SYSTEMES D INFORMATION POUR L INDUSTRIE INTERFACE Supervision / Bases de Données ODBC/ADO Pierre BONNET 2008-2009 Pierre BONNET - Supervision - Liaison ODBC 1 L INTERFACE ODBC Open DataBase

Plus en détail

INF8007 Langages de script

INF8007 Langages de script INF8007 Langages de script Introspection et parsage 1/27 INF8007 Langages de script Introspection et parsage Michel Desmarais Alexandre Spaeth Génie informatique et génie logiciel École Polytechnique de

Plus en détail

Programmation Web. Thierry Hamon

Programmation Web. Thierry Hamon 1/27 Programmation Web Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR Léonard de Vinci 74, rue Marcel Cachin, F-93017 Bobigny

Plus en détail