在過去的幾個月裏,我們的網站遇到了一個奇怪的問題。偶爾使用ADO.NET DataSets對數據庫進行各種查詢會引發一個錯誤......其中最常見的是「無法啓用約束,一行或多行包含違反非空值,唯一值或外部值鍵約束「。負載均衡環境中的ADO.NET DataSet有問題嗎?
數據實際上是有效的,因爲沒有改變任何東西,錯誤將是間歇性的。此外,它的「修復」是回收兩個Web服務器上的應用程序池......所以這個問題不會是錯誤的數據返回。一旦完成,它可以一次運行好幾個星期,或者在一天內休息3次。有沒有一致性...
它也似乎像更新的數據訪問方式,如Linq 2 SQL,工作得很好......雖然很難說,因爲該網站目前正在使用兩者。 (致力於將所有東西都交給L2S,但不幸的是,沒有太多時間來重寫舊組件)。
所以有人有過這樣的事情嗎?這是否與負載平衡有關?也許服務器有問題? (我已經強制所有連接到每個服務器,並經歷了他們倆的錯誤。)它可能是在虛擬機中運行有問題嗎?
錯誤...好的,所以總的問題是:是什麼原因造成的,我該如何解決?
哦,該網站是在.NET 3.5 ...
如果這是一個負載問題,我會很驚訝...我不認爲我們會得到所有的流量。 – CodeRedick 2009-06-29 14:46:25