服务器上有多大的压力是jQuery?

时间:2012-01-16 01:26:54

标签: jquery-ui jquery

我还没有使用过jQuery,但人们不禁会注意到涉及它的过多问题。在阅读基础知识时,some提到了“客户端计算机上的压力,如果您打算在自己的Web服务器上托管JQuery脚本,也可能是您的Web服务器”。

我不太关心客户端,但想知道我们会看到什么样的压力。我read jQuery库“可以通过链接到本地​​副本或公共服务器提供的众多副本中的一个来包含在网页中”。我想知道微软(或其他人)为什么要让数百万人使用他们的服务器来使用DL jQuery库?客户端是否对每个会话一次性DL文件,或者只是在事件/效果/功能触发时DL'd和本地访问的部分?图书馆多久清除一次客户端?如果我有,在我的网站上有100'000个访问者和1'000'000次点击,那么该库文件会被DL'd多少次?每次会话一次?很抱歉提出这个n00b问题,但我正在阅读一些相互矛盾的事情,并想知道是否有人可以填补我。

4 个答案:

答案 0 :(得分:4)

jQuery框架(与任何其他客户端脚本或样式表一样)在下载后存储(缓存)在客户端上。

最新版本的jQuery在缩小生产时约为31kb,因此这与应用程序中的任何其他图像或轻量级html页面一致,除了它将在客户端缓存而不是两次下载。< / p>

允许jQuery基地由像谷歌这样的CDN托管也是一种选择。 Here is a great blog post about doing that

答案 1 :(得分:3)

大多数静态内容,如Javascript文件中的jQuery库,并不是一种压力。你提到100k访客,是每天吗?每月?真的改变了期望。

您无需在服务器上托管jQuery文件,您可以使用Google的内容分发网络(CDN)或Microsoft的CDN(如https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js),以消除服务器上的任何相关问题只是下载文件。

答案 2 :(得分:1)

您可以采取一些措施来缓解这些问题。

  1. 您需要确保浏览器缓存了您使用的javascript库。浏览器通常会执行此操作,您可以使用html5缓存清单实际执行此操作。这样,每个客户端只加载一次代码。

  2. 尽量减少你的src。

  3. 配置您的网络服务器,以便将常见的静态资源(如您的src代码和图像)保存在内存中,并将其gzip进行传输以减少下载的大小。

  4. 此外,还有一项称为容量规划的内容。如果您的应用程序将获得10万访问者,您需要使用硬件来支持它。

答案 3 :(得分:1)

每个用户都会下载一次该文件。一旦第一次下载,用户的浏览器就会对其进行缓存,并且永远不会再次下载。将其与您的HTML页面进行比较,每次用户单击链接时都会重新加载。

在33kb时,JQuery与大型HTML文档的大小差不多,并且比大多数图像小很多倍。因为它只是一个静态文件,所以它基本上没有引入服务器负载。根据{{​​3}},常见的服务器软件可以处理每秒的数十万个静态请求,这是大多数网站必须处理的。

这就是为什么谷歌和微软都可以为每个人托管jQuery - 它太小了,它不会打扰他们的服务器。

总结;别担心。 jQuery永远不会给你的服务器带来问题。