We perform the update both synchronously and asynchronously, depending on the type of action that the user performs. We have implemented synchronous indexing so that we use asynchronous code and just wait for some time to complete it. We expect only 2 seconds, which means that if it takes longer, the user will not see the update, but usually the user will.
We set up logging so that we get a notification when βsynchronousβ indexing took longer than we expected to understand how often this would happen. We almost never overcome the 2 second limit.
source
share