Class ResourceBasedSlotSupplierOptions
- Namespace
- Temporalio.Worker.Tuning
- Assembly
- Temporalio.dll
Options for a specific slot type being used with a resource based slot supplier.
public sealed record ResourceBasedSlotSupplierOptions : IEquatable<ResourceBasedSlotSupplierOptions>
- Inheritance
-
ResourceBasedSlotSupplierOptions
- Implements
- Inherited Members
Remarks
WARNING: Resource based tuning is currently experimental.
Constructors
ResourceBasedSlotSupplierOptions(int?, int?, TimeSpan?)
Options for a specific slot type being used with a resource based slot supplier.
public ResourceBasedSlotSupplierOptions(int? MinimumSlots = null, int? MaximumSlots = null, TimeSpan? RampThrottle = null)
Parameters
MinimumSlots
int?Amount of slots that will be issued regardless of any other checks. Defaults to 5 for workflows and 1 for activities.
MaximumSlots
int?Maximum amount of slots permitted. Defaults to 500.
RampThrottle
TimeSpan?Minimum time we will wait (after passing the minimum slots number) between handing out new slots in milliseconds. Defaults to 0 for workflows and 50ms for activities.
This value matters because how many resources a task will use cannot be determined ahead of time, and thus the system should wait to see how much resources are used before issuing more slots.
Remarks
WARNING: Resource based tuning is currently experimental.
Properties
MaximumSlots
Maximum amount of slots permitted. Defaults to 500.
public int? MaximumSlots { get; init; }
Property Value
- int?
MinimumSlots
Amount of slots that will be issued regardless of any other checks. Defaults to 5 for workflows and 1 for activities.
public int? MinimumSlots { get; init; }
Property Value
- int?
RampThrottle
Minimum time we will wait (after passing the minimum slots number) between handing out new slots in milliseconds. Defaults to 0 for workflows and 50ms for activities.
This value matters because how many resources a task will use cannot be determined ahead of time, and thus the system should wait to see how much resources are used before issuing more slots.
public TimeSpan? RampThrottle { get; init; }