This paper presents a framework and runtime system, Amino, for developing and executing distributed applications in highly dynamic computing environment consisting of cloud resources, edge nodes and/or devices such as...
详细信息
ISBN:
(纸本)9781538694459
This paper presents a framework and runtime system, Amino, for developing and executing distributed applications in highly dynamic computing environment consisting of cloud resources, edge nodes and/or devices such as phones and smart cameras. This work is based on Sapphire [1]- a general-purpose distributed programming platform. In Sapphire, application objects (called Sapphire Objects) run inside kernel servers (KS), and Kernel server instance runs on every device or cloud node. Between Kernel Server and an application object is a layer called Deployment Manager (DM). Inbound and outbound communications to/from Sapphire objects will be intercepted and processed by deployment managers. Each DM provides one specific distributed system capabilities, e.g. caching, resource leasing, replication, data partitioning etc. Developers selectively choose DMs to manage Sapphire objects. As part of this work (Amino), we re-implemented and extended Sapphire platform to support Sapphire objects written in multiple languages and to support attaching multiple DMs to a Sapphire object for increased distribution capabilities. Finally, in the work, we introduced a code offloading design for dynamically moving application objects between devices and cloud servers at runtime to optimize a user specified objective, e.g. to reduce latency or to save energy consumption.
暂无评论