4
This section provides a brief overview of the system. Without going
5
too much into detail, it outlines the most important aspects of the
11
Whether services are stacked, internal or external, there are certain
12
characteristics that should apply:
14
1. Services are simple to configure;
15
2. Services can be moved to any machine;
16
3. Services can be scaled both up or down;
17
4. Services can persist data in an external location;
18
5. Services can co-exist on the same machine;
19
6. Similar services are interchangeable;
21
The implementation of those characteristics are the responsibility of
22
the formula that manages the service.
27
Rather than focusing on the configuration of the individual service,
28
:term:`Ensemble` focuses on making services operate together. In the
29
general case, connecting two services simply requires pointing service
32
If we don't care about the details of this :term:`service link`, the
33
system will decide a sensible implementation (e.g. TCP/IP on some port
34
with a suitable means of authentication). This is possible in
35
particular because of the virtualization technology which provides a
36
clean space for services to operate in. Risk of error is reduced and
37
security aspects can be addressed in a general way.
39
By defining your system logically in terms of services and the links
40
between them, other components can attach themselves and add
41
value. For instance, we can ask the system to monitor all service