Problème de performance étrange du server lié sur un server client

J'ai un problème étrange avec le server lié sur des machines de SQL Server. J'ai un Master SQL Server et deux SQL Server identiques. Sur les machines client il y a un server lié appelé MASTER. Les machines client utilisent ce server lié pour synchroniser leurs données avec la database principale.

Le problème est; Une requête fonctionne très bien sur le client 1. Toutefois, la même requête est 20 fois plus lente sur le client 2 que la première. Les machines sont identiques et les autres situations semblent normales. Je pense qu'il y a un problème basé sur le réseau, mais pas sûr. Au fait, la taille des données est presque la même sur deux machines.

Mon exemple de code est ci-dessous. Sur le client 1, chaque ligne d'printing affiche 50-100 ms, mais sur le client 2, elle affiche 500-750 ms

declare @i int =0 declare @ID int declare @Start datetime declare @End datetime set @Start=getdate() while (@i<10) begin Select Top 1 @ID=ID from [MASTER].[MYDB].[dbo].SYNCDATA set @End=getdate() PRINT CAST(datediff(ms,@start,@End) as varchar) set @Start=getdate() RAISERROR ('', 0, 1) WITH NOWAIT set @i=@i+1 end 

Si quelqu'un a déjà eu un problème comme celui-ci, donnez-moi quelques indices pour résoudre le problème …

Merci d'avance

Kenan

Rien n'est jamais identique dans l'univers physique 🙂 Les deux machines clientes peuvent différer dans la memory ou la connection réseau ou peut-être la version du pilote client SQL, ou un million d'autres facteurs. Qu'en est-il de l'location des servers clients. Sont-ils dans le même bâtiment, différentes villes, peut-être qu'ils sont connectés via différents routeurs et l'un est plus lent que l'autre. Il y a tellement de variables ici qu'il serait impossible de déboguer sans access physique.