Continuous Live Information Monitor and Benchmarking: A JavaScript Library For Client Benchmarking and Code Modification
Authors
Bøgh, Morten ; Krogh, Markus
Term
2. term
Education
Publication year
2009
Pages
59
Abstract
This thesis addresses the challenge of building Rich Internet Applications (RIAs) for a wide range of clients, from powerful desktops to weaker devices such as older computers and mobile phones. The authors investigate whether developers can be assisted by a lightweight JavaScript library that continuously measures client and network performance and adapts existing JavaScript code in real time. They propose and implement the prototype Continuous Live Information Monitor and Benchmarking (CLIMB), which benchmarks the client continuously and can modify functions either by full rewrites or by inserting before/after hooks via filters inspired by AOP. Methodologically, the work comprises the design and implementation of the library and a series of prototype tests. Findings indicate that several of the stated hypotheses are supported, while others require further refinement of the library and validation in real-world applications. The thesis contributes CLIMB as a tool for building performance-dynamic web applications, provides insights into JavaScript co-existence, and points to the potential for later shifting computation between client and server. Overall, the work suggests that a library like CLIMB can be part of the solution to RIA challenges on weaker clients.
Dette speciale adresserer udfordringen ved at bygge Rich Internet Applications (RIA) til meget forskellige klienter, fra stærke desktopmaskiner til svagere enheder som ældre computere og mobiltelefoner. Forfatterne undersøger, om udviklere kan hjælpes af et letvægts JavaScript-bibliotek, der løbende måler klientens og netværkets ydeevne og tilpasser eksisterende JavaScript-kode i realtid. De foreslår og implementerer prototypen Continuous Live Information Monitor and Benchmarking (CLIMB), som kontinuerligt benchmarker klienten og kan ændre funktioner enten ved fuld omskrivning eller ved at indsætte før/efter-kroge via såkaldte filtre, inspireret af AOP-tankegangen. Metodisk omfatter arbejdet design og udvikling af biblioteket samt en række tests af prototypen. Resultaterne viser, at nogle af de opstillede hypoteser understøttes, mens andre kræver yderligere modning af biblioteket og afprøvning i virkelige applikationer. Specialet bidrager med CLIMB som et redskab til at bygge ydelsesdynamiske webapplikationer, indsigt i JavaScript-sameksistens og peger på potentialet for senere at kunne flytte beregninger mellem klient og server. Samlet set tyder arbejdet på, at et bibliotek som CLIMB kan være en del af løsningen på RIA-udfordringer for svage klienter.
[This apstract has been generated with the help of AI directly from the project full text]
