课题基金 / 基金详情

Programming Support for Fault-Tolerant Distributed Live Applications

Programming Support for Fault-Tolerant Distributed Live Applications
容错分布式实时应用程序的编程支持
批准号:
415626024
负责人:
Professorin Dr.-Ing. Mira Mezini
金额:
$0.0万
依托单位:
依托单位国家:
德国
项目类别:
Research Grants
财政年份:
2019
资助国家:
德国
项目状态:
已结题
起止时间:
2018-12-31 至 2021-12-31

项目摘要

项目成果

相似基金

相关文献

中文摘要
翻译
分散的分布式计算平台,包括互连的Web服务器、分散的云、移动设备和物联网设备,鼓励了分布式数据驱动和/或交互应用的出现,这些应用持续观察和关联传感器数据、日志记录活动、其他事件流、用户操作等,并相应地实时更新其状态。我们称这些应用为分布式实时应用。由于用户交互和事件/数据流的异步和反向控制,这类应用程序本质上是复杂的,这鼓励以某种形式的延续传递风格进行编程--这是一种容易出错的风格,会导致所谓的回调地狱。在计算分布在互连的不受单个单元控制的机器/设备上的情况下,这些问题被放大了。我们特别关注在这种情况下随处可见的断开连接和崩溃造成的复杂性(移动设备可能连接不良并在电池电量不足时关闭;云服务器在没有事先通知的情况下重新启动,故障的网络切换导致服务器之间的连接丢失)。我们的假设是,这种复杂性的很大一部分原因是现有的编程语言和框架为分布式应用程序提供了糟糕的抽象,这迫使开发人员对系统进行编程,并从回调/延续的角度对其进行推理。最初提出的用于实现交互式桌面应用的直接风格编程的反应式编程(RP)具有解决这种复杂性的潜力。然而,RP语言/框架缺乏对容错的适当支持。相比之下,参与者语言通常是分布式实时应用环境中选择的编程模型,具有较少的声明性消息传递抽象,而云语言和用于大数据处理的编程平台在设计时并未考虑到活跃性。该建议的目标是为容错的分布式实时应用程序开发一种编程模型和语言,将RP模型的声明性直接风格的好处带到这个复杂的领域,以便能够在出现故障的情况下对这种系统进行更高级别的(自动)推理。特别是,我们的目标是利用RP范例的独特功能,将Spark和Flink等框架在受控环境中提供的自动故障处理推广到部署在分散的分布式系统上的任意实时应用程序。此外,我们将扩展RP抽象以支持错误传播,使应用程序开发人员能够在自动处理不可能或没有意义的情况下显式处理错误。我们将对我们的语言进行正式建模,以证明它的特性,并在现有的反应式语言之上实现它。
英文摘要
Decentralized distributed computing platforms, comprising a mixture of interconnected web servers, decentralized Clouds, mobile and IoT devices, have encouraged the emergence of distributed data-driven and/or interactive applications, which continuously observe and correlate sensor data, logging activities, other event flows, user actions, etc., and in response update their state in real time. We call these applications distributed live applications. Such applications are inherently complex due to asynchrony and the inverted control of user interactions and event/data flow, which encourages programming in some form of continuation-passing style – an error-prone style leading to the so-called Callback Hell. The issues are amplified in a context where computations are distributed across interconnected machines/devices that are not under the control of a single unit. Our specific focus is on complexity due to disconnects and crashes that are ubiquitous in a such a setting (mobile devices may have poor connectivity and shut down when batteries run low; cloud servers are rebooted without prior notice, and a failed network switch results in lost connections between servers).Our hypothesis is that a good fraction of this complexity is due to poor abstractions offered by the existing programming languages and frameworks for distributed applications, which force developers to program the systems and to reason about them in terms of callbacks/continuations. Reactive programming (RP) originally proposed for enabling direct style programming of interactive desktop applications has the potential to address such complexity. However, RP languages/frameworks lack proper support for fault tolerance. In comparison, actor languages, which are often the programming model of choice in the context of distributed live applications feature less declarative message passing abstractions, while cloud languages and programming platforms for big-data processing are not designed with liveliness in mind. The goal of this proposal is to develop a programming model and language for fault-tolerant distributed live applications that brings the benefits of the declarative direct-style of the RP model to this complex domain to enable a higher-level of (automated) reasoning about such systems in the presence of faults. In particular, we aim to leverage unique features of the RP paradigm to generalize automated fault handling – that frameworks like Spark and Flink provide in an controlled environment – to arbitrary live applications deployed on decentralized distributed systems. Furthermore, we will extend RP abstractions with support for error propagation to enable application developers to explicitly handle faults, whenever automated handling is not possible or meaningful. We will formally model our language to prove it properties and we will implement it on top of an existing reactive language.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
国内基金
海外基金
两性离子载体(zwitterionic support)作为可溶性支载体在液相有机合成中的应用
  • 批准号:
    21002080
  • 项目类别:
    青年科学基金项目
  • 资助金额:
    19.0万元
  • 批准年份:
    2010
  • 负责人:
    霍聪德
  • 依托单位:
基于Support Vector Machines(SVMs)算法的智能型期权定价模型的研究
  • 批准号:
    70501008
  • 项目类别:
    青年科学基金项目
  • 资助金额:
    17.0万元
  • 批准年份:
    2005
  • 负责人:
    曹丽娟
  • 依托单位: