Ga direct naar inhoud
'Zoek de randjes op met edge computing en nuxt nitro'

'Zoek de randjes op met edge computing en nuxt nitro'

Sven van Straalen

Experienced professionals

Architecture

Software Engineering

IoT en edge computing zijn niet meer weg te denken. Van drones die realtime data over afgelegen gebieden doorsturen tot supersnelle banktransacties. Het is allemaal mogelijk dankzij IoT en de edge. En niet meer alleen voor IoT-developers, ook voor back- en frontend developers. In zijn blog legt architect Sven van Straalen uit hoe je, door deze technieken te combineren met server-side rendering, je eigen supersnelle IoT-app bouwt.

Welke nieuwe hobby heb jij ontdekt in coronatijd? Misschien heb je net als ik veel planten in huis gehaald. En niets is leuker dan om met gadgets en de allernieuwste technieken voor mijn nieuwe groene vrienden te zorgen. Met collega’s zocht ik uit hoe ik met edge computing, Azure IoT Hub, server-side rendering én Nuxt Nitro m’n planten met een app realtime kan monitoren. De gemiddelde front- of backend developer is misschien huiverig om met IoT-technieken aan de slag te gaan. Maar geloof me, je hoeft maar heel even uit je comfort zone te komen, en dan kun je zelf de tofste IoT-apps maken in de edge.

Lage latency, hoge betrouwbaarheid

Laat me eerst even een stapje terug doen. Want edge computing, wat is er zo tof aan? Zoals vaak komt het neer op performance. Bij alles wat je wilt automatiseren en wat realtime moet reageren, is de edge je beste vriend. De latency is verwaarloosbaar en ook als de internetverbinding even wegvalt, blijft het werken. De edge komt dankzij toegankelijke tooling ook steeds dichterbij. Wij gebruikten voor ons plantenexperiment Azure IoT Hub en Azure IoT Edge. Handige tools die razendsnel de data van tot wel duizend sensoren of apparaten queuen in de edge. Jij hoeft alleen nog maar de link met de appservice te leggen.

Serverless: snel en goedkoop

Oké, tot dusver is het niet echt nieuw. Maar dat wordt het wel als je de edge combineert met die oude bekende techniek: server-side rendering. Die maakt dat een app supersnel laadt. Om server-side rendering in de edge te gebruiken, zetten we Nuxt op de Azure appservice en zo heb je al een snelle app. Met het spiksplinternieuwe Nuxt Nitro – nog niet eens officieel uit – draai je vervolgens ook nog eens serverless in de Azure functions omgeving. Waarom werken met Nitro als het met alleen server-side rendering allemaal al snel werkt? Vooral omdat het leuk is om te experimenteren, maar ook omdat serverless werken goedkoper is. En we blijven tenslotte Nederlanders.

Nooit meer dode planten

In ons plantenexperiment combineerden we alle bovenstaande technieken, met hulp van een Arduino-controller en een simpele sensor in de potgrond – een FC-28, om precies te zijn. Die meet het waterniveau, de controller ontvang deze meetdata, stuurt die door naar de IoT Hub en die queuet de data. Jij stuurt de gewenste data met jouw codering door naar de appservice. Met server-side rendering en Nuxt Nitro laat je de frontend soepel lopen en voilà: een app die realtime, supersnel en betrouwbaar het waterlevel van je plant weergeeft.

Wat ik hier vooral mee wil laten zien, is hoe bereikbaar IoT is. Toegegeven, het is even slikken voor de meeste developers om te werken met een micro-controller zoals die van Arduino. De hoeveelheid controle die je hebt, is even wennen. Maar maak je de switch en krijg je grip op die afwijkende runtime-omgeving, dan wordt het echt leuk.

Een kijkje in de toekomst

Overigens is dit vooral een geinig experiment met coole technieken. Maar zoals ik al eerder aangaf: het is ook een voorbode van de toekomst. Steeds meer van onze klanten zullen geïnteresseerd raken in serverless werken. Waarom? Precies omdat de combinatie van de edge en server-side rendering sneller, goedkoper en betrouwbaarder is dan in de cloud werken. Zeker als het om grote hoeveelheden data gaat. Ik zie de toepassingen al voor me: supersnelle facial recognition software en nog betrouwbaardere assemblagelijnen. Toch mooi dat een experiment met je planten weer een klein stapje naar de toekomst is.

Over Sven en Melanie

Sven van Straalen is managing consultant en software architect bij Capgemini, maar duikt ook graag zelf diep in code. Zeker als hij daar gave, nieuwe toepassingen mee kan bedenken. Met collega’s organiseert hij regelmatig speciale ‘Coding Nights’ voor developers binnen Cap. Tijdens een van die nachten verlegden zij hun grenzen met het plantenexperiment.

Melanie de Leeuw is frontend developer bij Capgemini die graag het onbekende verkend. Nog maar drie jaar geleden maakt zij de switch naar developer en inmiddels ademt zij code. Net als Sven is zij lid van Agents of C.O.D.E die de ‘Coding Nights’ voor developers organiseren.