26-10-2011, 08:33 PM
(Modification du message : 27-10-2011, 08:24 AM par Sephi-Chan.)
Bonsoir
encore moi, avec tout un tas de questions de noob...désolé...Car comme un crétin je pensais que les transactions Mysql mettaient automatiquement des verrous un peu partout..quel con...'fin bref
voici tout d'abord du pseudo code, il s'agit de résoudre des actions tels que "payer" "contruire un batiment" "recruter" etc...la question sur les verrous sera plus bas
Il va falloir que je pose des verrous sur mes tables pour éviter les problèmes des clients simultanés, et là je patauge un peu...
quels type de verrous dois-je utiliser? SELECT FOR UPDATE ? LOCK TABLE?
prenons une action qui va modifier 2 tables: table A et table B:
je fais quoi? je LOCK les 2 tables consécutivement, je fais mes petits UPDATE et je UNLOCK tout?
en réalité ce qui me fais bien flipper ce sont les deadlock...
merci de m'avoir lu et merci à ceux qui prendront le temps de me répondre
bonne soirée
encore moi, avec tout un tas de questions de noob...désolé...Car comme un crétin je pensais que les transactions Mysql mettaient automatiquement des verrous un peu partout..quel con...'fin bref
voici tout d'abord du pseudo code, il s'agit de résoudre des actions tels que "payer" "contruire un batiment" "recruter" etc...la question sur les verrous sera plus bas
<?php
function resolution_action()
{
try
{
$connexion_mmorpg->beginTransaction();
// si action == "payer" ---> modification de la table joueurs (joueurs.argent)
// si action == "construire" ---> modification de la table batiments
// si action == "recruter" ---> modification de la table troupes
//
// etc...
//
$connexion_mmorpg->commit();
}
catch(PDOException $e)
{
$connexion_mmorpg->rollBack();
}
}
?>
Il va falloir que je pose des verrous sur mes tables pour éviter les problèmes des clients simultanés, et là je patauge un peu...
quels type de verrous dois-je utiliser? SELECT FOR UPDATE ? LOCK TABLE?
prenons une action qui va modifier 2 tables: table A et table B:
je fais quoi? je LOCK les 2 tables consécutivement, je fais mes petits UPDATE et je UNLOCK tout?
en réalité ce qui me fais bien flipper ce sont les deadlock...
merci de m'avoir lu et merci à ceux qui prendront le temps de me répondre
bonne soirée