Chrome降低了https网站的速度,尤其是内部网站


8

我们正在尝试在我们的企业网络中部署Google Chrome,但是发现与IE相比,加载https页面(尤其是我们自己的内部页面)所需的时间要长2-4倍。有没有人遇到过这种情况并找到了解决方法?

更新资料

根据Handyman5的建议,我在Chrome中运行了一些诊断程序,发现花了最多的时间(每页超过90%)从Cache中提取静态文件并渲染页面。但是,如果我在我们的站点上关闭SSL,则几乎是瞬时的。

对为什么会这样有任何想法吗?


您可以添加tcpdump跟踪吗?那真的有帮助。您的网络中是否正在耗尽IPV6?我偶尔会遇到这个问题,即系统管理员增加了DNS记录,但在远程端点不会启用V6
Lmwangi

我们没有运行IPV6,并且我认为DNS记录不适用,因为我们直接访问该站点(即https:// 192.168.0.33/)。我将尝试在桌面上安装Wireshark或类似工具,以查看是否可以发布跟踪。
哔哔

您使用什么DNS服务器/
沃伦

似乎无关紧要...内部DNS,Verizon,甚至在通过IP地址访问站点时也是如此。
哔哔哔声,

Answers:


18

Chrome浏览器具有强大的内置诊断工具“ about:net-internals”,该工具旨在帮助排除网络故障。尤其是,它具有“事件”标签,可让您指定URL,然后Chrome逐步分析加载它的整个过程,包括DNS解析,缓存命中和AJAX元素请求。


哇,从来都不知道 我会尝试的,谢谢!
发出哔哔声

很奇怪...我想知道Chrome处理安全网站上的缓存的方式与IE不同吗?在Chrome开发人员工具中运行此代码和时间轴之后,似乎花费了最长的时间来处理Cache中的静态文件。在非安全站点上,情况并非如此-它几乎立即提取高速缓存文件。例如,在一个小页面上,花了100毫秒从页面上接收动态内容,但是又花了1.9秒的时间从缓存中提取JavaScript。在IE中,此页面在不到0.5秒的时间内打开,当我关闭SSL时,它在Chrome中的打开速度甚至更快。
哔哔

功能已删除。在“事件”选项卡上不会显示以下文本:网络内部事件查看器和相关功能已被删除。请使用chrome:// net-export保存netlog,使用外部弹射器netlog_viewer查看它们。
MHeld

8

tl; dr检查Chrome如何处理证书检查和吊销。

在我以前使用过的设备(但使用Firefox)中,我们遇到了非常相似的问题。为了解决这个问题,您需要确认问题仅在于https页面。 如果没有,那将没有什么区别。

使用Firefox(我知道,我知道,我知道,我会指出,即将出版),很多人遇到了问题,而Internet Explorer用户(如果可以相信的话)却没有。我们之所以使用臭名昭著的ipsCA权限,是因为它们对教育机构是免费的,但是最终由于其可疑性而激怒了Firefox,而OCSP检查其证书才是罪魁祸首。事实证明,由于SSL证书的性质,浏览器由于处理证书吊销列表而延迟。显然,作为我们最好的,您没有提到您的Chrome版本,因此很难说这是否是一个问题还是一个问题。但是,我会检查Chrome中的CRL配置。在Firefox中这样做可以缓解问题。另外,请检查您的证书是否信誉良好,即它们是否是自签名的。放弃使用它的原因是,我们不再使用自签名,因为我们服务的白痴用户抱怨很多,而且它是免费的。我们以为自己让自己头疼,但使情况变得更糟。


好主意-我们的内部应用仍在开发中并且已自签名,所以也许是问题所在。我们将购买一个真实的证书,也许那会有所作为。
哔哔

好吧,那就别理了。此问题将与来自真实CA的签名证书有关,但事实证明该CA太糟糕了。那么,这可能不是您的问题。
songei2f 2011年

我们仍然会尝试,感谢您的反馈
哔哔哔声,

2

我们在内部部署了Google Chrome浏览器,以支持自定义开发的应用程序(在ASP.NET MVC上),但在常规HTTP上运行。

由于缓存的原因,我们也遇到了页面慢的问题。Chrome似乎在每次页面加载时提取所有静态文件,而不是将其保存在缓存中。我们最终只是简单地向我们的应用程序添加了expires头文件来强制缓存,并且成功了。

您可以沿着这条路线走(修改Web应用程序以为每种文件类型指定缓存策略),或者进一步研究Chrome的默认缓存行为。

其他人似乎也有类似的问题(例如http://www.google.com/support/forum/p/Chrome/thread?tid=741fd9e03cfb7e7b&hl=zh-CN)。

本文可能是有用的,因为它提供了有关Chrome缓存的入门知识:http : //gent.ilcore.com/2011/02/chromes-10-caches.html


我们的问题不是文件正在重新传输,而是从缓存文件(在客户端内存中)中拉出确实很慢。我想我们将让内部用户使用IE。
哔哔


1

最后,我在这里找不到答案。所有的监视和性能分析测试表明,Chrome浏览器从本地客户端缓存加载安全的静态内容的速度非常慢。不知道为什么。我们必须让所有内部用户都切换到IE(这是大多数在网络上遇到类似问题的人所做的事情)。


0

如果后端是基于Java的应用服务器,则存在一个常见的Java错误,该错误会导致TLS会话票证引起巨大的延迟。您可以通过使用全新的openssl s_client并告诉它启用/禁用会话票证来模拟该错误。

真正的罪魁祸首是具有空值的JSSE与TLS扩展,会话票据在第一个请求时使用。


后端是ASP.NET MVC。
哔哔

0

您的服务器用尽随机数据的任何可能性。在Linux下,如果您使用/dev/random了随机数据并用完了该数据,则服务器将阻塞,并且页面加载看起来像是挂起了。

通常/dev/urandom足够好。如果不是这种情况,那么您可以获得一些硬件,它将为您生成随机数据。

我看到您正在运行ASP .NET-我无法评论Windows上的问题,但值得一看。


不要这么认为,因为它仅在Chrome(在一定程度上在Firefox)中。在IE或任何HTTPS关闭的浏览器中,我们的网站都非常快。它似乎与从客户端缓存中提取数据有关。对于HTTPS网站,Chrome这样做的速度非常慢,而对于匿名HTTPS站点,Chrome很快。对我来说毫无意义。
哔哔
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.