-

PSD2 brengt performance-uitdaging voor API’s banken

Dankzij de komst van PSD2 ontstaat er een nieuw speelveld voor banken dat meer ruimte biedt voor concurrentie, maar ook voor nieuwe, innovatieve betaaldiensten. PSD2 verplicht banken onder meer rekeninginformatie en betalingsinitialisatie via een API beschikbaar te maken. Dit brengt een nieuwe uitdaging met zich mee: want hoe zorg je dat de snelheid en capaciteit van jouw API zijn gewaarborgd en je niet achterblijft bij concurrerende paymentproviders?

Het inzetten van een API betekent dat computerprogramma’s bijvoorbeeld een saldo kunnen raadplegen. Daarmee kun je verwachten dat deze API’s veelvuldig aangeroepen gaan worden. Een menselijke gebruiker controleert 1x per dag zijn/haar banksaldo. Een computerprogramma dat gebouwd is om te reageren op een saldowijziging, probeert echter misschien wel een paar keer per seconde te achterhalen wat het saldo is. De vraag is of de API’s hier wel op berekend zijn? Capaciteit is dan ook een belangrijk aandachtspunt waar voordat de API in gebruik wordt genomen, heel serieus naar gekeken moet worden. Dit voorkomt dat er achteraf enorme investeringen nodig zijn in infrastructuur en de optimalisatie daarvan.

Snelheid API kritieke factor

Daarnaast is het niet ondenkbaar dat een derde partij een universele app voor internetbankieren schrijft. Eén app waarmee je via één interface al je rekeningen kunt beheren bij verschillende banken. Omdat deze app rekeningen van meerdere banken naast elkaar presenteert, is het direct zichtbaar als van één bank de gegevens langzaam verschijnen. Dit betekent dat snelheid ook een kritieke factor is voor de gebruikerservaring van klanten.

Gelukkig is het concept van API’s niet nieuw. In de ICT wordt er al op vele manieren gebruik van gemaakt, dus zijn er ook veel middelen beschikbaar om te zorgen dat je zowel capaciteit als snelheid in de hand kunt houden. Om overbelasting te voorkomen en te zorgen dat de API onder alle omstandigheden optimaal presteert, kunnen banken onder meer 5 onderstaande acties ondernemen. 

5 acties voor optimaal presterende API’s
  1. Pas rate limiting toe: deze techniek zorgt voor een limiet op het aantal API-calls die mogen worden gedaan in een bepaald tijdbestek. Bij het raken van de rate limit is de API overbelast, maar is nog wel beperkt benaderbaar. Deze beveiliging zorgt ervoor dat achterliggende systemen niet overbelast worden.
  2. Zet cache geheugen in: cache geheugen zorgt ervoor dat data die veelvuldig wordt opgevraagd snel beschikbaar is  (in plaats vanuit een relatief langzaam backend). Hierbij moet wel rekening worden gehouden met het feit dat de data uit de cache mogelijk verouderd is.
  3. Zorg dat de omgeving schaalbaar is: het gebruik van API’s gaat onder PSD2 groeien. Wees hierop voorbereid door een schaalbare IT-omgeving in te richten.  
  4. Maak afspraken met de afnemer: Hoe vaak mogen zij de service aanspreken? Wat mag er worden opgeslagen?
  5. Voer testen uit:  Alle bovenstaande punten zijn middelen om performance-problemen te voorkomen. Maar je wil uiteraard zeker weten dat deze maatregelen werken zoals ze bedoeld zijn. Daarom is het goed om de volgende testen uit te voeren.
    5.1 Stresstest: Met een stresstest kan de capaciteit van de applicatie/omgeving goed vastgesteld worden. Door met een oplopende belasting te testen wordt het breekpunt vastgesteld en wordt duidelijk of de maatregelen effect hebben.
    5.2 Loadtest: Deze wordt uitgevoerd onder een constante load waardoor er een reëel beeld ontstaat van de responstijden.
    5.3 Duurtest/soaktest: Helpt te bepalen of de applicatie ook over langere tijd stabiel presteert.
    5.4  Securitytest: Het blijft natuurlijk financiële informatie waarmee je niet voorzichtig genoeg kunt zijn. Test daarom ook of het systeem waterdicht is.

Deel dit bericht

1 Reactie

Rene - Formatics

Iedere keer pollen of een saldo gewijzigd is lijkt me inefficient. Je zou ook API’s kunnen bouwen die dit pushen zodra er een wijziging heeft plaatsgevonden.

Plaats een reactie

Uw e-mailadres wordt niet op de site getoond