Flow Settings
Every flow has settings that can be configured via the settings tab.
The following settings are available:
- Name
- Flow component
- Transport
- Components Timeout
- Trace Configuration
- Environment Variables
Name
The flow name can be changed after creation, but the name has to be unique. Saving the flow is not possible when the name is not unique.
Flow component
This setting transforms the flow to a flow component. For more information of Flow components you can read this guide.
Transport
The transport mechanism used between flow steps (components). Default
is the best setting in most cases.
Transport | Queue | Explanation | Usage |
---|---|---|---|
Default | No | No transport mechanism is used. Components are called directly after each other. | Most cases |
Synchronous | No | When you configure your flow to be synchronous, the output of the last component in your flow will be used as a response to the first component. | For synchronous (request/response) interactions with strict order of messages. |
Asynchronous | Yes | When you configure your flow to be asynchronous, messages are stored an in-memory blocking queue between components. | For asynchronous (fire-and-forget) interactions. Especially to increase performance when using steps with high load (for example enrichment) |
Queues | Yes | All messages will pass through a queuing mechanism. This means that the messages are stored on a broker outside of the flow until the next component has received and acknowledged it. | For synchronous (request/response) or asynchronous (fire-and-forget) interactions with large messages and guaranteed delivery. Note this mechanism can be slower to process messages in a flow. |
Components timeout
This settings only works when the Transport flow is Queues. This settings control the timeout between communication of components. When a component doesn't respond before the timeout has been reached, the exchange will be passed to the error route. The default timeout is 20 seconds.
Trace Configuration
By turning Trace Configuration on, all exchanges between components will be logged. These logs can be viewed in the Flow Manager. The logs will only be stored during the set period, after that it will be deleted.
Environment variables
To work with specific variables in the Test and Production environments you can define some environment variables. These can be used for many purposes, for example: usernames, passwords, URL's,... Environment variables can be used in components by using the following notation:
#{name}
When the flow is installed these variables will be replaced with their actual values.
Encryption
Environment variables are frequently used to store passwords and other sensitive information. Thats why we decided to encrypt all environment variables before they are stored in the database, they will never be stored as plain text. They only get decrypted to show them in the flow settings and when a flow is installed.
Meta data
Every flow also has some meta data defined in the environment variables. These can be used for many purposes like generating detailed error messages. These variables are always at the top of the table and have a gray background color. They can't be removed or edited.