Just nu i M3-nätverket
Gå till innehåll

Lämna över resurser till annat


Bor0

Rekommendera Poster

Hej!

 

Jag har en server med webbserver och MySQL server installerat.

På den kör jag en sajt utvecklat i PHP och MySQL.

 

Det funkar riktigt bra men i vissa fall överförs information från andra servrar till min MySQL databas via ODBC. Det kan handla om tusentals poster.

En sådan överföring tar väldigt mycket resurser och gör att själva sajten slutar fungera, förmodligen pga överbelastning.

 

Dessa "tusentals" poster är det tänkt ska överföras flera gånger per dag :)

Uppdatering

 

Finns det sätt att kringgå överbelastningen? Låta överföringen ta sin tid och att sajten överlever under tiden.

 

Tacksam för hjälp

 

Länk till kommentar
Dela på andra webbplatser

Det låter inte som något som skulle vara ett problem för MySQL och inte heller för PHP. Möjligtvis skulle det kunna vara relaterat till någon brist i ODBC-drivrutinen, den är väl inte främst tänkt till sånt men jag har väldigt svårt att tro att den skulle få MySQL att sluta jobba med annat med mindre än att du gör något helt galet.

 

Skulle jag felsöka det hela skulle jag slå på sql-loggning i mysql, köra det där ODBC-baserade importjobbet och titta på vad det är för nåt som kommer in.

 

Länk till kommentar
Dela på andra webbplatser

Nu körde jag in ca 700 poster vilket tog ett några minuter. Under tiden fungerade sajten rätt ok.

Vissa fördröjningar märktes men ingenting allvarligt.

Den dog inte :)

 

Tanken är att ca 50 000 poster ska överföras en eller flera gånger om dan så småningom.

 

Låter både resurs och tidskrävande :)

 

Jag har en HP ML370 server med 1,5GB RAM med dubbla processorer å 2785Mhz.

 

Programvaran som överför ska jag försöka optimera men frågan är om det kommer att hålla ändå.

 

Något jag bör uppgradera?

Kan man fördela resurser mellan tjänsterna så webbservern får mer?

 

Tackar för hjälpen!

 

 

 

 

Länk till kommentar
Dela på andra webbplatser

Tanken är att ca 50 000 poster ska överföras en eller flera gånger om dan så småningom.

 

Låter både resurs och tidskrävande :)

Tycker det låter som en baggis för vilken rättkonfigurerad mySQL som helst.

Fast det beror naturligtvis på vad du har för tabell-typer, vilka index som ska uppdateras och inte minst hur din egna SQL ser ut och hur sunkig burk den snurrar på (även om vilken p3:a som helst med tillräckligt mycket minne för att inte behöva swappa när du gör det borde klara det).

 

Edit: Detta sagt helt utan att testa vad mina egna servrar klarar att trycka in just nu. Det känns emellertid inte som något de skulle dö av.

[inlägget ändrat 2008-10-28 20:22:39 av fhe]

Länk till kommentar
Dela på andra webbplatser

Som fhe så tycker inte heller jag att det ska behöva vara så slött som du beskriver. Hur stor är belastningen på databasen när det gäller läsningar? Om denna inte är speciellt tung så föreslår jag att du börjar med att låta de klustrade indexen vara optimerade för inserts hellre än selects.

 

 

Länk till kommentar
Dela på andra webbplatser

Tackar för all hjälp!

 

Håller på att optimera programmet som överför informationen till

MySQL databasen. Det ger resultat :)

 

Läser igenom hur man kan optimera MySQL och Apache. Har inte gjort

något sånt :)

 

Ska uppgradera minnet och diskarna. Har nu bara 1,5GB ram.

Servern känns annars snabb.

 

Tack!

 

 

Länk till kommentar
Dela på andra webbplatser

Hej igen!

 

Nu har jag kört fram och tillbaka ett tag. Gjorde lite inställningar i mysql som till slut gjorde att ODBC kopplingen inte fungerade :)

 

Håller just på att överföra ca 50 000 poster via ODBC och det är ganska slött.

1000 artiklar tar ca 1,5Min. Betyder att 50 000 tar ungefär en timme

 

Borde det inte vara snabbare att importera informationen från en fil?

FTP:a filen men alla information och köra in det sen?

 

Vad tror ni?

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...