My Application Required Timer Task for data sync., how do i setup to run on one single server instance.
Hi Kevin
Timer in OutSystems is Singleton.
This mean even there are multiple FE servers, there will only one server instance run your data sync Timer.
And it is random which server will run your timer. (For Example, first time is FE2, and next time is FE1)
So If you don't want both server run your timer at same time, then you don't need do anything.
But If you want to fix the server (For Example: always FE2) to run your timer, you have two options
1. Enable only one Server to Execute All your Timers
You can find this setting from ServiceCenter -> Administrator -> Servers.
2. Enabled only one Server to run your Data Sync Timer, but others can be run by any servers.
You need create a Deployment Zone and contains only one server.
https://success.outsystems.com/Documentation/11/Managing_the_Applications_Lifecycle/Deploy_Applications/Selective_Deployment_Using_Deployment_Zones/Create_a_New_Deployment_Zone
Then configure you Timer module to use that zone from operation tab.
Regards
Wei
HI RMS!
If you want to run a timer in runtime just for one time, you could run it going to Service Center and clicking in Factory/eSpaces/eSpaceWhereYouHaveTimer/Timers/YourTimer/RunNowOther option is using the WakeTimer function, to wake your timer, in any server action that you want to wake it.
Thanks and Best Regards,
Nuno Pereira
In ServiceCenter, you can specify which FE servers can run timers globally, but I don't think you can make a specific timer run on one server and have other timers running on other servers.
Can you tel us more of what you're trying to do? What's the reasoning for running it on a specific server?
Kevin Swanson wrote:
i am doing a data sync from one system to another system. i don't want multiple instance on timer task. i want to make sure at any time only once instance should run. Don't want both servers run the timers.