Delay in the synchronization between nodes of orchestrator

orchestrator
publish
p_qa

#1

Hello everyone,
I am currently working in a project that is experimenting problems with the time that takes orchestrator to share its content between the two nodes. We have two servers working as one with an active/active balancer configuration and a memory space shared betweeen the two servers where packages are stored, However in the NFS(Network File System) shared by the two machines not only store the processes but also have 2 cache.bin files one for each server where there are a registry of the avaible processes. The problem is that these files should have the same content so both nodes of the orchestrator show the same processes avaible, but this isn’t always true. When you upload something using the balancer url, you finally end up uploading it to one of the two nodes and It takes an average of 30 minutes to be copied in the cache.bin file of the other node. So my question is, why is the orchestrator taking so long in getting syncronized? Is there any kind of parameter that I can modify in order to reduce this time?
Thank you in advance :slight_smile:


#2

Make sure that you have:

  • round-robin set on the load balancer
  • redis server
  • shared folder for nuget
  • try to use redis for sync (not sql)

Let me know the result.


#3

Hi Andrei, thank you for your response. About what you said to me:

  • round-robin set on the load balancer. Actually the load is correctly distributed between both nodes. The problem is that when a process is uploaded in one of the servers in the other you cannot see it until 30 minutes later and vice versa.
  • redis server: We have installed and in use a redis server.
  • shared folder for nuget. Yes we also have a shared folder for packages.
  • try to use redis for sync (not sql): And yes we use redis for sync

My question is: Is it necessary to have two different cache.bin files(one for each server)? or would it be possible to have only one where both machines write? Because I consider that the main error is that the content of the file is not inmediately replicated in both files. In case that We could have one one file, how do we change it?

Again thank you Andrei :slight_smile:


#4

cache.bin files are generated by nuget not us

we need to investigate this issue and try to reproduce it on our environment, if you have other relevant details please let us know


#5

I don’t understand. When you publish a project, It creates a nuget in your folder(“C:\ProgramData\UiPath\Packages”) But this nuget doesn’t contain any cache.bin.I imagine that It is after when you upload this nuget into the orchestrator that the action of uploading the nuget modifies the cache.bin file. So, why does it only modifiy one of the cache.bin files and why does it take so long to apply this changes to the other cache.bin? Is it because first they have to send the new release to all the robots?
Sorry if I am a bit annoying :slight_smile:
Thank you!


#6

you are not annoying but to give you an accurate answer we need to reproduce the issue in our environment