Mastodon Werken Archives - HermanRonk.nl

Duh Websites

Dat de CampZone inschrijvingen open zijn gegaan zal niet veel van de lezers van mijn website zijn ontgaan, maar wat moet er nou allemaal gebeuren voordat zo’n website online kan en de kaartverkoop kan starten?

Tot dit jaar hebben we altijd gebruik gemaakt van een custom build systeem van GameParty.net maar na bijna 10 jaar hebben we besloten om voor een flexibelere oplossing te kiezen en zijn we dus op zoek gegaan naar een goed alternatief. En dat dat best een zoekwerk geworden is moeten jullie maar van me aannemen, maar volgens mij zijn er bijna net zo veel cms’en als er websites zijn, dus dat is een aardige vergelijking geworden. Uiteindelijk is dan de keuze voor een platform gemaakt (WordPress).

Op dat moment heb je dus een platform, maar ongetwijfeld wil je toch nog net een paar dingen die standaard niet kunnen, in ons geval heeft daar vooral veel tijd in gezeten, om vervolgens na lang testen toch voor de standaardoplossing van een WordPress Netwerk te kiezen voor het koppelen van als onze websites (TP, CZ, Shop, CZBBQ enzovoorts). Op backend gebied ben je er voor de event websites dan bijna, je installeerd de plugins die je wil hebben, voert de configs in, kiest te beheerders enzovoorts. Gelijktijdig laat je de theme’s ontwikkelen die gebruikt worden voor de layout van de pagina’s, dit is iets wat veel mensen onderschatten, maar wat dus een hoop tijd kost.

Een ander team mensen schrijft ondertussen de content voor de websites, die vervolgens weer door andere nagelezen en aangepast worden. Wanneer dat gedaan is wordt alle content op de juiste plaats op de website gezet, worden de koppelingen met Facebook, Twitter enzovoorts gemaakt en begint het grote testwerk.

Ondertussen op een heel ander traject moest er gewerkt worden aan een webshop, een iDeal implementatie, PayPal accounts enzovoorts. Het is vooral dit traject dat veel tijd kost, alles moet herhaaldelijk getest worden, de shop moet zo aangepast worden dat hij geschikt is voor de verkoop en verhuur van tickets en artikelen en er moet een goede registratie achter die weer dienst kan doen als inchecksysteem op de evenementen. Uiteraard veranderen de wensen en verwachtingen tijdens dit traject een aantal keer (we gaan immers iets voor ons nieuws doen) waardoor sommige dingen last minute toch nog aangepast moeten worden, hoort er allemaal bij en was te verwachten, dus geen probleem, maar wel veel werk.

Als je dan eindelijk live kunt na al dat testen en de eerste tickets verkocht worden geeft het wel een super voldaan gevoel :), uiteraard stromen meteen ook de eerste foutjes die je toch nog gemist hebt, wensen die je onderschat hebt of zaken waar je niet duidelijk genoeg over was meteen binnen, maar dat hoort er een beetje bij. Bijkomend voordeel is ook dat je ziet dat je community met je mee denkt en ook vaak met echt leuke ideeen komt, waar we dan later, als we zijn bijgekomen, tijd in kunnen steken om het te implementeren in onze websites.

Kortom, het is allemaal veel werk, maar zeker de moeite waard en alhoewel het nu nog even wennen zal zijn voor onze vaste The Party en CampZone bezoekers gaan we er vanuit dat iedereen uiteindelijk het nut van alle wijzigingen in gaat zien en de nieuwe opzet kan waarderen, of anders in ieder geval constructief mee kan denken aan hoe we alles voor iedereen zo optimaal mogelijk in kunnen richten.

Storage en Netwerk uitdaging (2)

Vorige week besloot ik na een aantal berichten heen en weer op Twitter dat het beter was even een bericht op mijn website te zetten over het probleem waar ik op het werk mee te maken had.. Dat bericht werd wat groter dan verwacht maar stond na 2 uurtjes schrijven online. Gelukkig namen zowel Steph als Andries de tijd om met me mee te denken om tot een goede oplossing te komen.

Ik heb een 11-tal scenario’s uitgewerkt en getest (klik op onderstaand plaatje) om te kunnen bepalen waar het probleem nou zat. Mede door de tips van Andries in zijn meer dan uitgebreide reactie is het uitendelijk gelukt om te vinden waar de vertraging vandaan kwam.

metingen

Tevens heb ik een stuk performance log opgeslagen om te kunnen kijken of de bottleneck dan niet toch op de server zou zitten. Bij het bestuderen van deze logging bleek dat de disk queue length van de SSD die de data aan moest leveren onder de 0.1 bleef, dat in combinatie met een verwaarloosbare CPU belasting en een beperkte hoeveelheid netwerkverkeer bevestigden nogmaals dat de server het probleem niet kon zijn. Om dit te bevestigen heb ik als test terwijl de server 6 clients van data aan het voorzien was (met 300 Mbit) een kopieractie van 40 GB naar de 3 andere servers gestart.. Meteen zat de Gbit verbinding van de server op  92% belasting, wat in dit geval inclusief de overhead onderveer het max is (941 Mbit bij een packetsize van 64k). Vanaf dit punt was het zeker dat de server de beperking niet was.

Steph had al eerder aangegeven dat CIFS mogelijk het probleem was, nadat we de server uitgesloten hadden kwamen Andries en ik eigenlijk tot de conclusie dat het wel in die hoek MOEST zitten.. Om dit te testen heb ik de 6 laptops opnieuw ingericht en weer de standaard filetransfer gestart (490 blokken van 100 MB, 1 robocopy sessie). De netwerkbelasting op de laptosp schommeld op dat moment rond de 50-60 Mbit. Wanneer ik dan handmatig nog een extra Robocopy sessie start van een 4,5 GB bestand schiet de netwerkactiviteit naar +- 300 Mbit op de desbetreffende client.. Hieruit valt op te maken dat het verhogen van het aantal gelijktijdige Robocopy acties de snelheid drastisch doet verhogen..

Op dit punt was het probleem duidelijk en eigenlijk ook meteen de beste oplossing. De nieuwste versie van Robocopy bied ondersteuning voor simultane downloads, deze versie (XP0027) werkt helaas alleen op Windows 7 en Windows Vista.. Als noodoplossing heb ik een kort AutoIT scriptje geschreven dat 2 robocopy sessies start. Wanneer dit script gebruikt wordt starten er 2 gelijktijdige kopieracties.. De totale snelheid van 6 clients komt dan op de 807 Mbit te liggen, wat ruim voldoende is voor wat wij van plan zijn (100 Mbit per client is de max die we met dit netwerk met 10 clients gelijktijdig kunnen behalen).

cacti

Het enige dat nu nog rest is het schrijven van een net script en de implementatie in het grote installatie project, maar dit laat ik volgende week aan anderen over (die zijn daar stukken beter in).

Dan rest mij verder niets dan Steph en Andries te bedanken voor hun hulp bij het oplossen van dit probleem en het nemen van een vrije dag aan het einde van deze week..