PDA

Bekijk Volledige Versie : trage webserver



mrorange
28/02/08, 20:48
beste leden,

wij hebben op het werk een erg drukke website.
op drukke momenten is het soms niet te doen om de site te bezoeken.
het laden van de pagina gaat erg traag.
wij hebben een dedicated server in amsterdam staan met voldoende bandbreedte.
op de server draait windows server 2003 met iis.
de site werkt op een database van acces, die iedergeval anders moet.
dat zal dan mssql gaan worden.

binnen een paar maanden komt er ook nog een site bij te draaien die ook erg druk is.
laats is het voorgekomen dat de iis server is uit gevallen.

wat is nu de beste oplossing dat de site snel en stabiel draait en ook tijdens top drukte goed werkt.
wij hebben ongeveer 100 gb data verkeer per maand.
en nu ongeveer 10.000 bezoekers per dag.

is dan windows de beste oplossing ? of is linux een goede oplossing?

je hoor zoveel verschillende verhalen, dat wij graag een eerlijk advies willen hebben.


groeten

MMaI
28/02/08, 20:59
met welke technologie is de site gemaakt?
als dat namelijk asp is samen met access, dan zal een linux oplossing vereisen dat je het project omschrijft/herschrijft naar php.
Nu zullen mensen onder mij vast zeggen dat asp ook draait op linux, maar dat is "emulatie" achtige support en heeft niet de snelheid en mogelijkheden van de IIS versie.

Mocht de site geschrevne zijn in static html met ene access database is denk ik de beste upgrade dat je de website laat herschrijven naar php + mysql en vervolgens een linux oplossing gebruikt.

De voordelen van linux:
- minder overhead door ontbreken grafische skin
- support, kennis en ontwikkeling uit een grote community
- veel controle over alle onderdelen
- geen licentiekosten voor veel software

Nadelen:
- sommige modules/pakketten werken niet optimaal, of zijn niet gebruiksvriendelijk
- asp niet goed mogelijk onder linux
- vereist kennis om er mee aan de slag te kunnen

Voordelen van windows server:
- de enige echte asp server
- minder stijle leercurve voor beheer
- standaard ondersteuning door microsoft (knowledgebase achtig)

nadelen van windows:
- overhead door grafische skin
- minder geschikt voor php/mysql hosting
- licentiekosten zijn hoog (zeker inclusief mssql server)
- meer vatbaar voor virussen en exploits/attacks

Afhankelijk van je huidige systeem is dus de ene oplossing beter dan de andere, ook moet je kijken naar:
- wie gaat het beheren en waar heeft deze persoon kennis/verstand van?
- wat is je budget
- wat heb je op dit moment
- wat wil je allemaal aanpassen

mrorange
28/02/08, 21:24
eerst bedankt voor je snelle reactie,

de site is geschreven in asp.net.
wij laten dat soort dingen allemaal doen, omdat wij zelf de kennis niet in huis hebben om dat te maken.
het omzetten van acces naar mssql zou ongeveer 6000,- gan kosten.
op zich vinde wij dat wel goed, maar is dan het probleem opgelost? en ook voor de toekomst.
als de site opnieuw geschreven moet worden kan dat ook gedaan worden.

het is voor ons erg belangrijk dat de performace beter moet zijn.
wij verwachten binnen een paar maanden , misschien weken een bezoekers aantal te krijgen van 12000 bezoekers per dag, welliicht nog meer.

wat mij dus opvalt is dat veel site toch linux gebruiken met mysql met php

omdat je niet echt een onafhankelijk advies kan krijgen bij onze webbouwer en hosting provider stel ik deze vraag dus hier.

alvast bedankt.

Ingvald
28/02/08, 21:51
Vooraleer er zaken gaan herschreven worden en gemigreerd van het ene platform naar het andere, lijkt het mij toch wel dat je eerst eens gaat kijken naar wat nu eigenlijk de oorzaak is van de problemen.

Met bv slecht geschreven .NET code kan een website met 10K bezoekers/dag best een server sloom maken. Als het dan daaraan ligt heeft het weinig zin om je Access DB om te zetten naar MSSQL, MySQL, enz.

Ik zou vooreerst je serverbeheerder toch maar eens vragen of hij eens een deftige analyse wil maken van de server zodat je ten minste toch de oorzaak weet van het probleem en dan pas een passende oplossing gaat zoeken.

MMaI
28/02/08, 22:21
als ik het zo een beetje inschat komt de traagheid omdat er aardig wat gerekent moet worden aan de data in de access db, omdat deze functies niet standaard in het access formaat zitten/ondersteund worden

zoals ingvald al aangeeft, laat de huidige serverbeheerder eerst een analyse maken van wat voor de traagheid zorgt op de server.
Overigens zou ik altijd een sql-achtige database verkiezen boven een access database om de redenen waarom deze ontwikkeld zijn, namelijk snelheid, schaalbaarheid en effectiviteit (met berekeningen etc)

mrorange
28/02/08, 22:34
de beheerder van de server die vertelde mij dat het komt door de aantallen bezoekers die op de site komen.
die stelde ook voor om nog een extra server erbij te plaatsen.
de site is gemaakt door een bedrijf die hoog staat aangeschreven, en ik mag verwachten dat de code op de juiste manier is gemaakt.


groeten.

Gh0sty
28/02/08, 23:37
de site is gemaakt door een bedrijf die hoog staat aangeschreven, en ik mag verwachten dat de code op de juiste manier is gemaakt.

Daar ga je al de fout in, nooit aannemen ondanks dat ze hoog aangeschreven zijn dat de code ook op de juiste manier is gemaakt. Het is volgens mij vaak het geval dat de code altijd nog geoptimaliseerd kan worden (misschien eens laten doorlopen door een ander extern bedrijf?).

Daarnaast kun je altijd nog kijken of de software nog te optimaliseren valt en/of het omschrijven naar een andere taal.

Kenneth
29/02/08, 10:17
Access is gewoon hopeloos voor zware en grote databases.

Laat de beheerder eerst kijken (zoals hierboven aangegeven) wat nu echt het probleem is. Of het nu teweinig CPU kracht is, te weinig RAM.. of misschien wel te weinig Disk I/O?
Of laat hem onderzoeken hoelang queries duren en hem misschien de queries eens op een test MSSQL database laten proberen op een server met gelijke specs en het verschil vergelijken.

Als je overschakeld naar MSSQL kun je altijd later ook nog kiezen voor een 2de aparte server die als database server dient aan te schaffen (met alleen MSSQL dus).

GlennMatthys
01/03/08, 10:51
Access is zowiezo al hopeloos bij meerdere connecties. Wellicht gaat de webapplicatie zo traag omdat hij steeds moet wachten op een lock van de database.

Arjen @ ARKOis
01/03/08, 13:03
Ben het met de heren hier eens, database zsm overzetten naar MS-SQL of MySQL.

10.000 bezoekers per dag is niks voor een webserver. Anders zal elke hoster hier met twee grote klanten per twee klanten een nieuwe Windows Server moeten opzetten, daar vliegen de kosten.


Of je moet denken over Linux, dan zal je eerst je script opnieuw moeten opstellen en dat word aardig prijzig. Ook is het niet nodig, Windows en Linux zijn net zo snel mits je ermee om weet te gaan (voor beide systemen).


Wil je een extra kijkje op de server, waar het probleem zal kunnen liggen.
Neem dan even contact op.

marcel5
01/03/08, 16:01
Simpele page caching kan zo gemaakt zijn en een hoop winst geven. Ik had in 3 kwartier een page cache systeem in de code toegevoegd waardoor mijn server load van overbelast naar praktisch nul ging.

Later moest ik uiteraard een hoop toevoegen voor uitzonderingen en management van de cache, maar al met al was het vrij simpel.

colinvanrooijen
11/03/08, 21:39
ik denk dat er wel iets valt te zoeken dat je website sneller is gewoon met een paar filtjes dat heb je ook met webspell:)

Mastje
11/03/08, 22:27
Ik zie hier veel haat t.o.v. Windows terugkomen, erg grappig. :)

Even in het algemeen. Windows is goed voor de taken die hij hoort te hebben. ASP.NET zou een Windows server feilloos moeten kunnen hebben. Als je een server hebt die moeite heeft met de grafische interface moet je niet direct gaan kijken naar Windows. Nee, dit ligt dan aan je server. Misschien dan toch je celeron upgraden? Windows is wat zwaarder, dat klopt. Er gebeuren overbodige dingen (Rondscannen naar andere Windows machines in de omgeving bijv.), dat klopt. Dit is nu eenmaal Windows. De taken die de server krijgt worden _wel_ gewoon afgehandeld en goed ook. (Of je moet wel hele rare dingen doen.)

@ de TS. Het probleem ligt in eerste opzicht bij de Access database. Ik weet niet hoeveel gelijktijdige bezoekers je hebt, maar Access kan niet veel verbindingen tegelijk aan. De oproepen wachten gewoon op elkaar. Laat deze zo snel mogelijk omzetten. Als het nog traag is, dan moet je met wat specifiekere informatie komen. (Wat is het voor website, wat kan je erop doen, hoeveel gelijktijdige gebruikers/pageviews).

Daarnaast zou ik aanraden door een derde bedrijf de server te laten controleren, om te kijken wat er aan de hand is. Deze kan je adviseren om te kijken wat er moet gebeuren.

Gegroet, een Ubuntu fan

Randy
11/03/08, 23:01
nadelen van windows:
- overhead door grafische skin
- minder geschikt voor php/mysql hosting
- licentiekosten zijn hoog (zeker inclusief mssql server)
- meer vatbaar voor virussen en exploits/attacks

- Verwaarloosbaar
- Onzin (FastCGI onder IIS is sneller dan PHP als Apache module onder Linux)
- Kijk naar het totale beheersplaatje en Windows kan zelfs goedkoper zijn dan Linx
- Onzin

Ik heb geen zin in een Linux/Windows fight. Maar kom met goede argumenten en niet met dingen die je ooit eens hebt gehoord!

Voor de TS: Access databases kunnen de nare eigenschappen hebben na verloop van tijd ontzettend te gaan fragmenteren. Je zou eens kunnen proberen deze database te defragmenteren.
Daarnaast lijkt mij het genoemde bedrag voor conversie van Access naar MySQL exorbitant hoog. Ik ken de site niet en weet niet welke (complexe) query's er gebruikt worden, maar het lijkt me verre van een reele schatting.

Bekijk daarnaast hoe dynamisch de pagina moet zijn. Soms kan het heel zinvol zijn om bijvoorbeeld de index uit een cache te laten komen. Zelfs bij een druk forum als Webhostingtalk zou je index.php kunnen herschrijven naar index.html en deze eens per xx minuut verversen. Daar zullen weinig mensen maar wat van merken. (al gebruikt dit forum een seperaate databaseserver).

brinkie
12/03/08, 00:29
Access kan bij mijn weten maximaal een 38 verbindingen simultaan aan, reden waarom je dit nooit moet inzetten voor dit soort toepassingen. Windowsservers kunnen heel wat hebben, mits je er maar genoeg hardware achteraan steekt. Dat is waar Linux het wint; op goedkopere hardware kan je net zo veel als bij Windows op duurdere hardware.

Het feit dat een bedrijf 'gerenommeerd' is zegt niets, ik ken (20 jaar ICT-ervaring bij diverse grote bedrijven) inmiddels diverse "gerenommeerde" ICT-bedrijven waar ik nooit iets zou laten bouwen.. Het feit dat ze gekozen hebben (naar ik aanneem was dat hun keuze?) voor een access database, zegt mij al genoeg..

De gevraagde 6.000,- zou ik toch echt eens laten onderbouwen door een analyse. En, ps.. heb je inzage in en de beschikking over een functioneel/technisch ontwerp? Da's wel het minste bij een beetje applicatie, zodat je ook een "contra-expertise" kan laten doen. Als het hun keuze was om te gaan voor access, dan kun je zelfs -mijns inziens- stellen dat de leverancier de ellende veroorzaakt heeft en nu dus ook maar zorg moet dragen voor een elegante, budgetneutrale, oplossing.

The_cobra666
12/03/08, 10:05
met welke technologie is de site gemaakt?
als dat namelijk asp is samen met access, dan zal een linux oplossing vereisen dat je het project omschrijft/herschrijft naar php.
Nu zullen mensen onder mij vast zeggen dat asp ook draait op linux, maar dat is "emulatie" achtige support en heeft niet de snelheid en mogelijkheden van de IIS versie.

Mocht de site geschrevne zijn in static html met ene access database is denk ik de beste upgrade dat je de website laat herschrijven naar php + mysql en vervolgens een linux oplossing gebruikt.


WTF. Man, waarom zou je in godsnaam een ASP applicatie gaan herschrijven naar php. PHP is nog slechter in taal dan asp. En het draait onder "emulatie" please m8, het draait goed. Ik ken een programmeur die zo goed als alle talen kent. De site draait perfect onder IIS als onder MONO onder linux. Oja heb ik ooit al gezegd dat MySQL feitelijk niet volledig gratis is? Terwijl mssql die wel volledig is.

Windows servers hebben ook hun voordelen, linux servers ook. In kosten valt een windows server wel nog goed mee.

crazycoder
12/03/08, 10:10
Oja heb ik ooit al gezegd dat MySQL feitelijk niet volledig gratis is? Terwijl mssql die wel volledig is.

Als je een msde achtig smaakje pak ja, anders betaal je er een niet onaanzienlijk bedrag voor :)


wij hebben op het werk een erg drukke website.
op drukke momenten is het soms niet te doen om de site te bezoeken.
het laden van de pagina gaat erg traag.
wij hebben een dedicated server in amsterdam staan met voldoende bandbreedte.
op de server draait windows server 2003 met iis.
de site werkt op een database van acces, die iedergeval anders moet.
dat zal dan mssql gaan worden.

Ongeacht of er overgestapt wordt naar mssql zou ik zeker even naar de server zelf laten kijken. Daar moet nl voldoende geheugen in zitten, zo niet zal ook mssql niet lekker gaan werken.

dreamhost_nl
12/03/08, 13:49
PHP is nog slechter in taal dan asp.
Dat is duidelijk een kwestie van smaak. ASP is gebaseerd op (Quick/Visual)Basic en PHP op C++.


En het draait onder "emulatie"
Dat doet ASP (normaal) net zo. Daarnaast kun je PHP scripts ook (pre)compilen d.m.v. de Zend Engine. Als je niet van beide "talen" alle ins-and-outs weet moet je de ene taal niet voor de ander onder laten doen.

Communicatie
12/03/08, 17:47
ASP.NET > Zeker de toekomst en absoluut beter dan PHP
Access > Dit moet z.s.m. omgezet worden naar MSSQL. Dit probleem hadden wij ook met een website van ons ( 12.000) uniek. Na omzetting ging alles net zo snel als de startdatum van de website.

Mensen, als je geen verstand van .NET, IIS, MSSQL en Windows hebt moet je absoluut niet zomaar gaan roepen. .NET is beter dan PHP. IIS heeft meer power vergeleken met apache. En MSSQL kan je niet eens vergelijken met MySQL omdat MySQL amper een product is vergeleken met MSSQL.

Groetjes,

Alias

dreamhost_nl
12/03/08, 18:05
Mensen, als je geen verstand van .NET, IIS, MSSQL en Windows hebt moet je absoluut niet zomaar gaan roepen. .NET is beter dan PHP. IIS heeft meer power vergeleken met apache. En MSSQL kan je niet eens vergelijken met MySQL omdat MySQL amper een product is vergeleken met MSSQL.


Wel een hoop kreten zonder ook maar enige vorm van onderbouwing... ;)

mrorange
17/03/08, 14:06
beste leden,

sorry voor mijn late reactie, ik was op vakantie.
zoals ik het lees is het dus onnodig om over te gaan op mysql en php.

wij gaan dus omzetten naar mssql.
wat zou het omzetten moeten gaan kosten ongeveer?

en heel erg bedankt voor de reacties die jullie al hebben gegeven.

groet

crazycoder
17/03/08, 14:11
beste leden,

sorry voor mijn late reactie, ik was op vakantie.
zoals ik het lees is het dus onnodig om over te gaan op mysql en php.

wij gaan dus omzetten naar mssql.
wat zou het omzetten moeten gaan kosten ongeveer?

Het is vrij lastig om daar een zinnig antwoord op te geven.

- hoe is het ontwikkeld
- hoe zit het licentietechnisch in elkaar

Als je licenties MSSQL moet kopen dan is dat redelijk kostbaar. Mocht dat het geval zijn dan verbaas ik mezelf niet over de eerder genoemde eur 6000. Lijkt mij verstandig om bij de huidige leverancier navraag te doen naar kosten en de opbouw daarvan.