首页 > 最新文献

First Workshop on Programming Models and Languages for Distributed Computing最新文献

英文 中文
Implicitly Distributing Pervasively Concurrent Programs: Extended abstract 隐式分布普遍并发程序:扩展抽象
Pub Date : 2016-07-17 DOI: 10.1145/2957319.2957370
John A. Thywissen, A. Peters, W. Cook
Distributed programs are often written as a collection of communicating modules. For example, to use Java RMI, programs are divided into objects which can be remotely referenced. Yet, in many cases, it would be desirable to write the program without the program structure being driven by distribution decisions. If distribution is decoupled from program structure, the programming language must allow communication throughout a program's structure, instead of at a few known points. This situation is simplified if the programming language provides a uniform programming model for local and remote values (location transparency). We present Distributed Orc, which offers location transparency, and distributes program operations automatically in cooperation with the execution environment. By eliminating any special semantics of remote values, Distributed Orc enables programmers to write cohesive distributed programs, rather than programs artificially divided at distribution boundaries. Distributed Orc is derived from the Orc language, a (centralized) concurrent orchestration language.
分布式程序通常被编写为通信模块的集合。例如,为了使用Java RMI,程序被划分为可以远程引用的对象。然而,在许多情况下,编写程序时不让程序结构受到分布决策的驱动是可取的。如果分布与程序结构解耦,编程语言必须允许在整个程序结构中进行通信,而不是在几个已知的点上进行通信。如果编程语言为本地和远程值提供统一的编程模型(位置透明性),这种情况将得到简化。我们提出了分布式Orc,它提供了位置透明性,并与执行环境协作自动分发程序操作。通过消除远程值的任何特殊语义,分布式Orc使程序员能够编写内聚的分布式程序,而不是在分布边界人为划分的程序。分布式Orc源自Orc语言,一种(集中式)并发编排语言。
{"title":"Implicitly Distributing Pervasively Concurrent Programs: Extended abstract","authors":"John A. Thywissen, A. Peters, W. Cook","doi":"10.1145/2957319.2957370","DOIUrl":"https://doi.org/10.1145/2957319.2957370","url":null,"abstract":"Distributed programs are often written as a collection of communicating modules. For example, to use Java RMI, programs are divided into objects which can be remotely referenced. Yet, in many cases, it would be desirable to write the program without the program structure being driven by distribution decisions. If distribution is decoupled from program structure, the programming language must allow communication throughout a program's structure, instead of at a few known points. This situation is simplified if the programming language provides a uniform programming model for local and remote values (location transparency). We present Distributed Orc, which offers location transparency, and distributes program operations automatically in cooperation with the execution environment. By eliminating any special semantics of remote values, Distributed Orc enables programmers to write cohesive distributed programs, rather than programs artificially divided at distribution boundaries. Distributed Orc is derived from the Orc language, a (centralized) concurrent orchestration language.","PeriodicalId":316230,"journal":{"name":"First Workshop on Programming Models and Languages for Distributed Computing","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129338522","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
Join Decompositions for Efficient Synchronization of CRDTs after a Network Partition: Work in progress report 网络分区后有效同步crdt的Join分解:工作进度报告
Pub Date : 2016-07-17 DOI: 10.1145/2957319.2957374
Vitor Enes, Carlos Baquero, Paulo Sérgio Almeida, Ali Shoker
State-based CRDTs allow updates on local replicas without remote synchronization. Once these updates are propagated, possible conflicts are resolved deterministically across all replicas. δ-CRDTs bring significant advantages in terms of the size of messages exchanged between replicas during normal operation. However, when a replica joins the system after a network partition, it needs to receive the updates it missed and propagate the ones performed locally. Current systems solve this by exchanging the full state bidirectionally or by storing additional metadata along the CRDT. We introduce the concept of join-decomposition for state-based CRDTs, a technique orthogonal and complementary to delta-mutation, and propose two synchronization methods that reduce the amount of information exchanged, with no need to modify current CRDT definitions.
基于状态的crdt允许在没有远程同步的情况下对本地副本进行更新。一旦传播了这些更新,就可以确定地解决所有副本之间可能的冲突。δ- crdt在正常操作期间在副本之间交换的消息大小方面具有显着优势。但是,当一个副本在网络分区之后加入系统时,它需要接收它错过的更新,并传播在本地执行的更新。当前的系统通过双向交换完整状态或在CRDT上存储额外的元数据来解决这个问题。针对基于状态的CRDT,我们引入了一种与delta-mutation正交互补的联合分解的概念,并提出了两种同步方法,在不修改当前CRDT定义的情况下减少了信息交换量。
{"title":"Join Decompositions for Efficient Synchronization of CRDTs after a Network Partition: Work in progress report","authors":"Vitor Enes, Carlos Baquero, Paulo Sérgio Almeida, Ali Shoker","doi":"10.1145/2957319.2957374","DOIUrl":"https://doi.org/10.1145/2957319.2957374","url":null,"abstract":"State-based CRDTs allow updates on local replicas without remote synchronization. Once these updates are propagated, possible conflicts are resolved deterministically across all replicas. δ-CRDTs bring significant advantages in terms of the size of messages exchanged between replicas during normal operation. However, when a replica joins the system after a network partition, it needs to receive the updates it missed and propagate the ones performed locally. Current systems solve this by exchanging the full state bidirectionally or by storing additional metadata along the CRDT. We introduce the concept of join-decomposition for state-based CRDTs, a technique orthogonal and complementary to delta-mutation, and propose two synchronization methods that reduce the amount of information exchanged, with no need to modify current CRDT definitions.","PeriodicalId":316230,"journal":{"name":"First Workshop on Programming Models and Languages for Distributed Computing","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127931649","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 5
Towards Aggregate Programming in Scala Scala中的聚合编程
Pub Date : 2016-07-17 DOI: 10.1145/2957319.2957372
Roberto Casadei, Mirko Viroli
Recent works in the context of large-scale adaptive systems, such as those for the Internet of Things (IoT) scenario, promote aggregate programming [3], a development approach for distributed systems in which one programs the aggregate of computational devices instead of individual ones. This makes the resulting behaviour highly insensitive to network size, density, and topology, and as such, intrinsically robust to failures and changes to working conditions (e.g., location of computational load, communication technology, and computational infrastructure). In this paper we are concerned with how this approach can impact mainstream software development, and hence outline a Scala-based support of aggregate programming, leveraging Scala advanced type system, DSL support, and actors mechanisms.
最近在大规模自适应系统背景下的工作,例如物联网(IoT)场景,促进了聚合编程[3],这是一种分布式系统的开发方法,其中一个程序是计算设备的集合而不是单个设备。这使得产生的行为对网络大小、密度和拓扑高度不敏感,因此,对故障和工作条件的变化(例如,计算负载的位置、通信技术和计算基础设施)具有内在的鲁棒性。在本文中,我们关注的是这种方法如何影响主流软件开发,并因此概述了基于Scala的聚合编程支持,利用Scala高级类型系统、DSL支持和参与者机制。
{"title":"Towards Aggregate Programming in Scala","authors":"Roberto Casadei, Mirko Viroli","doi":"10.1145/2957319.2957372","DOIUrl":"https://doi.org/10.1145/2957319.2957372","url":null,"abstract":"Recent works in the context of large-scale adaptive systems, such as those for the Internet of Things (IoT) scenario, promote aggregate programming [3], a development approach for distributed systems in which one programs the aggregate of computational devices instead of individual ones. This makes the resulting behaviour highly insensitive to network size, density, and topology, and as such, intrinsically robust to failures and changes to working conditions (e.g., location of computational load, communication technology, and computational infrastructure). In this paper we are concerned with how this approach can impact mainstream software development, and hence outline a Scala-based support of aggregate programming, leveraging Scala advanced type system, DSL support, and actors mechanisms.","PeriodicalId":316230,"journal":{"name":"First Workshop on Programming Models and Languages for Distributed Computing","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116651198","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 18
Data-centric Consistency Policies: A Programming Model for Distributed Applications with Tunable Consistency 以数据为中心的一致性策略:具有可调一致性的分布式应用程序编程模型
Pub Date : 2016-07-17 DOI: 10.1145/2957319.2957377
Nosheen Zaza, Nathaniel Nystrom
The consistency level of operations over replicated data is an important parameter in distributed applications. It impacts correctness, performance, and availability. It is now common to find single applications using many different consistency levels at the same time; however, current commercial frameworks do not provide high-level abstractions for specifying or reasoning about different consistency properties of an application. Research frameworks that do tend to require a substantial effort from developers to specify operation dependencies, orderings and invariants to be preserved. We propose an approach for specifying consistency properties based on the observation that correctness criteria and invariants are a property of data, not operations. Hence, it is reasonable to define the consistency properties required to enforce various data invariants on the data itself rather than on the operations. The result is a system that is simpler to describe and reason about. In this paper, we outline an abstract model of programming language constructs and a static checker for data-centric consistency control, and demonstrate this model through a simple prototype programming language implementation.
对复制数据的操作的一致性级别是分布式应用程序中的一个重要参数。它会影响正确性、性能和可用性。现在发现单个应用程序同时使用许多不同的一致性级别是很常见的;然而,当前的商业框架没有提供高级抽象来指定或推理应用程序的不同一致性属性。研究框架往往需要开发人员付出大量的努力来指定要保留的操作依赖关系、顺序和不变量。基于正确性标准和不变量是数据的属性,而不是操作的属性,我们提出了一种指定一致性属性的方法。因此,合理的做法是定义一致性属性,以便在数据本身而不是操作上强制执行各种数据不变性。其结果是一个更容易描述和推理的系统。在本文中,我们概述了一个抽象模型的编程语言结构和一个静态检查器的数据中心的一致性控制,并通过一个简单的原型编程语言实现演示了这个模型。
{"title":"Data-centric Consistency Policies: A Programming Model for Distributed Applications with Tunable Consistency","authors":"Nosheen Zaza, Nathaniel Nystrom","doi":"10.1145/2957319.2957377","DOIUrl":"https://doi.org/10.1145/2957319.2957377","url":null,"abstract":"The consistency level of operations over replicated data is an important parameter in distributed applications. It impacts correctness, performance, and availability. It is now common to find single applications using many different consistency levels at the same time; however, current commercial frameworks do not provide high-level abstractions for specifying or reasoning about different consistency properties of an application. Research frameworks that do tend to require a substantial effort from developers to specify operation dependencies, orderings and invariants to be preserved. We propose an approach for specifying consistency properties based on the observation that correctness criteria and invariants are a property of data, not operations. Hence, it is reasonable to define the consistency properties required to enforce various data invariants on the data itself rather than on the operations. The result is a system that is simpler to describe and reason about. In this paper, we outline an abstract model of programming language constructs and a static checker for data-centric consistency control, and demonstrate this model through a simple prototype programming language implementation.","PeriodicalId":316230,"journal":{"name":"First Workshop on Programming Models and Languages for Distributed Computing","volume":"2013 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133033201","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 10
On the Potential of Event Sourcing for Retroactive Actor-based Programming 事件溯源在追溯式基于参与者编程中的潜力
Pub Date : 2016-07-17 DOI: 10.1145/2957319.2957378
Benjamin Erb, Gerhard Habiger, F. Hauck
The actor model is an established programming model for distributed applications. Combining event sourcing with the actor model allows the reconstruction of previous states of an actor. When this event sourcing approach for actors is enhanced with additional causality information, novel types of actor-based, retroactive computations are possible. A globally consistent state of all actors can be reconstructed retrospectively. Even retroactive changes of actor behavior, state, or messaging are possible, with partial recomputations and projections of changes in the past. We believe that this approach may provide beneficial features to actor-based systems, including retroactive bugfixing of applications, decoupled asynchronous global state reconstruction for recovery, simulations, and exploration of distributed applications and algorithms.
参与者模型是为分布式应用程序建立的编程模型。将事件溯源与参与者模型相结合,可以重建参与者以前的状态。当使用额外的因果关系信息增强参与者的事件溯源方法时,基于参与者的新型追溯计算成为可能。所有参与者的全局一致状态可以回顾性地重建。甚至参与者行为、状态或消息传递的追溯性更改都是可能的,并且可以对过去的更改进行部分重新计算和预测。我们相信这种方法可以为基于角色的系统提供有益的特性,包括应用程序的追溯性错误修复,用于恢复的解耦异步全局状态重建,模拟以及对分布式应用程序和算法的探索。
{"title":"On the Potential of Event Sourcing for Retroactive Actor-based Programming","authors":"Benjamin Erb, Gerhard Habiger, F. Hauck","doi":"10.1145/2957319.2957378","DOIUrl":"https://doi.org/10.1145/2957319.2957378","url":null,"abstract":"The actor model is an established programming model for distributed applications. Combining event sourcing with the actor model allows the reconstruction of previous states of an actor. When this event sourcing approach for actors is enhanced with additional causality information, novel types of actor-based, retroactive computations are possible. A globally consistent state of all actors can be reconstructed retrospectively. Even retroactive changes of actor behavior, state, or messaging are possible, with partial recomputations and projections of changes in the past. We believe that this approach may provide beneficial features to actor-based systems, including retroactive bugfixing of applications, decoupled asynchronous global state reconstruction for recovery, simulations, and exploration of distributed applications and algorithms.","PeriodicalId":316230,"journal":{"name":"First Workshop on Programming Models and Languages for Distributed Computing","volume":"113 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124128112","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 9
Static Type Checking for the Kompics Component Model: Kola -- The Kompics Language Kompics组件模型的静态类型检查:Kola—Kompics语言
Pub Date : 2016-07-17 DOI: 10.1145/2957319.2957371
Lars Kroll, J. Dowling, Seif Haridi
Distributed systems are becoming an increasingly important part of systems and applications software and it is widely accepted that writing correct distributed systems is challenging. Message-passing concurrency models are the dominant programming paradigm and, even in statically typed languages, programming frameworks typically only have limited type checking support for messages, channels, and ports or mailboxes. In this paper, we present Kola, a language-level implementation of Kompics, a component model with message-passing concurrency. Kola comes with its own compiler and some special language constructs which extend Java's type system as necessary to enforce static type checking on messages, channels, and ports. We show that Kola improves the readability of Kompics code and removes opportunities to introduce bugs, at the cost of little compile time overhead and no runtime overhead.
分布式系统正在成为系统和应用软件中越来越重要的一部分,人们普遍认为编写正确的分布式系统是一项挑战。消息传递并发模型是主要的编程范例,即使在静态类型语言中,编程框架通常也只对消息、通道、端口或邮箱提供有限的类型检查支持。在本文中,我们提出了Kola,它是Kompics的一种语言级实现,是一种具有消息传递并发性的组件模型。Kola自带了自己的编译器和一些特殊的语言结构,这些语言结构扩展了Java的类型系统,以在消息、通道和端口上强制执行静态类型检查。我们展示了Kola提高了Kompics代码的可读性,并消除了引入bug的机会,代价是很少的编译时间开销和运行时开销。
{"title":"Static Type Checking for the Kompics Component Model: Kola -- The Kompics Language","authors":"Lars Kroll, J. Dowling, Seif Haridi","doi":"10.1145/2957319.2957371","DOIUrl":"https://doi.org/10.1145/2957319.2957371","url":null,"abstract":"Distributed systems are becoming an increasingly important part of systems and applications software and it is widely accepted that writing correct distributed systems is challenging. Message-passing concurrency models are the dominant programming paradigm and, even in statically typed languages, programming frameworks typically only have limited type checking support for messages, channels, and ports or mailboxes. In this paper, we present Kola, a language-level implementation of Kompics, a component model with message-passing concurrency. Kola comes with its own compiler and some special language constructs which extend Java's type system as necessary to enforce static type checking on messages, channels, and ports. We show that Kola improves the readability of Kompics code and removes opportunities to introduce bugs, at the cost of little compile time overhead and no runtime overhead.","PeriodicalId":316230,"journal":{"name":"First Workshop on Programming Models and Languages for Distributed Computing","volume":"84 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126268508","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Fractional Permissions for Race-Free Mutable References in a Dataflow Intermediate Language 数据流中间语言中无竞争的可变引用的分数权限
Pub Date : 2016-07-17 DOI: 10.1145/2957319.2957373
M. Cimini, Jeremy G. Siek
ParalleX is an execution model tailored to exascale computing. To this aim, it employs a global shared memory and supports multi-level parallelism. In systems that mix parallelism and mutable shared memory, the definition of a memory model becomes challenging. Following the advice of Adve and Boehm (2010), we balance efficiency and simplicity by going the route of statically enforcing data-race freedom (DRF), which makes sequential consistency efficient to implement on weak memory models. In this paper, we report on a type system that ensures DRF for the core of the dataflow intermediate language used within ParalleX. The type system adapts the notion of fractional permissions to the dataflow context and provides a novel treatment of mutable references, using a combination of affine variables and fractional sums. We give an overview of the type system and demonstrate its use in some examples.
parallelx是为百亿亿次计算量身定制的执行模型。为此,它采用全局共享内存并支持多级并行。在混合并行性和可变共享内存的系统中,内存模型的定义变得具有挑战性。遵循Adve和Boehm(2010)的建议,我们通过静态执行数据竞争自由(DRF)的路线来平衡效率和简单性,这使得顺序一致性在弱内存模型上有效地实现。在本文中,我们报告了一种类型系统,它可以确保在parallelx中使用的数据流中间语言的核心具有DRF。类型系统将分数权限的概念应用于数据流上下文,并使用仿射变量和分数和的组合,为可变引用提供了一种新的处理方法。我们概述了类型系统,并在一些示例中演示了它的用法。
{"title":"Fractional Permissions for Race-Free Mutable References in a Dataflow Intermediate Language","authors":"M. Cimini, Jeremy G. Siek","doi":"10.1145/2957319.2957373","DOIUrl":"https://doi.org/10.1145/2957319.2957373","url":null,"abstract":"ParalleX is an execution model tailored to exascale computing. To this aim, it employs a global shared memory and supports multi-level parallelism. In systems that mix parallelism and mutable shared memory, the definition of a memory model becomes challenging. Following the advice of Adve and Boehm (2010), we balance efficiency and simplicity by going the route of statically enforcing data-race freedom (DRF), which makes sequential consistency efficient to implement on weak memory models. In this paper, we report on a type system that ensures DRF for the core of the dataflow intermediate language used within ParalleX. The type system adapts the notion of fractional permissions to the dataflow context and provides a novel treatment of mutable references, using a combination of affine variables and fractional sums. We give an overview of the type system and demonstrate its use in some examples.","PeriodicalId":316230,"journal":{"name":"First Workshop on Programming Models and Languages for Distributed Computing","volume":"65 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125873845","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Integration Challenges of Pure Operation-based CRDTs in Redis Redis中纯基于操作的crdt的集成挑战
Pub Date : 2016-07-17 DOI: 10.1145/2957319.2957375
Georges Younes, Ali Shoker, Paulo Sérgio Almeida, Carlos Baquero
Pure operation-based (op-based) Conflict-free Replicated Data Types (CRDTs) are generic and very efficient as they allow for compact solutions in both sent messages and state size. Although the pure op-based model looks promising, it is still not fully understood in terms of practical implementation. In this paper, we explain the challenges faced in implementing pure op-based CRDTs in a real system: the well-known in-memory cache key-value store Redis. Our purpose of choosing Redis is to implement a multi-master replication feature, which the current system lacks. The experience demonstrates that pure op-based CRDTs can be implemented in existing systems with minor changes in the original API.
纯基于操作(op)的无冲突复制数据类型(crdt)是通用且非常高效的,因为它们允许在发送的消息和状态大小方面提供紧凑的解决方案。尽管纯基于op的模型看起来很有前途,但在实际实现方面仍然没有完全理解。在本文中,我们解释了在真实系统中实现纯基于操作的crdt所面临的挑战:众所周知的内存缓存键值存储Redis。我们选择Redis的目的是实现当前系统所缺乏的多主复制功能。经验表明,纯基于操作的crdt可以在现有系统中实现,只需对原始API进行少量更改。
{"title":"Integration Challenges of Pure Operation-based CRDTs in Redis","authors":"Georges Younes, Ali Shoker, Paulo Sérgio Almeida, Carlos Baquero","doi":"10.1145/2957319.2957375","DOIUrl":"https://doi.org/10.1145/2957319.2957375","url":null,"abstract":"Pure operation-based (op-based) Conflict-free Replicated Data Types (CRDTs) are generic and very efficient as they allow for compact solutions in both sent messages and state size. Although the pure op-based model looks promising, it is still not fully understood in terms of practical implementation. In this paper, we explain the challenges faced in implementing pure op-based CRDTs in a real system: the well-known in-memory cache key-value store Redis. Our purpose of choosing Redis is to implement a multi-master replication feature, which the current system lacks. The experience demonstrates that pure op-based CRDTs can be implemented in existing systems with minor changes in the original API.","PeriodicalId":316230,"journal":{"name":"First Workshop on Programming Models and Languages for Distributed Computing","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124478454","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 5
First Workshop on Programming Models and Languages for Distributed Computing 第一届分布式计算编程模型和语言研讨会
{"title":"First Workshop on Programming Models and Languages for Distributed Computing","authors":"","doi":"10.1145/2957319","DOIUrl":"https://doi.org/10.1145/2957319","url":null,"abstract":"","PeriodicalId":316230,"journal":{"name":"First Workshop on Programming Models and Languages for Distributed Computing","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123096979","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
期刊
First Workshop on Programming Models and Languages for Distributed Computing
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1