Door Patman, Op din 4 maa 2008 16:29, 23 reacties, citaat / intro / linkdump

ZapLog momenteel in ‘emergency’ mode

We hebben behoorlijke performance problemen met het ZapLog. Hoofdoorzaak zijn de zware queries en het CMS dat er niet geschikt voor is. De server wordt uitgebreid naar 4gig zodat de SQL-caching flink omhoog kan maar dat is een noodoplossing met slechts beperkt nut omdat we ook tegen maximale CPU-load aanzitten.

Laatst hadden we Geenstijl op bezoek, dat ging nog prima, maar nu staat het ZapLog op de voorpagina van het intranet hier (Einstein.sogeti.nl) en zoals het IT-ers betaamt, zitten ze de hele dag niets anders te doen dan te internetten. Dan weer even de nieuwe lease-auto configureren, dan weer op je favoriete forum en af en toe even op...
Annotaties:
| #15418 | 04-03-2008 16:38 | Patman
"Sogeti I&I;en de Dutch Bloggies 04-03-2008

De sociale probeerselen van Innovatie en Inspiratie zijn kandidaat voor een Dutch Bloggies award. Over een paar weken worden weer de Dutch Bloggies uitgereikt en ditmaal heeft de uitreiking zowaar een Sogeti tintje.

DSE / I&I;is al maanden bezig aan een methode voor de ontwikkeling van social software, codename 'TeamPark'. Het begeleidende boek 'Crowd Busting – the crowd, het vergeten talent in uw organisatie' is bijna gereed en er is een operationele speeltuin: http://zaplog.nl In vier maanden uitgegroeid tot Nederlands één na grootste social newssite. Dit ZapLog zit bij de laatste vijf kanshebbers op een Bloggie in de categorie 'Nieuws'. ZapLog is een samenwerking met Zapruder Inc., met 200.000 unieke bezoekers per maand Nederlands grootste website voor Conspiracy Theorie. Zapruder Inc. is eigendom van Patrick Savalle van I&I;. Ook http://zapruder.nl zit bij de laatste 5 kandidaten voor een Dutch Bloggie, samen met Geenstijl…

Zie: http://zaplog.nl/zaplog/article/dutch_bloggies_shortlist_2008 "
Patman's avatar
| #15420 | 04-03-2008 17:18 | madbello
Sterkte en succes ;-)
madbello's avatar
| #15425 | 04-03-2008 17:58 | Arnd
+.
Arnd's avatar
| #15431 | 04-03-2008 19:22 | drecul
Wat voor database platform en cms draai je eigelijk?
Die 4gig gaat het ongetwijfeld iets sneller maken maar zo te zien ligt je bottleneck bij de cpu.

ik neem aan dat de indexering allemaal goed zit en dat je geen rare queries heb lopen.Ik vindt het zaplog sinds maandag trager, het valt me ook op dat het zaplog vrij vaak gerefreshed wordt als ik in een andere tab van mijn browser zit.
Zit dat bij jullie ingesteld? zou wel een een zware belasting kunnen zijn als dat op hetzelfde moment bij iedereen gebeurd.
drecul's avatar
| #15433 | 04-03-2008 19:58 | Patman
Het draait op het welbekende LAMP platform (Linux-Apache-MySQL-PHP). Het is een AMD dual core machine op iets van 2.3Ghz. (Kan dat, staat me bij). Er zit nu 1Gig RAM in. De machine hangt aan een 1Gigabit internetverbinding. We draaien op MySQL 5.x met 512Mb caching. PHP 4.x

Er draaien 3 websites op de machine: Zapruder.nl en Zaplog.nl en Patricksavalle.com Samen goed voor zo'n 300.000 hits per dag. Dat moet voor de machine absoluut geen probleem zijn, het probleem ligt echt in het ontwerp van het ZapLog én het rottige CMS.

Het CMS is Expression Engine en dat heb ik nooit een goede performer gevonden. VKmag draait er ook mee en dat is ook traag.

Er lopen wel degelijk hele rare (zware) queries en ik heb het datamodel (de indices) moeten aanpassen vanwege al het social gedoe. Daar was EE nooit op gebouwd.

Ik heb denk ik ook een sub-optimale template structuur gemaakt. De caching die we in EE aan hebben staan gaan op template niveau (een template is geparametiseerde HTML) en met het nesten van templates kan je delen van de pagina wel of niet laten cachen.

Het vele refreshen dat je merkt, is de 'activity-bar' rechtsboven, die refresht om de 2 minuten ofzo. Is een hele lichte query, moet geen probleem zijn.

Zodra ik tijd heb, maak ik wat templates en queries en prompts beschikbaar zodat jullie kunnen meedenken!
Patman's avatar
| #15434 | 04-03-2008 20:05 | Patman
Een factor die ook meespeelt, is dat het ZapLog een enoooooorme longtail heeft. Soms worden artikelen in hun tweede of derde maand nog meer bekeken dan in hun eerste. Oude artikelen worden heel erg veel gelezen.

Dat is natuurlijk een soort van compliment voor het interactie ontwerp / social design van de site, maar ook een grote belasting op het systeem omdat de caching dan minder effectief is. Ik heb de software aangepast zodat er nu 5000 pagina's of paginadelen kunnen worden gecached, maar dan nog...
Patman's avatar
| #15437 | 04-03-2008 21:13 | drecul
kun je je database niet splitsen in een archief en actieve database.Zodat je altijd maar een paar maanden in je live database heb zitten en artikelen ouder dan 2 maanden naar je archief database verhuist?
drecul's avatar
| #15441 | 04-03-2008 21:44 | Patman
Ja tuurlijk, er zijn een heleboel van dat soort mogelijkheden om de performance te verbeteren. Maar dat is geen oplossing, het ontwerp en de queries moeten gewoon geod zijn.
Patman's avatar
| #15442 | 04-03-2008 21:48 | Patman
De database kan naar een andere machine, we kunnen gaan clusteren, maar dat is een brutekrachrt oplossing, ik zoek het meer in de elegantie (en de kostenbeperking...)
Patman's avatar
| #15443 | 04-03-2008 21:50 | Arnd
Je geeft met aldi info wel een kwaadonaardig iemand nogal veel info
Arnd's avatar
| #15445 | 04-03-2008 22:16 | drecul
zijn je cms en je database gescheiden of staan ze op dezelfde server?
Clustering is ook niet altijd een oplossing , alleen als je 2 actieve nodes hebt die aan loadbalancing doen en ik weet zo gauw niet of mysql over die functionaliteit beschikt.
Vrees toch dat er meer processing power bij moet.
Verder zou ik de server waar de database op draait zoveel mogelijk dedicated houden.
drecul's avatar
| #15446 | 04-03-2008 22:28 | Patman
"alleen als je 2 actieve nodes hebt die aan loadbalancing doen en ik weet zo gauw niet of mysql over die functionaliteit beschikt."


Dat is geen probleem.

Vrees toch dat er meer processing power bij moet.


Dat is wat de serverboys ook zeggen.

Maar vooralsnog zit de meeste winst in een betere programmering van het zaplog. Ik zie al 30 jaren code en softwaresystemen voor mijn neus, trust me on this one... ;)
Patman's avatar
| #15452 | 05-03-2008 01:40 | Antagonizer
Prutswerk, ik zeg het je!

Die geitentemmer heeft geen flauw benul van wat hij doet!
Whoei!!!
Antagonizer's avatar
| #15469 | 05-03-2008 15:00 | drecul
Nou Ant ik wou het niet omhoog brengen maar voor iemand die al 30 jaar tegen code aan zit te kijken zou je toch mogen verwachten dat het wat sneller draaide allemaal. ;)
drecul's avatar
| #15471 | 05-03-2008 16:27 | Patman
grrrrrrr...
Patman's avatar
| #15479 | 05-03-2008 17:40 | drecul
ok laat me rade:

delete from users
where username ='Drecul'
;
drecul's avatar
| #15486 | 05-03-2008 19:55 | drecul
uiteraard gevolgt door:

insert into banne_ip_addresses
select* from users where username = 'drecul'
;
drecul's avatar
| #15487 | 05-03-2008 19:56 | drecul
en antuurlijk niet te vergete:

insert into aivd_public
select* from users where username = 'drecul'
;
drecul's avatar
| #15513 | 06-03-2008 11:57 | Patman
De server gaat zo even down. Er komt meer geheugen in de machine. Morgen nog een keer dan komt er een nieuwere Linux-kernel op.
Patman's avatar
| #23638 | 07-05-2008 14:05 | Vanderstraeten Marc
Ik evalueer momenteel expression engine voor een site met veel hits. Is dit CMS echt zo'n slechte keuze? Zijn er betere?
| #24682 | 15-05-2008 08:35 | arjan.stroeve
Waarom stap je niet over naar de webservices van Amazon, EC2 en S3 ?

Ik overweeg dit zelf ook te doen, daarom even als vraag aan alle lezers. Wat zijn de nadelen van deze diensten, het klinkt allemaal te mooi om waar te zijn :)
arjan.stroeve's avatar
| #24687 | 15-05-2008 09:09 | Patman
@Marc, nee dit is wel een redelijk CMS, maar supereenvoudig. Nadeel is dat er een hele slome, trage 'community' achter zit en je veel dingen zelf moet maken. Beter Drupal of WP gebruiken. Drupal heeft mijn voorkeur van alle eenvoudige CMS-sen.
Patman's avatar
| #24688 | 15-05-2008 09:11 | Patman
De performance problemen zijn trouwens opgelost. Sommige queries waren niet optimaal maar vooral een iframe dat zichzelf elke 90sec. ververste (de activity-balk rechtsboven) hing het systeem op. Weet niet waarom.
Patman's avatar
aanmelden / inloggen