Sql-Server
通過防火牆從 IIS 到 SQL Server 2005 的本機客戶端連接需要 30 多秒
我有一個通過防火牆連接到 SQL 2005 的 Web 伺服器(IIS7/.NET 3.5 本機客戶端)。
伺服器位於一個集群上,其命名實例配置為響應靜態埠 1089。
TCP 埠 1433 和 1089 在防火牆上是開放的,UDP 埠 1434 也是開放的。
建立連接後,設置速度非常快(每次查詢約 10 毫秒),但是設置第一個連接需要 37 秒!
正在使用的連接字元串如下:
數據源=1.2.3.4,1098;網路庫=DBMSSOCN;初始目錄=MyDatabase;使用者id=my_user_id;密碼=secret_stuff
Web 伺服器和 sql 伺服器在不同的域上。但是,我使用的是 SQL 身份驗證。
如果我從普通客戶端機器連接,一切都會像魅力一樣。
有沒有人遇到過這個問題?我該如何解決它或至少進一步調查這個問題?
看起來它出於某種原因試圖在 1.2.3.4 地址上執行反向 DNS,可能是 IIS 設置,但也可能是其他原因。如果您
c:\windows\system32\drivers\etc\hosts
為 SQL 伺服器名稱添加主機條目,是否會有所不同?如果這沒有幫助,或者您只是想弄清楚在這種情況下發生了什麼,通常您應該使用網路\數據包分析器。Windows 網路監視器或WireShark都可以解決您的問題。這些工具不是很重要的工具,但是如果您擷取一個顯示您的問題的會話,您應該能夠看到哪些流量立即出現在它們長時間延遲之前,並且如果運氣好的話,您可以將根本原因歸零。