Summary
A processor is the basic building block of every Clockspring flow. It performs one focused action, does it reliably, and then routes the resulting FlowFile forward. Everything else in the platform - process groups, scheduling, controller services - exists to support processors and manage how they run.
What a Processor Actually Does
A processor always follows the same pattern:
Receives a FlowFile (unless it generates its own)
Reads or updates content
Reads or updates attributes
Performs a single task
Examples: call an API, write to a DB, evaluate JSON, route based on metadata.Transfers the FlowFile to one of its relationships
Repeats based on scheduling rules
Processors don’t do “business flows” by themselves. They do small steps, and you chain them together to build logic.
Why Processors Stay Simple
Clockspring leans on composability. A processor:
Does one job, not many.
Produces predictable outputs.
Lets downstream processors decide what to do next.
This keeps flows maintainable and prevents the “god processor” problem, where one component tries to handle everything.
How Processors Interact With Other Features
Processors rely on several supporting pieces:
Attributes and Content
A processor may read or modify:
Content (the FlowFile body)
Attributes (key/value metadata)
Attributes often decide routing, API endpoints, SQL tables, file names, and more.
See more about Attributes and Content here.
Controller Services
Processors don’t store shared config (DB connections, SSL contexts, caches).
They reference controller services, which act as reusable configuration blocks.
See more about Controller Services here.
Parameters
If a processor property supports parameters:
Non-sensitive processors can use non-sensitive parameters
Sensitive properties require sensitive parameters
Mismatch = parameter unavailable
See more about Parameters here.
Scheduling
Processors only run when allowed to run:
Timer-driven
CRON
Event-driven
With configurable concurrency
This determines when each processor performs its task.
Relationships
Processors always send FlowFiles to a relationship:
success
failure
retry
no match
dynamically created relationships
You must handle or terminate every relationship.
See more about Relationships here.
Processor Behavior in a Cluster
Processors can run on:
All nodes (parallel processing)
Primary node only (polling, single-writer patterns)
This is set per processor inside the Scheduling tab.
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article