Awel luistert naar kinderen en jongeren

Optimalisatie forum van Awel

Websites

Awel bestaat sinds 1981 en was tot begin 2012 bekend als de ‘Kinder- en Jongerentelefoon’. Vandaag kan je hen nog steeds opbellen, maar Awel zet ook steeds meer in op digitale kanalen. Kinderen en jongeren kunnen bij Awel terecht via telefoon, e-mail, chat en een online forum. Awel biedt een luisterend oor dankzij vrijwilligers, maar ook via de vele leeftijdsgenoten op het forum.

In 2009 werd het forum toegevoegd aan de brede waaier van communicatiemiddelen van Awel. Hierdoor worden jongeren niet enkel door de vrijwilligers van Awel te woord gestaan maar kunnen ze ook elkaar helpen. 

  • Forum op maat met een sterke focus op anonimiteit
  • Drupal 8
  • Uitgebreide tools voor de moderators
  • Kinderen en jongeren helpen elkaar in een gecontroleerde omgeving

Exponentiële groei van het forum

In 2018 vernieuwde Awel de website, met een forum dat tegemoet kwam aan de huidige communicatiesnelheid en belangrijke veiligheidsvereisten. De ondersteuning ervan werd daardoor echter een stuk complexer. Het forum van Awel werd na enige tijd slachtoffer van haar eigen succes en kreeg te kampen met stabiliteitsproblemen.

Eind 2019 werd 3sign gecontacteerd door Awel met de vraag of wij hier een oplossing voor konden bieden. Een uitdaging die we maar al te graag aangingen! Het resultaat kan je hier vinden.

Het forum van Awel weergegeven op een iPhone
Het forum van Awel weergegeven in een desktop browser

Hoe we de stabiliteit en snelheid van het forum op de rails kregen

Toen onze hulp werd ingeroepen was de situatie vrij urgent. Het forum en de site waren regelmatig niet bereikbaar. Onze eerste zet was om het forum en de site van elkaar te scheiden, zodat we beiden op een aparte omgeving konden plaatsen. Zo bleef de site bereikbaar ongeacht de belasting van het forum en konden we gerichter werken aan de optimalisatie.

Het forum werd ten eerste op een veel krachtigere hosting geplaatst. Dit gaf ons de ruimte om verdere problemen te identificeren en bij te sturen. Bij complexe applicaties zoals een forum, zijn problemen zelden toe te wijzen aan één enkele oorzaak. Uiteindelijk waren aanpassingen nodig op verschillende vlakken om het systeem vlot te laten functioneren. We zorgden o.a. voor: een update van de site, het verwijderen van overbodige modules, een lenteschoonmaak van de database, minder belasting van de database, een eenvoudigere moderatie van het forum en caching.

Was it the smoke in the cockpit? 

Wie al eens naar ‘air crash investigation’ op National Geographic gekeken heeft, weet dat er zelden één duidelijke oorzaak aan te wijzen is wanneer een systeem op zijn knieën gaat. 

Dat is bij complexere applicaties vaak ook het geval. Het probleem met het forum was niet toe te wijzen aan één oorzaak, maar het gevolg van zaken die pas na verloop van tijd én onder bepaalde omstandigheden opduiken.

Screenshot van een bericht met de optie om dit bericht te rapporteren

Verminderde belasting van de database

Opmerkelijk was meteen dat de database te snel aangroeide en geregeld te zwaar belast werd om vlot te kunnen werken. Dit werd o.a. veroorzaakt doordat het systeem alle posts en alle reacties telkens opnieuw een bepaalde score toebedeelde, om zo de volgorde te bepalen op het forum. Hoe groter het forum werd, hoe zwaarder de belasting. Elke post ooit geplaatst kreeg namelijk dagelijks een nieuwe beoordeling. In overleg met Awel hebben we dit systeem uitgeschakeld en vervangen door een veel eenvoudiger en performanter systeem. In de praktijk bleek het zo dat posts van oudere datum hoe dan ook aan belang verloren en dus geen nieuwe score nodig hadden.

Het (anoniem) beoordelen en rapporteren van bepaalde posts was één van de zaken die na verloop van tijd een grote invloed had op de snelheid van het forum. Ook dit werd door ons bijgestuurd.

Caching

Verder hebben we de caching van de site onder handen genomen. Door een goede caching worden bepaalde blokken in de site tijdelijk opgeslagen, wat ervoor zorgt dat de database van de website veel minder aangesproken moet worden wanneer deze blokken moeten verschijnen.

Wat is caching?

Een website maakt gebruik van een database om alle informatie die ingegeven wordt door de gebruikers van de site op te slaan. Wanneer je de website raadpleegt moet de meest recente informatie uit die database opgehaald worden. Dat kan een vrij arbeidsintensief proces zijn. Dit komt omdat de structuur van de database sterk verschilt van de manier waarop de informatie wordt weergegeven aan de bezoeker. Voor elke pagina moeten er veel aparte velden opgehaald worden. In het geval van een forum gaat dit onder meer over de namen van de gebruikers, het onderwerp van elke post en de inhoud van de posts. Al deze info wordt vervolgens samengevoegd tot de zichtbare webpagina. 

Caching zorgt ervoor dat de database niet elke keer opnieuw aangesproken moet worden om de pagina weer te geven. Met caching wordt een deel van de informatie tijdelijk elders opgeslagen zodat die sneller opgehaald kan worden.

Dit systeem kan op diverse plaatsen ingezet worden: In de browser, op de harde schijf van de server, in het ram geheugen van de server, op aparte servers op verschillende locaties enz. Doorgaans worden een hoop verschillende technieken gecombineerd om de website zo performant mogelijk te maken.

In de blogpost “Op deze 12 manieren maken wij jouw website sneller” gaan we dieper in op dit onderwerp.

screenshot van de beheersinterface

Naar een optimale ervaring voor de moderators

Het forum van Awel is grotendeels zelfregulerend. Het is schitterend om te zien hoe de kinderen en jongeren elkaar helpen bij grote én kleine problemen. Waar nodig schieten de j-Awellers te hulp. Deze helden van Awel  zijn een een twintigtal tieners die vrijwillig inspringen waar nodig en het forum modereren.

Anonimiteit staat voorop

Er bestaat behoorlijk wat software waarmee je een forum kan maken en deze kunnen doorgaans vlot omgaan met grote bezoekersaantallen. Awel is echter geen standaard forum. De volledige anonimiteit die gegarandeerd wordt en de uitgebreide moderatie mogelijkheden vergen behoorlijk wat maatwerk.

Je kan als gebruiker bijvoorbeeld een reactie plaatsen zonder een account aan te maken. Deze reacties worden niet meteen gepubliceerd, maar worden eerst nagekeken door de moderators. Maak je toch een account, dan kan dat ook niet onder je eigen naam: er wordt automatisch een (leuke) schuilnaam en avatar voor je aangemaakt.

Account aanmaken op het forum met random avatar en random profielnaam

Berichten die nagelezen moeten worden, komen terecht in een dashboard waar één van de vrijwilligers de post zal oppikken. Er zijn verschillende redenen waarom iets niet meteen geplaatst wordt: omdat het een anonieme reactie is, omdat de inhoud aanstootgevend is, het is een dubbele post…

Samen met de medewerkers van Awel namen we poolshoogte bij de vrijwilligers en kwamen zo te weten hoe we hun werk vlotter kunnen laten verlopen.

Awel moderatie op iPhone

We gaven het platform een flinke upgrade, waardoor de moderatie nog vlotter kan verlopen op desktop en mobiele toestellen. Dankzij een bijgewerkt dashboard hebben de J-Awellers bovendien meteen een duidelijk zicht op de openstaande en afgewerkte taken.

Bovenstaande ingrepen zorgden ervoor dat het forum van Awel opnieuw vlot kon gebruikt worden door de kinderen, jongeren, vrijwilligers en medewerkers. Het spreekt voor zich dat we de site en het forum de komende jaren verder optimaliseren, zodat Awel een betrouwbaar aanspreekpunt kan blijven via een voor de hand liggend, gratis en makkelijk bereikbaar contactkanaal.

Ben jij als organisatie of vzw ook op zoek naar een nieuwe partner voor je Drupal website? Merk je dat je website niet (meer) aansluit bij je visie, missie, werking? Zoek je hulp bij het onderhouden of optimaliseren van je website? Via deze blogpost kom je meer te weten over onze werkwijze.

Interesse om met ons samen te werken?