کد مقاله | کد نشریه | سال انتشار | مقاله انگلیسی | نسخه تمام متن |
---|---|---|---|---|
434312 | 1441700 | 2013 | 21 صفحه PDF | دانلود رایگان |
Ajax allows JavaScript programmers to create interactive, collaborative, and user-centered Web applications, known as Web 2.0 Applications. These Web applications behave as distributed systems because processors are user machines that are used to send and receive messages between one another. Unsurprisingly, these applications have to address the same causality issues present in distributed systems like the need (a) to control the causality between messages sent and responses received and (b) to react to distributed causal relations. JavaScript programmers overcome these issues using rudimentary and alternative techniques that largely ignore the distributed computing theory. In addition, these techniques are not very flexible and need to intrusively modify these Web applications. In this paper, we study how causality issues affect these applications and present WeCa, a practical library that allows for modular and flexible control over these causality issues in Web applications. In contrast to current proposals, WeCa is based on (stateful) aspects, message ordering strategies, and vector clocks. We illustrate WeCa in action with several practical examples from the realm of Web applications. In addition, we evaluate our proposal with a third-party application and its performance.
► We discuss distributed causality issues in existing Web applications.
► We propose a JavaScript library to address these issues modularly and flexibly.
► The library is based on (stateful) aspects, vector clocks, and ordering strategies.
► We use this library in running Web applications.
► The library is practical and already usable.
Journal: Science of Computer Programming - Volume 78, Issue 9, 1 September 2013, Pages 1538–1558