Generator

The source of entities. Output only.

How it works#

The Generator is where traffic enters your model. It creates entities one after another and pushes each into the component it is connected to. Use it for incoming HTTP requests, arriving customers, sensor readings, messages landing on a topic — any stream of work your system does not control.

Arrivals are random rather than evenly spaced. Each gap is drawn from an exponential distribution, so load naturally clusters into bursts and lulls around the average you configure. This matters: a system sized for the average arrival rate and fed perfectly even traffic looks comfortable, while the same system fed realistic bursty traffic queues up. The generator schedules the next arrival as soon as one is released, so its pace never depends on how quickly the rest of the model keeps up.

If the downstream component cannot take an entity right away, the generator waits rather than discarding it immediately. Only when the wait runs out is the entity rejected — which is precisely the signal that the model cannot absorb the load being offered to it.

A generator must have an outgoing connection; the simulation will not start while one is left dangling. With several outgoing connections, entities are distributed round-robin across them.

Settings#

Arrival Rateentities per second — default 3
The mean rate λ at which entities are created. Times between arrivals are drawn from an exponential distribution with mean 1/λ, which makes the arrival process Poisson — the standard assumption for independent, uncoordinated traffic.
Wait Timeoutseconds — default 1
How long a freshly created entity waits for the downstream component to accept it before it is rejected and leaves the model as dropped.

Both can be changed while the simulation runs, so you can raise the arrival rate and watch queues and rejections respond without restarting.

Statistics#

Entity rate — accepted and rejected entities per second, plotted together over time. Accepted is the traffic that actually made it into the model; rejected is what the model turned away. A rejected line lifting off zero is the earliest sign that the system downstream is undersized for the offered load, and it usually appears well before anything else looks alarming.