diff --git a/docs/modules/edge-native/pages/index.adoc b/docs/modules/edge-native/pages/index.adoc index 378bd93..3d280c1 100644 --- a/docs/modules/edge-native/pages/index.adoc +++ b/docs/modules/edge-native/pages/index.adoc @@ -46,7 +46,7 @@ From these constraints, it follows that Edge Native applications are built on a Much of the effort in creating Edge Native applications goes into the proper design of communication protocols between different apps as well as between instances of the same application on multiple devices. The flow of information needs to be shaped such that the aforementioned programming model can indeed allow the best possible decisions to be made with local knowledge, keeping in mind potential conflicts to be detected and remedied. -The resilience in Edge Native applications is achieved by a higher degree of redundancy, the same information is replicated on many devices to allow timely usage in the face of unreliable communication. This principle successfully works in all biological systems, down to the DNA. +The resilience in Edge Native applications can be achieved by a higher degree of redundancy, the same information is available on many devices to allow timely usage in the face of unreliable communication. This principle successfully works in all biological systems, down to the DNA. But note that redundancy increases complexity which in turn reduces resilience and availability. To take advantage of the benefits of redundancy, you have to ensure that: you achieve a net-positive improvement in the overall availability of your system. Your redundant components fail independently. Your system can reliably detect (un)healthy redundant components and can reliably scale out and scale-in redundant components. It is also often helpful to run the same inference algorithms multiple times, wherever they are needed, instead of relying on a single location and spreading the results; this mirrors the simultaneous observation and analysis of a traffic situation by all involved car drivers.