Мы устраняем неисправности древнего приложения, написанного на классическом ASP, которое обращается к базе данных SQL Server 2005.Это только приложение для интрасети.
Страница ASP настроена для разбивки на страницы более 200 000 записей, 10/20 или 30 записей одновременно.Мы планируем перевести это приложение на более современный язык и т. Д. Тем временем нас попросили определить, сколько байтов было передано клиенту.
SQL-запрос как таковой:
db_server = "<server name>"
db_name = "<database name>"
db_username = "<user name>"
db_userpassword = "<password>"
connectstr = "Driver={SQL Server};SERVER=" & db_server & ";DATABASE=" & db_name & ";UID=" & db_username & ";PWD=" & db_userpassword
With objCn
.CursorLocation = adUseClient
.ConnectionTimeout = 15
.CommandTimeout = 30
.ConnectionString = connectstr
.Open
End With
With objRs
.ActiveConnection = objCn
.CursorLocation = adUseClient
.CursorType = adOpenForwardOnly
.LockType = adLockReadOnly
.Source = sql
.PageSize = intPageSize
.Open
Set .ActiveConnection = Nothing 'Disconnect the recordset
End With
ASP перебирает возвращаемые данные, и именно здесь мы бы хотели узнать, сколько байтов фактически получено на клиенте.Мы думаем, что нужно просто взять размер страницы и умножить его на возвращаемую длину поля данных, так как курсор возвращает только одну «страницу» за раз.Это так просто?Мы упускаем какие-либо существенные накладные расходы в этом расчете?