在许多屏幕上显示相同的网页

时间:2010-04-07 16:53:52

标签: c# winforms

我有一个网站,其中包含我希望向呼叫中心的每个座席(150)显示的实时统计数据。代理应用程序是Windows窗体,因此显而易见的方法是托管WebBrowser控件并将其指向站点。然而,该站点不是我的,站点所有者可以理解的是,站点从非常少的流量变为150(并且这个数量不断增长)用户的持续流量。

有没有办法缓存网站,然后将结果显示给每个用户?该网站使用AJAX来更新我的初步计划,使用HttpWebRequest每隔5秒保存一次页面副本,然后让应用程序查看此内容。

3 个答案:

答案 0 :(得分:1)

用户是否必须与网页进行交互,还是只读视图?

如果是后者,那么您可以创建一个托管在您自己的计算机上的服务应用程序,该应用程序将以某个间隔轮询网站。通过每次轮询,您将通过Win32 BitBlt方法执行页面的图像捕获。然后,客户端将连接到您的服务器并在计时器而不是网页上获取更新的图像。您可以将访问客户网站的客户数减少到1,并将负载转移到您的网络。这对您来说是一个只读代理,当然只有在您不需要将用户输入到网页中时它才会起作用。

答案 1 :(得分:0)

您可以使用HttpWebRequest获取站点的AJAX调用所获得的相同数据,然后您可以在Winforms应用程序中呈现数据,但您认为合适。通过在网页上执行查看源,确定通过AJAX访问的URL应该不会太难。

答案 2 :(得分:0)

也许是呼叫中心机器和外部站点之间的代理服务器?有一些免费或非常合理的选择。

您甚至可以设置自己的网页,每分钟查询一次远程网站,并将内容保留在自己的响应中。