0

服务器加载静态资源太慢 - 我可以进行哪些服务器优化?

图像 + CSS 内容加载速度太慢(相对较小的文件)每个加载时间超过 1 秒。我可以在服务器端进行哪些优化以减少这些加载时间(除了提高服务器处理能力/网络速度)。

服务器是 WebSphere。

4

5 回答 5

4

有很多可能性(按重要性排序):

  • 为所有静态资源设置适当的 Expires- 和 Last Modified-Header。这可以显着减少对静态资源的总体请求。从而减少服务器负载。无请求是没有有效负载的最快请求。
  • 从单独的无 cookie(子)域提供静态资源。
  • 使用CSS-Spites并将常用的图形(如徽标和图标)组合成一个大图像。
  • 将所有 CSS 合并到一个或几个文件中。这也减少了整体请求数量并提高了前端性能。
  • 使用PngOut等工具无损优化您的图像尺寸。
  • 预先 gzip 压缩您的 css(和 js)文件并直接从内存中提供它们。不要从硬盘读取它们并即时压缩。
  • 如果您不想自己做所有这些事情,请使用jawr 之类的库。其中许多事情可以为您处理,而不会对您的发展产生负面影响。
  • 让 Apache 网络服务器为您提供这些静态内容。
  • 使用类似的东西mod_proxy依赖于您的缓存标头为您提供内容。Apache 提供静态资源的速度更快,更重要的是它可以从您的 Websphere 服务器前面的另一个系统中完成。
  • 使用 CDN 提供静态内容。
于 2012-09-05T18:24:18.857 回答
0

确保保持活动已打开并正常运行。减少所需的整体网络开销。请参考这个

此外,请确保您有足够的内存分配给运行服务器的 VM。使用 GC 统计信息来记录内存使用情况和 GC 是一个好主意...例如将这些添加到 java VM:

-verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails
于 2012-09-05T18:08:57.063 回答
0

是否可以将这些文件资源包装在 .jar 文件中,然后使用 Java Zip 和/或 Java Jar API 来读取它们?

于 2012-09-05T18:09:23.290 回答
0

如果您使用 gzip 过滤器来压缩输出或静态资源,请确保排除图像,因为它们在服务器端 gzip 时呈现缓慢,然后再响应。

于 2012-09-05T18:15:39.343 回答
0

您可能想阅读这篇使用 WebSphere 的 IBM HTTP Server 诊断功能 和这篇针对不耐烦的 WebSphere 调优:如何通过 20% 的努力获得 80% 的性能改进

于 2012-09-05T18:22:54.097 回答