2010-04-07 52 views
3

我有一个网站,其中包含我希望向呼叫中心的每个座席(150)显示的实时统计信息。代理应用程序是windows窗体,因此显而易见的方法是托管一个WebBrowser控件并将其指向该网站。然而,这个网站并不是我的网站,网站所有者对于一个站点从非常少的流量到持续增长的150个用户(并且这个数量不断增长)感到紧张。在很多屏幕上显示相同的网页

有没有办法缓存网站,然后显示结果给每个用户?该网站使用AJAX更新哪些泄漏我最初的计划使用HttpWebRequest每5秒保存一个页面的副本,然后让应用程序看看这个。

回答

1

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

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

+0

用户不需要与页面交互。整洁的建议,我会检查出BitBit方法 – Macros 2010-04-07 21:53:29

0

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

+0

你会这么认为...这是一个asp.net页面,我很努力地找到这个。如果我使用Fiddler来检查流量,它只是回传到主URL,因为它显示整个表单被包装在更新面板中。 – Macros 2010-04-07 17:04:55

+0

网站所有者是否会将数据呈现为简单的XML Feed?这将允许您获取一次数据,将其分散到您的许多客户端应用程序中,而不需要在他的服务器上加载任何数据,并且可以根据需要在Winforms应用程序中呈现它,而无需嵌入整个Web浏览器。 – 2010-04-07 17:13:50

0

也许您的呼叫中心机器和外部网站之间的代理服务器?有一些免费或非常合理的选项可用。

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

相关问题