一.JDK方面
1.设置为Server版JVM
参照:http://www.itpchome.biz/software/Article/Catalog14/10720.html
下面的这两个文件,尺寸差别很大.
%JAVA_HOME%/jre/bin/client/jvm.dll 2,248KB(注意有可能jvm在不同的JRE路径中,这个因JRE安装路径而定。)
%JAVA_HOME%/jre/bin/server/jvm.dll 3,200KB(注意有可能jvm在不同的JRE路径中,这个因JRE安装路径而定。)
Jvm动态库有client和server两个版本,以上是JAVA6下的两个JVM,很明显server文件夹下的jvm.dll比client文件夹下的jvm.dll文件大,它们分别针对桌面应用和服务器应用做了相应的优化,client版本加载速度较快,server版本加载速度较慢但运行起来较快。
如果独立安装JDK与JRE的朋友在JRE的BIN目录中找不到SERVER文件夹,可以从JDK中的JRE下的BIN下复制过来。
让Tomcat 使用Server版本的jvm吧,在开始菜单 tomcat5 ->tomcat config的java属性中有一项 jvm路径指向server目录下的jvm就行了。
更改默认java.exe调用的jvm.dll,这个由jvm.cfg决定。
编辑%JAVA_HOME%\jre\lib\i386\jvm.cfg(注意有可能jvm在不同的JRE路径中,这个因JRE安装路径而定。)里面第一行写的是 -client 默认就是client版本 ,把第二行的-server KNOWN 放到第一行,
如下面所示
# www.itpchome.com
# @(#)jvm.cfg 1.8 05/11/17
#
# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
#
#
#
# List of JVMs that can be used as an option to java, javac, etc.
# Order is important -- first in this list is the default JVM.
# NOTE that this both this file and its format are UNSUPPORTED and
# WILL GO AWAY in a future release.
#
# You may also select a JVM in an arbitrary location with the
# "-XXaltjvm=" option, but that too is unsupported
# and may not be available in a future release.
#
-server KNOWN
-client KNOWN
-hotspot ALIASED_TO -client
-classic WARN
-native ERROR
-green ERROR
改完保存,然后看看默认版本:
C:\java -version
java version "1.6.0"
Java(TM) SE Runtime Environment (build 1.6.0-b105)
Java HotSpot(TM) Server VM (build 1.6.0-b105, mixed mode)
这时您会看到有 Server VM 字样,表明将JAVA设置成使用server版本的JVM成功!
2.设置JAVA使用的内存上下限
有两种方式:
JAVA_OPTS=-Xms256m -Xmx512m
操作系统方面可以设置环境变量或在Tomcat的catalina的文件中设置。
二.操作系统
2.1.window方面
TcpTimedWaitDelay和MaxUserPort设置
描述:确定 TCP/IP 可释放已关闭连接并重用其资源前,必须经过的时间。关闭和释放之间的此时间间隔通称 TIME_WAIT
状态或两倍最大段生命周期(2MSL)状态。此时间期间,重新打开到客户机和服务器的连接的成本少于建立新连接。减少此条目的值允许 TCP/IP
更快地释放已关闭的连接,为新连接提供更多资源。如果运行的应用程序需要快速释放和创建新连接,而且由于 TIME_WAIT
中存在很多连接,导致低吞吐量,则调整此参数。 如何查看或设置: 使用 regedit 命令访问
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\TCPIP\Parameters
注册表子键并创建名为 TcpTimedWaitDelay 的新 REG_DWORD 值。 将此值设置为十进制 30,其为十六进制
0x0000001e。该值将等待时间设置为 30 秒。 停止并重新启动系统。 缺省值:0xF0,它将等待时间设置为 240 秒(4 分钟)。
建议值:最小值为 0x1E,它将等待时间设置为 30 秒。 MaxUserPort 描述:确定在应用程序从系统请求可用用户端口时,TCP/IP
可指定的最高端口号。 如何查看或设置: 使用 regedit 命令访问
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\TCPIP\Parameters
注册表子键并创建名为 MaxUserPort 的新 REG_DWORD 值。 停止并重新启动系统。 缺省值:无 建议值:至少十进制 32768。
<!---->
<script type="text/javascript">
cpro_client='pchomecpr';
cpro_cbd='#trans';
cpro_cbg='#trans';
cpro_ctitle='#0000ff';
cpro_cdesc='#444444';
cpro_curl='#008000';
cpro_clink='#000000';
cpro_flush=4;
cpro_w=728;
cpro_h=90;
cpro_template='text_default_728_90';
</script>
<script src="http://cpro.baidu.com/cpro/ui/cp.js" type="text/javascript"></script>
二.Apache
压缩
在 apache 1.3 版本,大家常用 mod_gzip 对输出内容进行压缩,现在主流的浏览器都支持 gzip 解压缩。在 apache2 下,这个模块换名为 mod_deflate
,对应的模块文件名是 mod_deflate.so
。mod_gzip 本文不做介绍,下面描述一下在 Apache 2 下如何启用并配置 mod_deflate
模块。默认安装的 Apache 不管是 Windows 还是 Linux/Unix,都是不启用该模块的, Linux/Unix 下甚至不带该模块,你需要手工编译这个模块。
下面我们分别介绍在 Windows 和 Linux 操作系统下如何启用并配置 mod_deflate
模块。
在 Windows 下采用安装程序安装的 Apache 服务器已经带有 deflate 所需要的模块 mod_deflate.so
和 mod_headers.so
,我们只需要在 httpd.conf 配置文件中启用并进行相关的配置即可,配置如下:
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
<Location />
# Insert filter
SetOutputFilter DEFLATE
# Netscape 4.x has some problems...
BrowserMatch ^Mozilla/4 gzip-only-text/html
# Netscape 4.06-4.08 have some more problems
BrowserMatch ^Mozilla/4\.0[678] no-gzip
# MSIE masquerades as Netscape, but it is fine
# BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
# the above regex won't work. You can use the following
# workaround to get the desired effect:
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
# Don't compress images
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary
</Location>
|
而如果是 Linux/Unix 操作系统,如果你没有在编译安装的过程中将所需要的两个模块 mod_deflate
和 mod_headers
编译进去的话,那就稍微有点麻烦,首先我们先看如何在编译安装 Apache 过程中也同时编译这两个模块,请在执行 configure 程序时增加两个参数分别是:
# ./configure --enable-deflate --enable-headers
|
这样在编译完 Apache 后就可以直接在 httpd.conf 中启用并配置 deflate
模块了,配置的方法跟 Windows 平台下是相同的。
如果说您的 Apache 已经在运行了,不想再重新编译一次,那也可以选择只编译 deflate
模块所需的文件 mod_deflate.c
和 mod_headers.c
。这两个文件位于 {apache-src}/modules/filters/
目录下(其中 {apache-src}
为 apache 源文件所在的目录)。使用如下命令来单独编译这两个源文件。
# {apache-bin}/apxs -i -a -c {apache-src}/modules/filters/mod_deflate.c
# {apache-bin}/apxs –i –a –c {apache-src}/modules/filters/mod_headers.c
|
其中 {apache-bin}
为 Apache 安装目录下的 bin 目录,接下来在 httpd.conf 直接配置该模块即可。
很多时候你在单独编译 deflate
模块的时候可能会碰到编译错误,提示是:
Cannot load /opt/apache/modules/mod_deflate.so into server: /opt/apache/modules/mod_deflate.so: undefined symbol: deflate
解决的方法如下:
编辑 /usr/local/apache2/bin/apr-config
文件修改其中的 LDFLAGS 值为 "-lz",然后再重新编译 mod_deflate
模块,apxs -ica mod_deflate.c
即可。
为了省却不必要的麻烦,请尽量在编译安装时直接加上 --enable-deflate --enable-headers
参数。
三.Tomcat
1.APR支持
2.URL字符编码集过滤 URIEncoding="GBK"
3.压缩支持
compression="on"
compressionMinSize="256"
noCompressionUserAgents="gozilla,traviata"
compressableMimeType="text/html,text/xml,text/css,text/javascript
2. 手工压缩静态内容
用gzip先压缩好静态内容的文件,改用一个文件扩展名。在网页中引用静态内容文件。
关键是要实现一个过滤器,设置压缩的静态内容文件响应的Http头信息:
response.setHeader("Content-Encoding", "gzip");
或者
response.setHeader("Content-Encoding", "x-gzip");
四.HTML压缩方面参照
http://www.ibm.com/developerworks/cn/web/wa-lo-webcompress/
分享到:
相关推荐
具体内容包括:基于用户体验的性能优化要素、前端性能优化实战、网站性能分析、服务端性能优化、TCP优化、DNS优化、CDN优化、大型网站性能监控体系、大型网站容量评估、高性能系统架构模式、大促保障体系、数据分析...
C++性能优化是一个复杂的主题,它涉及编译器、算法、语言特性、硬件架构以及操作系统等多个层面。性能优化的目标是提升软件执行效率,减少资源消耗,缩短响应时间,以及提高吞吐量。下面将详细介绍这些性能优化的...
在前端开发领域,性能优化是提升用户体验的关键环节。"前端性能优化与实践.zip"这个压缩包包含了一系列关于前端性能优化的深度文章和教程,涵盖了浏览器缓存机制、首屏加载优化、服务端渲染、事件处理策略、图片优化...
### 大型网站性能优化实战从前端网络CDN到后端大促的全链路性能优化 #### 一、基于用户体验的性能优化要素 在现代互联网应用中,用户体验是衡量一个网站成功与否的重要标准之一。良好的用户体验不仅仅体现在美观的...
MySQL性能优化金字塔法则 MySQL性能优化是指通过调整MySQL数据库的配置、优化数据库结构和查询语句等方式,提高MySQL数据库的性能和响应速度,以满足应用程序的需求。MySQL作为最流行的开源数据库之一,被广泛应用...
【Android性能优化】是Android开发中的重要环节,涵盖了多个关键领域,包括ANR问题解析、crash监控方案、启动速度与执行效率优化、内存优化、耗电优化、网络传输与数据存储优化以及APK大小优化。 **ANR问题解析**是...
VMware vSphere 6.7 性能优化最佳实践 VMware vSphere 6.7 是一款功能强大且流行的虚拟化平台,为用户提供了强大的虚拟化解决方案。然而,为了确保 VMware vSphere 6.7 的最佳性能,需要遵循一定的优化实践。本文将...
ORACLE SQL性能优化系列 ORACLE SQL性能优化是数据库管理员和开发者非常关心的一个话题。为了提高数据库的性能,ORACLE 提供了多种优化技术。下面我们将详细介绍 ORACLE SQL 性能优化系列中的一些重要知识点。 一...
MySQL性能优化是一个涵盖广泛的主题,涉及多个层面,包括SQL语句优化、索引优化、数据库表结构优化、系统级配置优化以及服务器硬件优化。以下是对这些方面进行详细说明: 1. **SQL语句优化** - **慢查询日志**:...
《C++高效编程:内存与性能优化》是一本专注于C++编程语言内存管理和性能调优的书籍。本书深入探讨了如何在C++编程中高效地使用内存资源,以及如何进行性能优化,以编写出既高效又优雅的代码。 书籍作者Rene ...
前端性能优化探索 前端性能优化是当前互联网开发中的一个重要话题。随着互联网技术的快速发展,Web前端技术也逐渐成为了互联网开发的重要一环。然而,在如今这个追求极致体验的时代,我们不仅要实现业务需求,更...
"MySQL性能优化和高可用架构实践" 本书《MySQL性能优化和高可用架构实践》是一本详细介绍MySQL性能优化和高可用架构实践的书籍,旨在帮助读者提升MySQL数据库的性能和可靠性。本书的内容涵盖了查询优化的基本原则和...
华为5G性能优化指导手册-SA主要关注5G网络在服务连续性和用户感知方面的优化,尤其在SA(独立组网)模式下。这份手册旨在解决网络中存在的“点、线”问题,确保NSA(非独立组网)网络稳定运行,提供优质的5G体验。 ...
《C程序性能优化-20个实验与达人技巧》是一本深入探讨C语言程序性能提升的书籍,旨在帮助开发者理解程序执行效率的本质,掌握优化技巧,从而编写出更高效的代码。书中通过20个精心设计的实验,由浅入深地讲解了性能...
在前端开发领域,性能优化是提升用户体验和网站可访问性的重要环节。这本"前端性能优化原理与实践"小册子深入探讨了如何通过一系列技术手段优化前端页面,旨在帮助开发者构建更快、更流畅的Web应用。以下是该压缩包...
Unity性能优化 Unity性能优化是指在游戏开发中提高游戏性能的过程,包括优化CPU和GPU的使用,以提高游戏的帧率和画质。下面是 Unity性能优化的相关知识点: 1. Unity性能调试工具及使用方法 Unity提供了多种...
SQLite3 的性能优化 SQLite3 是一个轻量级的关系数据库管理系统,常用于嵌入式系统中。在嵌入式系统中,数据库的性能优化尤为重要。本文将主要讲述在嵌入式中使用 SQLite3 时,对相关的数据库的性能如何优化的问题...
根据提供的文件信息,“ORACLE DATABASE 11G性能优化攻略_高清_美 Sam R Alapati.pdf”,我们可以推断出这份文档主要讲述了Oracle Database 11g版本中的性能优化策略和技术。下面将从多个角度来深入探讨Oracle ...
Unity性能优化是游戏开发中的重要环节,特别是在使用Unity3D引擎进行C#编程时,确保游戏运行流畅、资源高效利用是提升用户体验的关键。本PDF文档很可能是针对Unity引擎的性能优化策略进行深入探讨的资料,涵盖了多...