1
我有一個WCF web服務,可以滿足來自不同客戶端的同時請求。該服務必須與每個請求上的MySQL Db進行通信。我面臨的問題是大量的請求同時進入(大約300-400),並與MySQL進行通信「無法連接到任何指定的MySQL主機」彈出。 我到目前爲止的想法是,Mysql無法管理如此多的同時連接,並且無法再迎合並開始拋出錯誤。解決此問題的最佳方法是什麼? 以下是被稱爲每次請求到來時的代碼片段:同時連接MySql/C#
try
{
MySqlCommand command = new MySqlCommand(query);
command.Connection = conn;
conn.Open();
long id = -1;
int _result = command.ExecuteNonQuery();
if (_result == 1)
{
//do something
}
conn.Close();
return id;
}
catch (Exception ex)
{
throw ex;
}
finally
{
if (conn.State != ConnectionState.Closed)
{
conn.Close();
}
}
永遠不要寫'throw ex;'。你應該用'using'語句替換整個'try'塊。 – SLaks 2012-02-01 20:07:13
在catch塊中什麼都不做,除了最多寫一個事件日誌。即使不在捕獲塊中這樣做。只需將異常的詳細信息複製到某處,然後在事務外寫入該事件日誌。不要丟。 – 2012-02-01 20:12:12
購買昂貴的MS-SQL-Server許可證並幫助蓋茨基金會 – 2012-02-01 20:22:09