bonjour,

Je souhaiterais avoir vos conseils pour un petit problème d'ordre technique

Pour être précis sur le sujet,voila réellement ce que je compte réaliser, le produit fonctionne correctement pour le moment (85% des cas, mais je veux me rapprocher le plus du 100% sans vouloir être prétentieux).

Donc via une machine (pc/pda/smartphone/tablette etc..) j'accèdes à une base de données, ces accès peuvent être nombreux et par fois fait depuis plusieurs machines max 100 utilisateurs pour lr moment (prévu) (pc/pda/smartphone/tablette etc..).

Comme il peut y à voir plusieurs accès depuis une même machine entre 300 insert ou update voir plus) et cela dans un cours laps de temps (~ 10 a 15 minutes) , je trouve que le temps de réponse des script php (existant dans mon produit) sont assez long (temps mesuré ~ 0.12 sec par insert) c'est cours mais pour mon produit et le domaine fonctionnel c'est trop long et surtout il arrive de temps en temps que la connexion prenne vraiment bcp de temps

J'attire votre attention sur le fait que l'essentiel du temps est sur la connexion à la base de données, et c'est pour cette raison que je souhaite faire une seule connexion (tout au début du traitement quit à la relancer toutes les X minutes) et ensuite rè-utiliser ladite connexion créés au début pour faire les select/insert/update.....


En résumé aujourd'hui j'ai :
0-Ouverture de l'outil
1-traitement fonctionnel
2 création de mon objet mysqli (autocommit= yes)
3 connexion à ma base de données (avec un seul nom utilisateur pour toutes les connexions)
4 lecture/update/insert/delete
5 fermeture de la connexion
6 destruction objet mysqli
7-fin traitement fonctionnel
et je recommence le traitement ci-dessus (de 1 à 7) jusqu'à la fin de la tache.

Pour résoudre mon problème de connexion/deconnexion je voudrais que le traitement soit le suivant :

0-Ouverture de l'outil
1 connexion à ma base de données (avec un seul nom utilisateur pour toutes les connexions - PDO)
2-traitement fonctionnel
3 connexion à ma base de données
4 lecture/update/insert/delete
5-fin traitement fonctionnel
et je recommence le traitement ci-dessus (de 2 à 5) jusqu'à la fin de la tache.
et cela grâce à la connexion persistante avec PDO (connexion en cache sur le serveur)


Si j'ai bien tout compris la connexion persistante fonctionne de la sorte:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
<?php
$VALEUR_hote='SERVEUR';
$VALEUR_port='';
$VALEUR_nom_bd='nom_de_la_BDD';
$VALEUR_user='USERUNIQUE';
$VALEUR_mot_de_passe='MOTDEPASSE';
$connexion = new PDO('mysql:host='.$VALEUR_hote.';port='.$VALEUR_port.';dbname='.$VALEUR_nom_bd, $VALEUR_user, $VALEUR_mot_de_passe);
 
$connexion->exec("INSERT INTO membres(champ_login,champ_mdp) VALUES('login','mot_de_passe')");
?>
En suite à chaque fois que je relance ce script depuis une machine, PHP (ou qui sais-je encore, vérifie si une instance de la connexion sur la bdd existe si tel est le cas il ne la recréer pas et utilise ladite connexion si elle n'existe pas alors il la créer.

Question 1 - Combien de temps avant que connexion persistante avec PDO soit détruite sur le serveur
Question 2 - Pouvez-vous me dire si c'est la bonne méthode ou bien me conseillerez vous à faire.

Cordialement