Retrouvez-nous le 14/04 pour notre Webinar "Quelle démarche pour votre stratégie de gestion de données ?". Je m'inscris

✖︎
Digora blog

Optimiser une application PHP Oracle

05/03/2011
A trier
Un important distributeur de mobilier urbain rencontre de graves problèmes de performance sur son application web, développée en PHP et connectée à Oracle.

Contexte

L'application PHP utilise un serveur http Apache et une base Oracle 10g sous Windows. Cette application spécifique est utilisée par environ 50 utilisateurs.

Diagnostic

L'examen de la configuration amène rapidement à certaines constatations :

  • les sessions WEB ferment la connexion Oracle à chaque fin de transaction
  • il manque quelques index
  • il y a beaucoup de SQL dynamique

Les corrections apportées

Voici les actions correctives mise en place ou conseillées

  • modification du fichier php.ini Apache et du code de connexion (option PERSISTENT=TRUE)
  • ajout de quelques index
  • recommandations visant à limiter l'utilisation du SQL dynamique sur les écrans les plus utilisés  (le mode CURSOR_SHARING d'Oracle posant des problèmes sur cette combinaison de l'application et de la version Oracle)
  • des recommandations sur les améliorations à mettre en œuvre sur les sauvegardes (mode ARCHIVELOG, RMAN, etc...)

Bilan de l'intervention

Il a suffi de quelques minutes pour identifier et éliminer la cause principale des problèmes : une succession de connexions / déconnexions. De plus, en se concentrant sur les transactions les plus utilisées et en travaillant à les améliorer, c'est l'ensemble du système qui devient plus fluide. Enfin, quelques actions d'optimisation sur la base ont ajouté aux améliorations déjà obtenues.

Ce fut une intervention très rentable pour notre client !