2017-08-22 128 views
0

我們在VMware上的Windows 2008 R2上的數據中心中運行的Visual Foxpro 8.0中開發了多個應用程序。我們還在同一網絡上有一個Citrix場,用戶在Citrix會話中運行另一個VFP 8.0應用程序。所有應用程序共享位於文件服務器(也是Windows 2008 R2 VM)上的同一組數據表。虛擬主機通過10Gb LAN(管理型交換機)連接。在多個VFP應用程序中讀取文件錯誤的隨機1104錯誤

自7月中旬以來,我們開始在多個服務器上的多個不同應用程序中看到隨機1104「Error reading file ...」錯誤。它們都引用文件服務器上的不同文件。

問題始於7月中旬,頻率逐漸增加。早些時候,下午3點以後,這種情況最爲頻繁,現在是從清晨到深夜。它影響EDI服務器(這些服務器以無人值守模式運行批處理作業)以及Citrix服務器和各種應用程序。它發生在VFP應用程序(它們中的任何一個)嘗試最常用USE命令打開數據庫容器文件或單個表,但有時執行SQL Select語句,或者加載打開DataEnvironment中的表的VFP表單時發生

我們發現,在同一時刻運行不同應用程序的兩臺不同服務器發生相同的確切錯誤(最多一秒)。我們還看到在同一臺計算機上運行的兩個不同應用程序在同一時間出錯。

我們用新的虛擬機替換了文件服務器,但沒有任何解脫(我們將它更改回舊的文件服務器)。

我們禁用了防病毒軟件。

我們將所有主機上的VMware更新爲最新版本。

當發生錯誤時,Sysinternals進程監視器顯示「INVALID_NETWORK_RESPONSE」事件。

我們在發生錯誤時捕獲了服務器端和客戶端的流量,並且由網絡分析專家進行分析。他觀察到一種特殊模式,客戶端操作系統在VFP應用程序發出錯誤後開始從文件服務器檢索相關文件。看起來VFP應用程序向OS請求一個文件,然後它得到一個異常響應或者只是在操作系統發送請求該文件的包之後才超時。再一次,這偶爾會發生。

OPLOCKS和SMB2已被禁用兩個等式多年的服務器和客戶端的所有計算機,一切都順利運行到現在...

任何意見將不勝感激。

+0

沒有任何代碼或日誌很難理解你的問題。 –

回答

0

我的第一條建議是重新啓用OpLocks和SMB2。今天沒有理由混淆這些項目,並且您正在失去大量SMB1級別的性能。

根據我的經驗,這些問題幾乎總是由以下原因之一引起的。

  • 防病毒/反惡意軟件軟件。
  • 複製或在線備份軟件,如MozyPro。
  • Windows搜索索引服務。

如果您尚未安裝,請考慮安裝Windows 7/Server 2008 R2 Enterprise Hotfix Rollup

+0

我們處於Server 2008/Windows 7環境中,我們仍然需要關閉OpLock和SMB2,否則我們會不斷開始獲取錯誤讀取(和/或寫入)文件和非法查找偏移量錯誤。我們還發現,當虛擬機外部的備份進程開始在主機上運行時,在負載過重的虛擬機上運行VFP可能會出現這些錯誤。 – LAK

+0

好吧,我們在數百個位置擁有多用戶VFP9應用程序,並且我們從未觸摸任何SMB2或OpLocks。所以我想YMMV。 –

0
  • 這個問題主要與SMB2有關!
  • 一些殺毒軟件!
  • Windows更新!如果您通過DBF/DBC文件使用VFP應用程序。不要更新您的系統/操作系統。這是我個人的建議。在不久的將來,Windows Server 2012+或Windows 10+可能會出現大問題。

而且高點可能是: 每秒你的I/O請求是多少?如果你的IO請求大於1000〜2000每秒對於一個瓶頸的dbf文件;而您的存儲設備是HDD - >您需要將您的HDD切換/更新到SSD。我建議m.2 pro系列SSD。