Nussknacker was created with stream processing in mind. However, it's also suitable for other use cases - e.g. requiring RPC-style request-response communication or batch processing (available in the future).
Scenario describes a pipeline through which events flow. If you are familiar with stream processing engines, such as Flink or Google Dataflow, this is the way to think about it.
Scenario describes the logic of processing a single request, returning a response. Currently, it's a HTTP request, but the same mode can be applied with e.g. gRPC etc. In Request-Response mode, the Scenario is stateless, there is no connection between handling different requests, therefore no Components similar to aggregates are available.
It is important to understand how the response is prepared in this mode - especially if splits or filters are used in the Scenario. One can think about processing a single request as processing of a stateless streaming Scenario with exactly one event (the request). When processing is done, the data that reached the Sink part is returned as a response. If more than one response is generated (e.g. after a split without filtering), currently only the first one is returned, while if no response is generated (e.g. after filtering) then an error is returned (in the future those behaviours may change).
Processing modes and engines
For Request-Response only Lite engine is available.