Large systems are continuously stressed, both by their environment and by their users. Despite the stress, they have to keep performing! We have discovered a useful design pattern for this: to build them as a set of Weakly Interacting Feedback Structures (WIFS).
Feedback structures are a natural generalization of Erlang’s supervisor trees. A feedback structure consists of a directed graph of interacting feedback loops that together maintain one global system property.
In this talk, we give examples of biological and computing systems that use WIFS, such as the human respiratory system and the TCP family of network protocols.
We show the usefulness of the design pattern by applying it to the Scalaris key/value store from the SELFMAN project that supports data replication and transactions. Scalaris is a self-managing system that consists of five WIFS, for connectivity, routing, load balancing, replication, and transactions.
We conclude the talk by showing how we are using WIFS to tackle future challenges, such as systems that can live in hostile environments such as edge networks.
People who are interested in a principled approach to building large systems that have to do many things at the same time.
Peter Van Roy is a professor in the ICTEAM Institute of the Université catholique de Louvain. He coordinates the recently started LightKone Horizon 2020 project on general-purpose edge computing and was coordinator of the SELFMAN 6FP project on self management of large-scale distributed systems.