I am currently designing an automation process and wanted to get some feedback on my architectural approach. . I am following the Dispatcher-Performer pattern and have already built the logic for both components. I’m a beginner to this.
Dispatcher: Fetches source data from an API and uploads items to an Orchestrator Queue.
Performer: Consumes the Queue items to perform actions in ManageEngine, sends emails, and handles other processing.
My Questions
Is it better to build these as two separate REFramework projects ? Or is it common to build both the Dispatcher and Performer logic inside the same REFramework project ?
Is it better to build the Dispatcher as a simple Linear process (not using REFramework) and only use the REFramework for the Performer?
Which approach is better, please share the feedback
You’re on the right track, this is a common design question.
In practice, the recommended approach is to keep Dispatcher and Performer as two separate projects. This gives better scalability, allows independent scheduling, and makes maintenance easier.
For the framework choice, it’s quite common to build the Dispatcher as a simple linear process** (especially if it’s just fetching and pushing data), and use REFramework for the Performer, since it benefits more from retry logic, exception handling, and transaction management.
So overall:
Best practice → Separate Dispatcher & Performer
REFramework → Mainly for Performer (Dispatcher can be simple, not in every case.)
Thank you for the suggestion. I have confirmed that I am using stable version 2.24.4 of the UiPath.Excel.Activities package with a Strict runtime rule. This version is working perfectly in my Dispatcher project, but failing in the Performer.
Hi @iampnkz ,
I have already uninstalled the packages and reinstalled them multiple times. I also performed a ‘Nuclear Clean’ by deleting the entire NuGet cache and the .local folders, but the error remains. The crash happens at the very start of the Read Range activity.