Out of the box, tfs 2010 batches events together and fires them every 2 minutes. To change this, you need to set the notification delay in the TF registry. Run this script using PowerShell. This will set the delay to 30 seconds. You can set it to zero to fire tfs events immediately.
[Reflection.Assembly]::Load(“Microsoft.TeamFoundation.Client, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”) # Modify the TFS configuration server URL as necessary. $configServer = new-object Microsoft.TeamFoundation.Client.TfsConfigurationServer “http://localhost:8080/tfs/” # Get the TF registry service. $tfsRegService = $configServer.GetService([Microsoft.TeamFoundation.Framework.Client.ITeamFoundationRegistry]) # Set the notification delay to 30 seconds. All collections will use this delay unless they override this value in the collection hive. $tfsRegService.SetValue(“/Service/Integration/Settings/NotificationJobDelay”, 30)