The Liquid Web Worker API for Horizontal Offloading of Stateless Computations
Keywords:
Web Workers, Edge Computing, Liquid Software, Horizontal OffloadingAbstract
As most users access the Web from multiple devices with different characteristics, ranging from powerful desktops or laptops to tablets, mobile phones or watches and cars, liquidWeb applications seamlessly flow across multiple Web-enabled devices and adapt their distributed user interface to the set of devices simultaneously accessing the application. In this paper we focus on the business logic layer of rich Web applications and explore the opportunity to reduce the execution time of CPU-intensive tasks or limit their energy consumption by offloading them among nearby devices running the same liquid Web application. We extend the standard HTML5 WebWorker API with the concept of liquid WebWorkers, so that developers can transparently offload parallel execution of stateless tasks by managing the necessary device selection and direct peer-to-peer data transfer. By introducing the liquid WebWorkerAPI into our Liquid.js framework, we present how to create a pool of devices sharing their CPU processing capabilities according to different policies.
Downloads
References
D. P. Anderson and G. Fedak. The Computational and Storage
Potential of Volunteer Computing. In Cluster Computing and the
Grid. CCGRID 06, volume 1, pages 73–80. IEEE, 2006.
L. Atzori, A. Iera, and G. Morabito. The Internet of Things: A
survey. In Computer Networks, volume 54, pages 2787–2805,
Elsevier, 2010.
F. Bonomi, R. Milito, J. Zhu, and S.Addepalli. Fog Computing and
Its Role in the Internet of Things. In Proc. of the MCC workshop
on Mobile cloud computing. MCC’12, pages 13–16. ACM, 2012.
M. Bynens and J. Dalton. Benchmark.js v2.1.0. https://bench
markjs. com/, 2016
S. Clinch. Smartphones and Pervasive Public Displays. IEEE
Pervasive Computing, volume 12(1), pages 92–95, IEEE, 2013.
D. J. Cook and S. K. Das. How Smart are Our Environments?
An Updated Look at the State of the Art. Pervasive and mobile
computing, volume 3(2), pages 53–73, Elsevier, 2007.
M. S. Corson, R. Laroia, J. Li,V. Park, T. Richardson, and G. Tsirtsis.
Toward Proximity-Aware Internetworking. IEEE Wireless
Communications, volume 17(6), pages 26–33, IEEE, 2010.
R. Cushing, G. H. H. Putra, S. Koulouzis, A. Belloum, M. Bubak,
and C. De Laat. Distributed Computing on an Ensemble of
Browsers. IEEE Internet Computing, volume 17(5), pages 54–61,
IEEE, 2013.
H. T. Dinh, C. Lee, D. Niyato, and P. Wang. A survey of mobile
cloud computing: architecture, applications, and approaches.
Wireless Communications and Mobile Computing, volume 13(18),
pages 1587–1611,Wiley Online Library, 2011.
G. H. Forman and J. Zahorjan. The Challenges of Mobile
Computing. Computer, volume 27(4), pages 38–47, IEEE, 1994.
A. Gallidabino and C. Pautasso. Deploying Stateful web Components
on Multiple Devices with Liquid.js for Polymer. In Proc. of
Component-Based Software Engineering. CBSE’16, pages 85–90.
IEEE, 2016.
A. Gallidabino and C. Pautasso. Maturity Model for Liquid
Web Architectures. In Proc. of International Conference on Web
Engineering. ICWE’17, volume 10360, pages 206–224, Springer,
A. Gallidabino and C. Pautasso. Decentralized Computation
Offloading on the Edge with Liquid WebWorkers. In Proc.
of International Conference On Web Engineering. ICWE’18),
volume 10845, pages 145–161, Springer, 2018.
A. Gallidabino and C. Pautasso. The Liquid User Experience
API. In Proc. of the International Conference on the World Wide
Web. WWW’18, pages 767–774, International World Wide Web
Conferences, 2018.
A. Gallidabino, C. Pautasso, T. Mikkonen, K. Systa, J.-P. Voutilainen,
and A. Taivalsaari. Architecting Liquid Software. In
Journal of Web Engineering, volume 16(5&6), pages 433–470,
Rinton Press, 2017.
Google. The new multi-screen world: Understanding crossplatform
consumer behavior. http://services.google.com/fh/files/
misc/multiscreenworld final.pdf, 2012.
Google. The connected consumer. http://www.google.com.sg/
publicdata/explore?ds=dg8d1eetcqsb1 , 2017.
D. Guinard, V. Trifa, F. Mattern, and E. Wilde. From the Internet
of Things to the Web of Things: Resource-oriented Architecture
and Best Practices. In Architecting the Internet of Things, pages
–129. Springer, 2011.
J. Hartman, U. Manber, L. Peterson, and T. Proebsting. Liquid
Software: A New Paradigm for Networked Systems. Technical
Report 96–11, University of Arizona, 1996.
M. Hirsch, J. M. Rodr´ıguez, C. Mateos, and A. Zunino. A Two-
Phase Energy-Aware Scheduling Approach for CPU-Intensive
Jobs in Mobile Grids. In Journal of Grid Computing, volume
(1), pages 55–80, Springer, 2017.
M. Hirsch, J. M. Rodriguez, A. Zunino, and C. Mateos. Battery-
Aware Centralized Schedulers for CPU-Bound Jobs in Mobile
Grids. In Pervasive and Mobile Computing, volume 29, pages
–94, Elsevier, 2016.
K. Huppler. The Art of Building a Good Benchmark. In Proc. of
Technology Conference on Performance Evaluation and Benchmarking.
TPCTC’09, pages 18–30. Springer, 2009.
W.-J. Ke and S.-D. Wang. Reliability Evaluation for Distributed
Computing Networks with Imperfect Nodes. In IEEE Transactions
on Reliability, volume 46(3), pages 342–349, IEEE,
C. P. Kruger and G. P. Hancke. Benchmarking Internet of Things
Devices. In Proc. of International Conference on Industrial
Informatics. INDIN’14, pages 611–616, IEEE, 2014.
K. Kumar, J. Liu, Y.-H. Lu, and B. Bhargava. A Survey of
Computation Offloading for Mobile Systems. In Mobile Networks
and Applications, volume 18(1), pages 129–140, Springer, 2013.
S. W. Loke, K. Napier, A. Alali, N. Fernando, and W. Rahayu.
Mobile Computations with Surrounding Devices: Proximity Sensing
and MultiLayered Work Stealing. In ACM Transactions on
Embedded Computing Systems (TECS), volume 14(2), article 22,
ACM, 2015.
T. H. Luan, L. Gao, Z. Li, Y. Xiang, G. Wei, and L. Sun. Fog
Computing: Focusing on Mobile Users at the Edge. In Networking
and Internet Architecture, arXiv preprint arXiv:1502.01815, 2015.
P. Nicolaescu, K. Jahns, M. Derntl, and R. Klamma. Yjs:AFramework
for Near Real-Time P2P Shared Editing on Arbitrary Data
Types. In Proc. of International Conference on Web Engineering.
ICWE’15, pages 675–678. Springer, 2015.
S. Okamoto and M. Kohana. Load Distribution by Using Web
Workers for a Real-TimeWeb Application. In International Journal
of Web Information Systems, volume 7(4), pages 381–395,
Emerald Publishing, 2011.
E. Pitoura and B. Bhargava. Maintaining Consistency of Data
in Mobile Distributed Environments. In Proc. of Distributed
Computing Systems, pages 404–413. IEEE, 1995.
S. Poslad. Ubiquitous Computing: Smart Devices, Environments
and Interactions. JohnWiley & Sons, 2011.
M. Satyanarayanan. The Emergence of Edge Computing. In
Computer, volume 50(1), pages 30–39, 2017.
M. Satyanarayanan. Pervasive Computing:Vision and Challenges.
In IEEE Personal communications, volume 8(4), pages 10–17,
IEEE, 2001.
M. Satyanarayanan, J. J. Kistler, L. B. Mummert, M. R. Ebling,
P. Kumar, and Q. Lu. Experience with Disconnected Operation in
a Mobile Computing Environment. In Mobile Computing, pages
–570. Springer, 1993.
B. Schilit, N. Adams, and R. Want. Context-aware computing
applications. In Mobile Computing Systems and Applications,
Proceedings., Workshop on, pages 85–90. IEEE, 1994.
W. Shi and S. Dustdar. The Promise of Edge Computing. In
Computer, volume 49(5), pages 78–81, IEEE, 2016.
A. Taivalsaari and T. Mikkonen.ARoadmap to the Programmable
World: Software Challenges in the IoT Era. In IEEE Software,
volume 34(1), pages 72–80, IEEE, 2017.
A. Taivalsaari, T. Mikkonen, and K. Systa. Liquid Software Manifesto:
The Era of Multiple Device Ownership and Its Implications
for Software Architecture. In Proc of Computer Software and
Applications Conference. COMPSAC’14, pages 338–343, IEEE,
V. Triglianos. ASQ: Active Learning with Interactive Web Presentations
and Classroom Analytics. Phd Thesis, USI, Lugano,
Switzerland, 2018.
R. Upathilake, Y. Li and A. Matrawy. A Classification of Web
Browser FingerprintingTechniques. In Proc. of International Conference
on New Technologies, Mobility and Security. NTMS’15,
pages 1–5, IEEE, 2015.
E.Welbourne, L. Battle, G. Cole, K. Gould, K. Rector, S. Raymer,
M. Balazinska, and G. Borriello. Building the Internet of Things
Using RFID: the RFID Ecosystem Experience. In IEEE Internet
computing, volume 13(3), pages 48–55, IEEE, 2009.
A. Whitmore, A. Agarwal, and L. Da Xu. The Internet of Things –
ASurvey of Topics and Trends. In Information Systems Frontiers,
volume 17(2), pages 261–274, Springer, 2015.
S. Xinogalos, K. E. Psannis, and A. Sifaleras. Recent Advances
Delivered by HTML 5 in Mobile Cloud Computing Applications:
A Survey. In Proc. of Balkan Conference in Informatics, pages
–204. ACM, 2012.
A. Zanella, N. Bui, A. Castellani, L. Vangelista, and M. Zorzi.
Internet of Things for Smart Cities. In IEEE Internet of Things
journal, volume 1(1), pages 22–32, IEEE 2014.