IoT naprave imajo pogosto omejene sistemske vire in komunikacijske zmožnosti. Med razvojem aplikacij za te naprave je potrebno upoštevati te omejitve tudi ko se načrtuje API-je. Ti API-ji so pogosto načrtovani za spletne vmesnike, v katerih so prioritete zelo drugačne. Zanašajo se lahko na povpraševanje (polling), možnost večih zahtevkov in podobno, kar jih naredi precej neučinkovite. Za IoT aplikacije se potrebuje bolj specializirane in učinkovite API-je. Med drugim tudi tiste, ki uporabljajo posebne tehnologije za zmanjševanje porabe električne energije in bolj učinkovite protokole čez celoten aplikacijski sklad.
LDAF je zasnovan tako, da aplikacije na nek način razdeli med odjemalcem in strežnikom (ali večimi strežniki), ter ju poveže z zelo optimizirano podatkovno povezavo, ki uporablja učinkovite protokole, ki so bili načrtovani za IoT, binarno kodiranje na osnovi sheme (schema-based encoding). Na ta način lahko funkcije, ki zahtevajo intenzivno obdelavo ali pa pridobivajo podatke iz neoptimiziranih virov, prestavimo na strežnik in samo rezultate prenesemo do preostale aplikacije. S tako arhitekturo lahko s pomočjo LDAF izvedemo posebne aplikativno usmerjene optimizacije. To ima lahko še bolj občuten vpliv, če je odjemalska naprava zelo omejena, kar se tiče komunikacije ali sistemskih virov.
To je še bolj pomembno, če govorimo o decentraliziranih aplikacijah, ki uporabljajo Blockchain tehnologije. Te so zasnovane z popolnoma drugačnimi zahtevami, zaradi katerih jih je težko implementirati na IoT napravah. Z LDAF je ta process pomembno lažji.
Programsko ogrodje smo testirali v različnih primerih. Naredili smo API za računanje prstnega odtisa (hash) podatkov, da smo raziskali možnost prenašanja procesorsko zahtevnih funkcij na strežnik, DNS storitev in posredovalec za vremenske podatke, s katerim smo testirali potencial zmanjševanja količine prenesenih podatkov z selektivnim pošiljanjem. Naš glavni primer je bil Swether, ki je IoT naprava, ki uporablja Blockchain tehnologije. Ta je vedno zahteval hitro in stabilno podatkovno povezavo, ter precej zmogljivo strojno opremon in se je z uporabo LDAF-a se je podatkovni promet, poraba sistemskih virov in velikost kode občutno zmnjšala.
Dokazali smo, da LDAF deluje v skladu s pričakovanji. Z njim lahko ustvarimo specializirane API-je, s katerimi lahko zelo zmanjšamo porabo sistemskih virov in podatkovni promet, brez oviranja delovanja aplikacije.
Z razvojem »oblačne arhitekture«, kontejnerjev in zanesljivih ponudnikov oblačne infrastrukture se razvijalci vedno bolj pogosto odločajo za že razvito strojno opremo, storitve in platforme. S tem si zmanjšajo začetno ceno svoje aplikacije, povečajo skalabilnost in se lažje fokusirajo na razvoj namesto na infrastrukturo. Posebna različica LDAF bi lahko bila prilagojena takem delovanju. Postala bi lahko platforma za razvoj modernih distribuiranih aplikacij z vsemi možnostmi prilagoditve kot samostojna različica, a z zelo dobro skalabilnostjo in lahko uporabo.
|