3 research outputs found
Dynamic contention management for distributed applications
PhD ThesisDistributed applications often make use of replicated state to afford a greater level of
availability and throughput. This is achieved by allowing individual processes to progress
without requiring prior synchronisation. This approach, termed optimistic replication,
results in divergent replicas that must be reconciled to achieve an overall consistent state.
Concurrent operations to shared objects in the replicas result in conflicting updates that
require reconciliatory action to rectify. This typically takes the form of compensatory
execution or simply undoing and rolling back client state.
When considering user interaction with the application, there exists relationships and
intent in the ordering and execution of these operations. The enactment of reconciliation
that determines one action as conflicted may have far reaching implications with regards to
the user’s original intent. In such scenarios, the compensatory action applied to a conflict
may require previous operations to also be undone or compensated such that the user’s
intent is maintained. Therefore, an ability to manage the contention to the shared data
across the distributed application to pre-emptively lower conflicts resulting from these
infringements is desirable. The aim is to not hinder throughput, achieved from the weaker
consistency model known as eventual consistency.
In this thesis, a model is presented for a contention management framework that schedules
access using the expected execution inherent in the application domain to best inform
the contention manager. A backoff scheme is employed to create an access schedule, preserving
user intent for applications that require this high level of maintenance for user
actions. By using such an approach, this results in a performance improvement seen
in the reduction of the overall number of conflicts, while also improving overall system
throughput. This thesis describes how the contention management scheme operates and,
through experimentation, the performance benefits received
Semantically Aware Contention Management for Distributed Applications
Part 1: Full Research PapersInternational audienceDistributed applications that allow replicated state to deviate in favour of increasing throughput still need to ensure such state achieves consistency at some point. This is achieved via compensating conflicting updates or undoing some updates to resolve conflicts. When causal relationships exist across updates that must be maintained then conflicts may result in previous updates also needing to be undone or compensated for. Therefore, an ability to manage contention across the distributed domain to preemptively lower conflicts as a result of causal infringements without hindering the throughput achieved from weaker consistency is desirable. In this paper we present such a system. We exploit the causality inherent in the application domain to improve overall system performance. We demonstrate the effectiveness of our approach with simulated benchmarked performance results