Skip to main content

Infrastructure prerequisites

Before proceeding with the setup, ensure that the following components have been set up:
  • Redis
  • Kafka

Configuration

Configuring Kafka

Set the following Kafka-related configurations using environment variables:

OAuth authentication (when using SASL_PLAINTEXT)

When using the kafka-auth profile, the security protocol will automatically be set to SASL_PLAINTEXT and the SASL mechanism will be set to OAUTHBEARER.

Topic naming configuration

Group IDs

The configuration parameters “KAFKA_CONSUMER_GROUPID_*” are used to set the consumer group name for Kafka consumers that consume messages from topics. Consumer groups in Kafka allow for parallel message processing by distributing the workload among multiple consumer instances. By configuring the consumer group ID, you can specify the logical grouping of consumers that work together to process messages from the same topic, enabling scalable and fault-tolerant message consumption in your Kafka application.

Threads

The configuration parameters “KAFKA_CONSUMER_THREADS_*” are utilized to specify the number of threads assigned to Kafka consumers for processing messages from topics. These parameters allow you to fine-tune the concurrency and parallelism of your Kafka consumer application, enabling efficient and scalable message consumption from Kafka topics.

Events Gateway pattern

Configuring authorization & access roles

Set the following environment variables to connect to the identity management platform:

Redis configuration

FlowX Events Gateway uses Redis for real-time message distribution. The process engine sends messages to the events-gateway, which is responsible for sending them to Redis. Events Gateway supports all Redis deployment modes (Standalone, Sentinel, and Cluster). For detailed Redis configuration including all deployment modes and parameters, see the Redis Configuration guide.

Quick reference

Common Redis configuration parameters:
For complete Redis configuration details including Sentinel mode, Cluster mode, SSL/TLS setup, and troubleshooting, refer to the Redis Configuration guide.

Events

This configuration helps manage how event data is stored and accessed in Redis.

SSE cleanup configuration

New in v5.5.0
Configure how Server-Sent Events (SSE) connections are cleaned up:

Configuring logging

The following environment variables control log levels:

Ingress configuration

The Events Gateway service uses a specialized ingress configuration for Server-Sent Events (SSE). For complete setup instructions, see the Ingress Configuration Guide. Service-specific values for Events Gateway:
  • Ingress name: events-gateway-admin
  • Service path: /api/events(/|$)(.*)(/|$)(.*)
  • Service name: events-gateway
  • Rewrite target: /api/events/$2
  • Fx-Workspace-Id: Not required (SSE exception)
Events Gateway does not require the Fx-Workspace-Id header because it handles real-time SSE connections with different security requirements. See the Events Gateway exception for details.

Complete Ingress Configuration

View the Events Gateway-specific ingress pattern in the centralized guide.

Troubleshooting

Common issues

Symptoms: Clients lose real-time updates intermittently, SSE connections close after a timeout period.Solutions:
  1. Check your ingress timeout settings — SSE connections require longer timeouts than standard HTTP requests. Set proxy-read-timeout and proxy-send-timeout to at least 3600 seconds
  2. Verify keep-alive configuration on your load balancer and ingress controller
  3. Review the EVENTS_SSE_CLEANUP_MAXAGEMINS setting — ensure it is not set too low for your use case
  4. Check for network proxies or firewalls that may terminate long-lived connections
Symptoms: Process updates do not appear in the Designer or end-user interface, despite successful process execution.Solutions:
  1. Verify Kafka consumer configuration — check that the consumer group IDs match expected values
  2. Confirm that the KAFKA_TOPIC_EVENTSGATEWAY_PATTERN matches the topics being published to by the process engine
  3. Check Kafka consumer lag using your monitoring tools to identify backpressure issues
  4. Ensure the events-gateway service has network access to Kafka brokers
Symptoms: Noticeable delay between process execution and UI updates.Solutions:
  1. Check the Redis connection — verify SPRING_DATA_REDIS_HOST and SPRING_DATA_REDIS_PORT are correct and the Redis instance is responsive
  2. Review EVENTS_REDIS_FREQUENCYMILLIS — lower values reduce latency but increase Redis load
  3. Check Kafka partition configuration — ensure sufficient partitions for your consumer thread count
  4. Monitor Kafka consumer thread counts (KAFKA_CONSUMER_THREADS_*) and increase if threads are saturated
Symptoms: Browser console shows WebSocket or SSE connection errors, CORS-related error messages.Solutions:
  1. Verify CORS settings in your ingress configuration allow the Designer and application domains
  2. Ensure the ingress controller supports WebSocket upgrades and SSE connections
  3. Check that the ingress path pattern /api/events(/|$)(.*)(/|$)(.*) is correctly configured
  4. Confirm that the events-gateway service is reachable from the ingress controller

Ingress Configuration

Configure routing, CORS, and SSE-specific ingress settings

Redis Configuration

Complete Redis setup including Sentinel and Cluster modes

FlowX Engine Setup

Configure the process engine that publishes events to the gateway
Last modified on July 13, 2026