【问题标题】:How Many Bytes Sent From SQL Server To Client从 SQL Server 发送到客户端的字节数
【发布时间】:2011-07-21 10:38:39
【问题描述】:

我们正在对使用经典 ASP 编写的访问 SQL Server 2005 数据库的古老应用程序进行故障排除。这只是一个 Intranet 应用程序。

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 继续对返回数据进行分页,这是我们想知道客户端实际接收到多少字节的地方。我们认为它只是将页面大小乘以返回的数据字段长度,因为光标一次只返回一个“页面”。就这么简单吗?我们在计算中是否遗漏了任何重大开销?

【问题讨论】:

    标签: sql-server-2005 asp-classic


    【解决方案1】:

    如果客户端和服务器在不同的机器上,启动 Wireshark 来监控真正的带宽。

    http://www.wireshark.org/

    【讨论】:

    • 是的,这是一个很好的答案!我会检查一下。服务器实际上是位于另一个状态。太好了!
    • 没问题。您需要使用捕获过滤器来确保您只获得正确的流量(例如,与远程桌面流量相反)。可能最好的方法是按端口或按 IP 过滤。
    • 哦,是的....我还看到了其他一些我需要研究的东西。太好了,谢谢!
    猜你喜欢
    • 1970-01-01
    • 2011-10-11
    • 2012-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多