数据库100万商品5000个类别(所有类别),没有缓存(因为其它原因),每个页面平均读6次,数据库SQL,经过性能优化.运行结果是:数据库:CPU 90-100%,内存:2G,使用1.6G,索引搜索(700-4000个/s)
程序服务器:CPU 30-50%,数据库链接池,35-42,WEB园15个,一开始是一个,几分钟就出现服务器程序池错误,
浏览效果:稍慢,VS2003的ACT压力测试:
请求数:7个/s(相当少对吧^_^我也不知道为什么)结论:没有达到预期的效果,(4000人在线,服务器使用一般)如果要提高性能,在不加服务器的前提下要怎么做,高手指点,^_^
程序服务器:CPU 30-50%,数据库链接池,35-42,WEB园15个,一开始是一个,几分钟就出现服务器程序池错误,
浏览效果:稍慢,VS2003的ACT压力测试:
请求数:7个/s(相当少对吧^_^我也不知道为什么)结论:没有达到预期的效果,(4000人在线,服务器使用一般)如果要提高性能,在不加服务器的前提下要怎么做,高手指点,^_^
Public ReadOnly Property 成本价(ByVal Department As 分部) As Decimal
Get
Dim S As String = "select z.[结算数量],z.[结算金额] from [account_日记账] with(nolock) as z " + vbCrLf + _
"inner join [account_会计日期控制] with(nolock) as d on z.[日期]=d.id" + vbCrLf + _
"inner join [account_账簿]with(nolock) as b on z.[账簿]=b.id " + vbCrLf + _
"where d.[日期]=convert(char(10),getdate(),102) and b.[名称]='库存商品' " + _
" and z.[项目A]='{0}' and [项目B]='{1}'"
Dim DT As DataTable = Me.GetTable(String.Format(S, Me.ID, Department.ID))
If DT.Rows.Count = 0 OrElse Math.Abs(CType(DT.Rows(0)("结算数量"), Double)) < 0.0000001 Then
Return Me.零售价 / 2
Else
Return CType(DT.Rows(0)("结算金额"), Decimal) / CType(DT.Rows(0)("结算数量"), Double)
End If
End Get
End Property一个SQL能够查询出来的东西,如果通过傻傻的3层查询,可能会慢10倍以上。