51,562 research outputs found

    Split and Migrate: Resource-Driven Placement and Discovery of Microservices at the Edge

    Get PDF
    Microservices architectures combine the use of fine-grained and independently-scalable services with lightweight communication protocols, such as REST calls over HTTP. Microservices bring flexibility to the development and deployment of application back-ends in the cloud. Applications such as collaborative editing tools require frequent interactions between the front-end running on users\u27 machines and a back-end formed of multiple microservices. User-perceived latencies depend on their connection to microservices, but also on the interaction patterns between these services and their databases. Placing services at the edge of the network, closer to the users, is necessary to reduce user-perceived latencies. It is however difficult to decide on the placement of complete stateful microservices at one specific core or edge location without trading between a latency reduction for some users and a latency increase for the others. We present how to dynamically deploy microservices on a combination of core and edge resources to systematically reduce user-perceived latencies. Our approach enables the split of stateful microservices, and the placement of the resulting splits on appropriate core and edge sites. Koala, a decentralized and resource-driven service discovery middleware, enables REST calls to reach and use the appropriate split, with only minimal changes to a legacy microservices application. Locality awareness using network coordinates further enables to automatically migrate services split and follow the location of the users. We confirm the effectiveness of our approach with a full prototype and an application to ShareLatex, a microservices-based collaborative editing application

    Using Augmented Reality as a Medium to Assist Teaching in Higher Education

    Get PDF
    In this paper we describe the use of a high-level augmented reality (AR) interface for the construction of collaborative educational applications that can be used in practice to enhance current teaching methods. A combination of multimedia information including spatial three-dimensional models, images, textual information, video, animations and sound, can be superimposed in a student-friendly manner into the learning environment. In several case studies different learning scenarios have been carefully designed based on human-computer interaction principles so that meaningful virtual information is presented in an interactive and compelling way. Collaboration between the participants is achieved through use of a tangible AR interface that uses marker cards as well as an immersive AR environment which is based on software user interfaces (UIs) and hardware devices. The interactive AR interface has been piloted in the classroom at two UK universities in departments of Informatics and Information Science

    An innovative collaborative high-performance platform for simulation

    Get PDF
    This paper presents an innovative collaborative visualization platform for the simulation-based design applications. Following the scope and the main objectives, the general architecture based on the internet standard technologies is explained. Based on a multi-domain approach, several demonstrators are involved crossing interests of industrial and academic communities. Related to the field of process engineering, we adapt and deploy a web-based architecture research application on the targeted platform

    Architectural Limitations in Multi-User Computer-Aided Engineering Applications

    Get PDF
    The engineering design process evolves products by a collaborative synthesis of specifications, personnel and organizations. Unfortunately, collaborative effectiveness is thwarted by existing single-user computer-aided applications like computer-aided design, computer-aided analysis, and others. These applications and associated file management systems assign editing rights to one technical person, e.g., a designer, analyst, or a process planner. In the absence of collaborative computer-aided engineering applications, we conducted a survey to establish that product collaboration is limited to interactive, either formal or ad-hoc design sessions, social communication tools, serial model sharing, terminal/screen sharing, and to conference call interactions. Current computer-aided (CAx) tools do not permit simultaneous model changes by a collaborative team editing the same model. Although over a decade of prior research has demonstrated multi-user feasibility for computer-aided applications, the architectural breadth of this research has apparently not yet compelled developers and end-users to develop and adopt new multi-user computer-aided applications devoted to product development. Why have collaborative engineering CAx tools not been commercialized for mainstream use? This paper uses several multi-user prototypes, including the first Computer-Aided Engineering multi-user prototype called CUBIT Connect, to expose additional architectural hurdles to implementing new multi-user collaborative paradigms. These challenges relate to variable algorithmic performance times, multi-threading and event driven client notification processes, distributed access level security, and model change management in design sessions

    Introducing Collaboration in Single-user Applications through the Centralized Control Architecture

    Get PDF
    In this paper we describe a novel Model-View­ Controller based architecture, Centralized Control, that intro­duces collaboration in single-users applications. The architecture is able to add collaboration with no need to modify the source code of the original single-user application, and providing also the capability to introduce group semantics into the new, collab­orative application that is obtained. The architecture is shown in practice, by introducing CollabXMind, a collaborative mind map tool, that is based on a well-known single-user tool, XMind
    • …
    corecore