Sinds 2 weken heeft m'n database server, welke een dedicated SQL 2005 server gehost bij een goede provider is, erg grote problemen.
De server:
Intel Xeon 2,8 GHz
1 GB geheugen
Raid 5 40 GB
WIndows Server 2003
SQL Server 2005
Situatie:
Database server met 7 databases, waarvan er 2 aktief gebruikt worden voor redelijk drukke webwinkels. Deze setup heeft ruim een jaar lang zo zonder problemen gedraaid, totdat... Op deze databases draaien verder nog wat backoffice app's geschreven in VB6. De websites zijn trouwens ASP3.0. Beide websites hebben per website zo'n 4000 unieke bezoekers per dag, backoffice gebruik is te verwaarlozen.
Probleem:
Sinds 1,5e week zijn er momenten waarop de server ineens bijzonder traag wordt. Requests vanaf de webserver (een andere dedicated server) duren dan zo lang, dat het zelfs een time-out tot gevolg kan hebben. Op dat moment is het CPU verbruik geen 100%, en ook het I/O gebruik is niet abnormaal hoog. Het CPU verbruik schommelt zo tussen de 5 en 80%, volgens mijn provider die dit na kan kijken. Het CPU verbruik op een "probleem moment" is niet significant hoger dan een "goed moment".
Wat ik uitgezocht / gedaan heb:
Onderstaande zaken heb ik onderzocht/uitgevoerd sinds de problemen. De problemen kwamen uit het niets.... Mogelijke oorzaken kunnen natuurlijk een langzaam steeds groter wordende database en/of meer bezoekers zijn.
- Enkele indexen verwijderd en opnieuw aangemaakt op basis van de situatie zoals deze nu is. Verder de Database Tuning Wizard uitgevoerd, puur voor de info. Hier kwamen verder geen rare dingen naar voren. => Gebruikers merkten af en toe een snellere website, wat natuurlijk te verklaren is door iets betere indexen.
- Transactionlog groeide door de dag heen redelijk hard. Nadat het recoverymodel van full naar bulk-logged gezet was ging dit beter. Alsnog groeit hij redelijk....
- Alle hardware nagekeken, deze is goed.
- Queries die langer dan 2 sec duren geanalyseerd en verbeterd. Het vreemde is dat een query die NU 50ms duurt, NU 30.000 MS kan duren, en vise versa...
- Queries die meer dan 500 ms CPU (time?) vergen verbeterd, zelfde verhaal.
- Zondag was de situatie zo dat ik in m'n query analyser, met bovenstaande instellingen nagenoeg (lees 1 per 10 minuten) queries voorbij zag komen. Alles leek opgelost na een week lang queries verbeteren etc...
- Maar, sinds vanavond 17.00 zijn we weer terug bij af. Nu duren weer erg veel queries weer ineens meer dan 10 seconden, terwijl het andere moment ze weer 0,5 seconden duren.
Morgen avond wordt de server geupgrade naar 2 GB, en een 2e CPU.
Mijn (en dat van de provider) probleem is een beetje dat we niet meer weten wat we nu moeten doen. Is de server niet meer lekker, zijn er gigantisch veel aanvragen (dit kunnen we nergens terug vinden?), of is er toch iets anders aan de hand?
Ik heb op dit moment DBO rechten gekregen, om zelf ook wat onderzoek te kunnen doen. Ik hoop dat jullie me een beetje kunnen helpen om te achterhalen waar de problemen vandaan kunnen komen. Vanuit daar kan ik dan wel weer verder.....
De server:
Intel Xeon 2,8 GHz
1 GB geheugen
Raid 5 40 GB
WIndows Server 2003
SQL Server 2005
Situatie:
Database server met 7 databases, waarvan er 2 aktief gebruikt worden voor redelijk drukke webwinkels. Deze setup heeft ruim een jaar lang zo zonder problemen gedraaid, totdat... Op deze databases draaien verder nog wat backoffice app's geschreven in VB6. De websites zijn trouwens ASP3.0. Beide websites hebben per website zo'n 4000 unieke bezoekers per dag, backoffice gebruik is te verwaarlozen.
Probleem:
Sinds 1,5e week zijn er momenten waarop de server ineens bijzonder traag wordt. Requests vanaf de webserver (een andere dedicated server) duren dan zo lang, dat het zelfs een time-out tot gevolg kan hebben. Op dat moment is het CPU verbruik geen 100%, en ook het I/O gebruik is niet abnormaal hoog. Het CPU verbruik schommelt zo tussen de 5 en 80%, volgens mijn provider die dit na kan kijken. Het CPU verbruik op een "probleem moment" is niet significant hoger dan een "goed moment".
Wat ik uitgezocht / gedaan heb:
Onderstaande zaken heb ik onderzocht/uitgevoerd sinds de problemen. De problemen kwamen uit het niets.... Mogelijke oorzaken kunnen natuurlijk een langzaam steeds groter wordende database en/of meer bezoekers zijn.
- Enkele indexen verwijderd en opnieuw aangemaakt op basis van de situatie zoals deze nu is. Verder de Database Tuning Wizard uitgevoerd, puur voor de info. Hier kwamen verder geen rare dingen naar voren. => Gebruikers merkten af en toe een snellere website, wat natuurlijk te verklaren is door iets betere indexen.
- Transactionlog groeide door de dag heen redelijk hard. Nadat het recoverymodel van full naar bulk-logged gezet was ging dit beter. Alsnog groeit hij redelijk....
- Alle hardware nagekeken, deze is goed.
- Queries die langer dan 2 sec duren geanalyseerd en verbeterd. Het vreemde is dat een query die NU 50ms duurt, NU 30.000 MS kan duren, en vise versa...
- Queries die meer dan 500 ms CPU (time?) vergen verbeterd, zelfde verhaal.
- Zondag was de situatie zo dat ik in m'n query analyser, met bovenstaande instellingen nagenoeg (lees 1 per 10 minuten) queries voorbij zag komen. Alles leek opgelost na een week lang queries verbeteren etc...
- Maar, sinds vanavond 17.00 zijn we weer terug bij af. Nu duren weer erg veel queries weer ineens meer dan 10 seconden, terwijl het andere moment ze weer 0,5 seconden duren.
Morgen avond wordt de server geupgrade naar 2 GB, en een 2e CPU.
Mijn (en dat van de provider) probleem is een beetje dat we niet meer weten wat we nu moeten doen. Is de server niet meer lekker, zijn er gigantisch veel aanvragen (dit kunnen we nergens terug vinden?), of is er toch iets anders aan de hand?
Ik heb op dit moment DBO rechten gekregen, om zelf ook wat onderzoek te kunnen doen. Ik hoop dat jullie me een beetje kunnen helpen om te achterhalen waar de problemen vandaan kunnen komen. Vanuit daar kan ik dan wel weer verder.....