這兩天針對開發的系統來做壓測調校...
在調校過程中有得到一點點的小收獲...

資料庫的connection的開啟與關閉
會影響Server端與Clinet端的Request和Response時間
有時侯我們會在每個方法(method)一開頭時去開啟connection
方法結束後再關閉connection....

Private Function GetSelCourseData(ByVal studObj As StudObj, ByVal course_kind As String) As DataView
Dim conn As SqlConnection = DBUtil.CreateSQLConnection()
Dim ad As New SqlDataAdapter
Dim myCommand As SqlCommand
Dim dt As New DataTable
Try
myCommand = New SqlCommand("SC_GetFristSelCourseData", conn)
.....
GetSelCourseData = dt.DefaultView
myCommand.Dispose()
ad.Dispose()
Catch ex As Exception
Throw New Exception(ex.ToString)
Finally
DBUtil.CloseDBConnection(conn)
End Try
End Function

雖然這樣的程式好維護...
對於資料庫的開啟與關閉很容易掌控...
但是,當這個方法的前後段程式還需要用到conneciton時...
在效能上就不是非常好的方法了...

後來我將Connection當成一個reference的物件送到各個需要
執行資料庫處理的方法內,在最後一段方法之後再來關閉他...

Dim conn As SqlConnection = DBUtil.CreateSQLConnection()
Try
CallMedthod_1(conn)
CallMedthod_2(conn)
CallMedthod_3(conn)
Catch ex As Exception
Throw New Exception(ex.ToString)
Finally
DBUtil.CloseDBConnection(conn)
End Try

經過壓測結果後...獲得相當明顯的改善!

文章標籤
全站熱搜
創作者介紹
創作者 湯瑪的吳 的頭像
湯瑪的吳

安達利機車行

湯瑪的吳 發表在 痞客邦 留言(0) 人氣(292)