WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Hur lägga upp hyrlösningssystem? En databas, flera databaser? (https://www.wn.se/forum/showthread.php?t=1060788)

danjel 2014-02-20 16:16

Citat:

Ursprungligen postat av ANttila (Inlägg 20486357)
Om du har en framtida version av butiken som kräver en helt annan struktur på databasen så har du inte gjort databasen tillräckligt modulär från start, men det är ju så klart mänskligt.

Menade inte riktigt så, om alla kunder ligger i samma db så finns ett starkt beroende mellan kod och data/datastruktur. Det blir då onödigt svårt (men givetvis möjligt) att låta en kund använda en kodbas/version av systemet och en annan kund använda en annan version.


Citat:

Ursprungligen postat av ANttila (Inlägg 20486357)
Droppa en hel databas istället för DELETE...WHERE id = 123 ???
För mig som programmerare är det ingen problem att hålla koll på vilken butik jag arbetar med osv.

Jo men då måste du utveckla funktionalitet för det, det kan ju vara så mycket som 30+ tabeller i ett system som detta, kanske med foreign key restraints m.m. som gör att deletes måste köras i en viss ordning..t.ex.. så då blir det enklare att köra DROP DATABASE x.
Poängen var inte specifikt att droppa en kund db, snarare att principen att logiskt separera data på olika db's för varje kund har fördelar vid både utvecklingsfasen och förvaltning / underhåll.

Conny Westh 2014-02-20 16:50

Citat:

Ursprungligen postat av ANttila (Inlägg 20486235)
Använd 1 databas. Du kan ha flera miljoner butiker utan att det blir segt, med rätt queries och index.

En tabell med users, en tabell med butiker.

TextTak använder 1 databas för alla användare och det blir riktigt segt redan vid ett ca 2000 butiker.

Men det kan även bero på att de använder MySQL och inte modellerat databasen rätt.

Säkrast är att använda en databas för varje butik, men du måste då vara noga med att uppgradera alla databaser synkronserat.

Fördelen är att om en databas strular så kan övriga kunder fortsätta att köra. samt det blir lättare atat lastbalansera genom att flytta butiker till andra servrar när du får prestandaproblem.

En tredje variant är att u har en databas för nya kunder och att du har samma struktur i databasen, men har möjligheten att flytta ut enskilda butiker till egna databaser när prestandaproblem uppstår. Måttot är då optimal flexibilitet.

Det funkar med båda lösningarna men det är lite olika problembilder som man helst vill kunna styra individuellt för varje butik.


Alla tider är GMT +2. Klockan är nu 01:24.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson