Integration glossary
Worker pool and horizontal scaling
A worker pool is a group of machines that take work from the same queue. Horizontal scaling means adding capacity by adding machines to the pool.
Scaling up and scaling out
Scaling up means moving the work to a bigger server. It is simple until the biggest available server is not big enough, and every move needs downtime.
Scaling out means adding servers that share the work. Each one takes the next item from a shared queue, so capacity grows a machine at a time, and losing one machine slows the work down without stopping it.
What a pool has to get right
Sharing work across machines brings a few problems a single server never has.
-
Work held by a machine that stops must go back to the queue for the others.
-
One busy job must not take every slot while other work waits.
-
Some work must still happen one item at a time and in order, such as changes to the same customer.
-
Callers need a clear answer when every worker is busy, such as a request to retry shortly.
Worker pools in STRAX
STRAX workflows are deployed to a worker pool, and every worker in the pool shares its runs. Workers share their time fairly between workflows, a workflow can be limited to a number of runs at once, and runs for the same customer can be kept one at a time and in order. An autoscaler can add temporary workers when the queue grows, and when a worker stops, its runs go back to the pool.
Workflow automation → Operations and monitoring → How workflows are built and run →
More terms
Other ideas worth knowing.
Report theme
A saved set of colours, fonts, logo and cover design that every report using it is rendered with.
Read the definition →Script library
Shared, versioned code that workflow code steps can call, kept in one place with its licences and the workflows that use it.
Read the definition →Change data capture (CDC)
Passing on only what changed in a database, shortly after it changed, instead of copying whole tables on a schedule.
Read the definition →See it on your own systems.
A demo takes about an hour and shows these ideas working on systems like yours.


