Skip to main content

Dedicated Instance

What is a Dedicated Instance

A dedicated instance is an isolated resource service provided by the platform to ensure stable and efficient execution of critical workflows. By assigning important workflows to a dedicated instance, you can avoid delays caused by other workflows in the platform.

A dedicated instance does not increase the execution speed of a workflow itself. Instead, it ensures that workflows running in the dedicated instance execute reliably without being affected by other workflows.

Key benefits of dedicated instances:

  • Isolated resources: Each dedicated instance is allocated independent compute resources, ensuring workflows run without interference from others.
  • Stable execution: Workflows in a dedicated instance use a separate Kafka topic, avoiding competition with messages in shared queues and ensuring consistent performance.
  • Workload isolation: Critical workflows are isolated from standard workloads, reducing the impact of congestion caused by other workflows.

How it works:

  • Trigger: When a workflow assigned to a dedicated instance is triggered, it enters its own Kafka topic.
  • Processing: A dedicated consumer service processes messages from this topic in real time and executes the workflow based on predefined logic.
  • Resource guarantee: Compute and storage resources used by the dedicated instance are exclusively allocated and not shared with other workloads.

Use cases:

  • High-priority workflows: Workflows that require fast response and timely execution
  • Complex workflows: Workflows with complex logic, high computational load, and high trigger frequency (placing them in a high-spec dedicated instance prevents them from blocking standard workflows in shared queues)

Deployment Architecture

As shown above, two additional nodes are added to the existing Kubernetes cluster as dedicated resources for dedicated instances. In this example, two dedicated instances, workflowcompute-C and workflowcompute-D, are created.

By configuring workflow C to use the dedicated instance workflowcompute-C, all executions of workflow C will consume resources allocated to workflowcompute-C. The same applies to workflow D.

Using Dedicated Instances

Dedicated instances require a separate license key and are only supported in cluster deployments.

After deployment and authorization, you can select an instance specification on this page to create a dedicated instance.

Concurrency in dedicated instance specifications:

  • 20 concurrency: The dedicated Kafka topic has 20 partitions, the workflow consumer service runs 20 threads, and workflow/worksheet services can use up to 4 vCPUs and 8 GB memory.
  • 100 concurrency: The dedicated Kafka topic has 100 partitions, the workflow consumer service runs 100 threads, and workflow/worksheet services can use up to 16 vCPUs and 32 GB memory.
  • In general, more Kafka partitions allow more consumer threads and higher parallel processing capacity.

How to choose deployment server specifications?

Dedicated instances leverage Kubernetes taints to run on isolated nodes separate from other microservices, preventing resource contention. Therefore, additional dedicated servers are required.

First determine the number and specifications of dedicated instances needed, then plan the number and configuration of deployment servers.

For example, if you need 2 instances with 20 concurrency and 2 instances with 50 concurrency, at least 2 servers with 16 vCPUs and 32 GB memory are required. Each server should have a fixed disk size of 200 GB.