-
Notifications
You must be signed in to change notification settings - Fork 2
ArchitectureDescription
LWagner edited this page May 9, 2022
·
3 revisions
MiSim architecture descriptions consist out of a list of microservice descriptions and and an optional definition of default Network latency.
{
"network_latency": <Distribution Experssion>,
"microservices": [
List<Microservice Description>
]
}
To model distirbutions MiSim supports a simple distribution expression. It shapes a normal distirbutions with a mean and a standard deviation. Optionally, the left and right deviation can be specified seperately.
Type | Formula | Example |
---|---|---|
Constant | <const> |
"42" |
Normal dDistribution | <mean>+-<std> |
"42+-3" |
Skewed Distribution | <mean>+<leftDeviation>-<rightDeviation> |
"42+1-3" |
Property | Description |
---|---|
name | The name of the microservice |
instances | The number of starting instances of the microservice |
capacity | Capacity of each instance |
loadbalancer_strategy | The load balancing strategies to use.* |
patterns | List of instance owned pattern descriptions that should be used.* |
s_patterns | List of service owned pattern descriptions that should be used.* |
operations | List of operation descriptions |
* See Supported Resilience Mechanisms.
{
"name": "MyMicroservice",
"instances": 1,
"capacity": 1000,
"loadbalancer_strategy": "round_robin",
"patterns": [
List<Pattern Description>
],
"s_patterns": [
List<Pattern Description>
],
"operations": [
List<Operation Description>
]
}
Property | Description |
---|---|
name | The name of the operation. |
demand | The computational demand of the operation. |
dependencies | List of Dependencie descriptions. |
{
"name": "MyOperation",
"demand": 1000,
"dependencies": [
List<Dependency Description>
]
}
Property | Description |
---|---|
service | Target service name |
operation | Target operation name |
proability | Probability of the dependency to be needed. |
custom_delay | Custom latency to be used. Overrides default network latency |
Service and operation name can also be combined as fully qualifed name in the operation property, e.g. "service.operation".
{
"service": "MyService",
"operation": "MyOperation",
"probability": 0.5,
"custom_delay": <Distribution Expression>
}