Visa ett inlägg
Oläst 2004-11-30, 14:05 #1
Davids avatar
David David är inte uppkopplad
Flitig postare
 
Reg.datum: Aug 2003
Inlägg: 477
David David är inte uppkopplad
Flitig postare
Davids avatar
 
Reg.datum: Aug 2003
Inlägg: 477
Har en massa trevliga community-funktioner på Sockerdricka men de kräver en sjujäkla massa av databasservern så nu när det är lite över 500 samtidigt inloggade användare så kämpar den för sitt liv den stackaren. Jag tänkte då naturligtvis replikera databasen och enklast vore att ha flera masters eftersom varje sidvisning kräver ett antal SELECT och kör minst en UPDATE och/eller INSERT.

Allt var frid och fröjd och jag skulle just beställa ytterligare en maskin när jag kom att tänka på att jag i alla tabeller använder mig av auto-increment-kolumner för primärnycklar. Om en master gör en INSERT i messages-tabellen till exempel och den andra gör det samtidigt så kommer det finnas två meddelanden med samma PK och båda servrarna kommer att kasta BAD_PRIMARY_KEY när de exekverar den andras INSERT.

Är det någon som löst det här problemet? Jag har boken High Performance MySQL och författarna föreslår ett antal sätt att lösa problemet men de kräver alla ett oerhört jobb i att ändra hur skripten använder primärnycklar.
David är inte uppkopplad   Svara med citatSvara med citat