simon colston£¬ÄúºÃ£¡
Thanks for your reply, but I use JSDK1.3.0.04, not 1.3.1, and do you found the same
problem of my JVM?
Such like this, when I restart tomcat, JAVA occupy 14M memory, after some times, JAVA
occupy 23M or more Memory, do you have this problem? The memory of JAVA increased by
time!!!
I 'm not familiar with IBM JVM,where can I found IBM JVM?
And will it work good with tomcat? will IBM JVM have all functions of JDK JVM?
Thanks a lot!
ÔÚ 2001-09-20 18:01:00 ÄúдµÀ£º
>I've found the Sun JVM 1.3.1 to be unstable on Linux 6.2 and 7.1. Tomcat kept
>crashing at random intervals (sometime a few days, sometimes a few hours). I
>switched to the IBM JVM and it started to run OK - no crashing. Maybe you'd like to
>give that a try.
>
>On Thu, 20 Sep 2001 14:28:39 +0530
>Dinu Jose <[EMAIL PROTECTED]> wrote:
>
>DJ> Hello All,
>DJ> I am also facing a similar scenario and the situation is still more worse,i.
>DJ> e.,tomcat is down every two hours.If restarted,it works fine and will be
>DJ> down after two hours.Please help .
>DJ> Thanks in advance
>DJ> Dinu
>DJ>
>DJ>
>DJ> -----Original Message-----
>DJ> From: akilus [mailto:[EMAIL PROTECTED]]
>DJ> Sent: Thursday, September 20, 2001 2:17 PM
>DJ> To: [EMAIL PROTECTED]
>DJ> Subject: Help, My Tomcat always down everyday!
>DJ>
>DJ>
>DJ> Hello, Everybody!
>DJ> My Tomcat always down everyday, I don't know why, and I don't find anything
>DJ> useful in my log files.
>DJ> and when I restart Tomcat, everything will go correctly, but after some
>DJ> time, normally in noon, the tomcat will down again.
>DJ> And another thing is :The memory that jdk occupy increase with time, I don't
>DJ> know whether it is normal or abnormal.
>DJ> Who can tell me several possible reasons about this? I use redhat
>DJ> 6.2,Apache1.3.12, Tomcat3.2.2 and j2sdk1.3.0.04 for linux.
>DJ> The below is my configuration for tomcat, other files is not modified:
>DJ> Tomcat.conf:
>DJ> ///////////////////////////////
>DJ>
>DJ>
>DJ> ############################################################################
>DJ> ###
>DJ> # Apache JServ Configuration File
>DJ> #
>DJ> ############################################################################
>DJ> ###
>DJ>
>DJ> # Note: this file should be appended or included into your httpd.conf
>DJ>
>DJ> # Tell Apache on win32 to load the Apache JServ communication module
>DJ> # LoadModule jserv_module modules/ApacheModuleJServ.dll
>DJ>
>DJ> # Tell Apache on Unix to load the Apache JServ communication module
>DJ> # For shared object builds only!!!
>DJ> # @LOAD_OR_NOT@LoadModule jserv_module @LIBEXECDIR@/mod_jserv.so
>DJ> LoadModule jserv_module libexec/mod_jserv.so
>DJ>
>DJ> <IfModule mod_jserv.c>
>DJ> # Do not edit!
>DJ> ApJServManual on
>DJ> ApJServDefaultProtocol ajpv12
>DJ> ApJServSecretKey DISABLED
>DJ> ApJServMountCopy on
>DJ> ApJServLogLevel notice
>DJ>
>DJ>
>DJ> ### Change if you run tomcat on a different host
>DJ> #ApJServDefaultHost localhost
>DJ> ApJServDefaultPort 8007
>DJ>
>DJ>
>DJ> #################### All jsp files will go to tomcat ####################
>DJ> ApJServMount default /root
>DJ>
>DJ> AddType text/jsp .jsp
>DJ> AddHandler jserv-servlet .jsp
>DJ>
>DJ> Alias /app /home/httpd/html
>DJ>
>DJ> <Directory "/home/httpd/html">
>DJ> Options FollowSymLinks
>DJ> </Directory>
>DJ>
>DJ> <Location /app/WEB-INF/>
>DJ> AllowOverride None
>DJ> deny from all
>DJ> </Location>
>DJ>
>DJ> <LocationMatch /app/*.jsp>
>DJ> setHandler jserv-servlet
>DJ> </LocationMatch>
>DJ>
>DJ> ############################## Context mapping - all requests go to tomcat
>DJ>
>DJ> ApJServMount /examples /root
>DJ>
>DJ> ############################## Context mapping - you need to "deploy"
>DJ> # ( copy or ln -s ) the context into htdocs
>DJ> ##
>DJ>
>DJ> # ApJservMount /CONTEXT/servlet /root
>DJ> # <Location /CONTEXT/WEB-INF/ >
>DJ> # AllowOverride None
>DJ> # deny from all
>DJ> # </Location>
>DJ>
>DJ> ApJServMount /app/servlet /app
>DJ>
>DJ> ApJServMount /servlet /ROOT
>DJ>
>DJ> </IfModule>
>DJ> ///////////////////////////////////////////
>DJ> server.xml
>DJ> //////////////////
>DJ> <?xml version="1.0" encoding="ISO-8859-1"?>
>DJ>
>DJ> <Server>
>DJ> <!-- Debug low-level events in XmlMapper startup -->
>DJ> <xmlmapper:debug level="0" />
>DJ>
>DJ> <!--
>DJ>
>DJ> Logging:
>DJ>
>DJ> Logging in Tomcat is quite flexible; we can either have a log
>DJ> file per module (example: ContextManager) or we can have one
>DJ> for Servlets and one for Jasper, or we can just have one
>DJ> tomcat.log for both Servlet and Jasper. Right now there are
>DJ> three standard log streams, "tc_log", "servlet_log", and
>DJ> "JASPER_LOG".
>DJ>
>DJ> Path:
>DJ>
>DJ> The file to which to output this log, relative to
>DJ> TOMCAT_HOME. If you omit a "path" value, then stderr or
>DJ> stdout will be used.
>DJ>
>DJ> Verbosity:
>DJ>
>DJ> Threshold for which types of messages are displayed in the
>DJ> log. Levels are inclusive; that is, "WARNING" level displays
>DJ> any log message marked as warning, error, or fatal. Default
>DJ> level is WARNING.
>DJ>
>DJ> verbosityLevel values can be:
>DJ> FATAL
>DJ> ERROR
>DJ> WARNING
>DJ> INFORMATION
>DJ> DEBUG
>DJ>
>DJ> Timestamps:
>DJ>
>DJ> By default, logs print a timestamp in the form "yyyy-MM-dd
>DJ> hh:mm:ss" in front of each message. To disable timestamps
>DJ> completely, set 'timestamp="no"'. To use the raw
>DJ> msec-since-epoch, which is more efficient, set
>DJ> 'timestampFormat="msec"'. If you want a custom format, you
>DJ> can use 'timestampFormat="hh:mm:ss"' following the syntax of
>DJ> java.text.SimpleDateFormat (see Javadoc API). For a
>DJ> production environment, we recommend turning timestamps off,
>DJ> or setting the format to "msec".
>DJ>
>DJ> Custom Output:
>DJ>
>DJ> "Custom" means "normal looking". "Non-custom" means
>DJ> "surrounded with funny xml tags". In preparation for
>DJ> possibly disposing of "custom" altogether, now the default is
>DJ> 'custom="yes"' (i.e. no tags)
>DJ>
>DJ> Per-component Debugging:
>DJ>
>DJ> Some components accept a "debug" attribute. This further
>DJ> enhances log output. If you set the "debug" level for a
>DJ> component, it may output extra debugging information.
>DJ> -->
>DJ>
>DJ> <!-- if you don't want messages on screen, add the attribute
>DJ> path="logs/tomcat.log"
>DJ> to the Logger element below
>DJ> -->
>DJ> <!--
>DJ> <Logger name="tc_log"
>DJ> verbosityLevel = "INFORMATION"
>DJ> path="logs/tomcat.log"
>DJ> />
>DJ> -->
>DJ>
>DJ> <Logger name="tc_log"
>DJ> verbosityLevel = "DEBUG"
>DJ> path="logs/tomcat.log"
>DJ> />
>DJ>
>DJ> <Logger name="servlet_log"
>DJ> verbosityLevel = "DEBUG"
>DJ> path="logs/servlet.log"
>DJ> />
>DJ>
>DJ> <Logger name="JASPER_LOG"
>DJ> path="logs/jasper.log"
>DJ> verbosityLevel = "DEBUG" />
>DJ>
>DJ> <!-- You can add a "home" attribute to represent the "base" for
>DJ> all relative paths. If none is set, the TOMCAT_HOME property
>DJ> will be used, and if not set "." will be used.
>DJ> webapps/, work/ and logs/ will be relative to this ( unless
>DJ> set explicitely to absolute paths ).
>DJ>
>DJ> You can also specify a "randomClass" attribute, which determines
>DJ> a subclass of java.util.Random will be used for generating session
>DJ> IDs.
>DJ> By default this is "java.security.SecureRandom".
>DJ> Specifying "java.util.Random" will speed up Tomcat startup,
>DJ> but it will cause sessions to be less secure.
>DJ>
>DJ> You can specify the "showDebugInfo" attribute to control whether
>DJ> debugging information is displayed in Tomcat's default responses.
>DJ> This debugging information includes:
>DJ> 1. Stack traces for exceptions
>DJ> 2. Request URI's that cause status codes >= 400
>DJ> The default is "true", so you must specify "false" to prevent
>DJ> the debug information from appearing. Since the debugging
>DJ> information reveals internal details about what Tomcat is serving,
>DJ> set showDebugInfo="false" if you wish increased security.
>DJ> -->
>DJ> <ContextManager debug="0" workDir="work" showDebugInfo="true" >
>DJ>
>DJ> <!-- ==================== Interceptors ==================== -->
>DJ>
>DJ> <!--
>DJ> ContextInterceptor className="org.apache.tomcat.context.LogEvents"
>DJ> -->
>DJ>
>DJ> <ContextInterceptor className="org.apache.tomcat.context.AutoSetup"
>DJ> />
>DJ>
>DJ> <ContextInterceptor
>DJ> className="org.apache.tomcat.context.WebXmlReader" />
>DJ>
>DJ> <!-- Uncomment out if you have JDK1.2 and want to use policy
>DJ> <ContextInterceptor
>DJ> className="org.apache.tomcat.context.PolicyInterceptor" />
>DJ> -->
>DJ>
>DJ> <ContextInterceptor
>DJ> className="org.apache.tomcat.context.LoaderInterceptor" />
>DJ> <ContextInterceptor
>DJ> className="org.apache.tomcat.context.DefaultCMSetter" />
>DJ> <ContextInterceptor
>DJ> className="org.apache.tomcat.context.WorkDirInterceptor" />
>DJ>
>DJ> <!-- Request processing -->
>DJ> <!-- Session interceptor will extract the session id from cookies
>DJ> and
>DJ> deal with URL rewriting ( by fixing the URL ). If you wish to
>DJ> suppress the use of cookies for session identifiers, change the
>DJ> "noCookies" attribute to "true"
>DJ> -->
>DJ> <RequestInterceptor
>DJ> className="org.apache.tomcat.request.SessionInterceptor"
>DJ> noCookies="false" />
>DJ>
>DJ> <!-- Find the container ( context and prefix/extension map )
>DJ> for a request.
>DJ> -->
>DJ> <RequestInterceptor
>DJ> className="org.apache.tomcat.request.SimpleMapper1"
>DJ> debug="0" />
>DJ>
>DJ> <!-- Non-standard invoker, for backward compat. ( /servlet/* )
>DJ> You can modify the prefix that is matched by adjusting the
>DJ> "prefix" parameter below. Be sure your modified pattern
>DJ> starts and ends with a slash.
>DJ>
>DJ> NOTE: This prefix applies to *all* web applications that
>DJ> are running in this instance of Tomcat.
>DJ> -->
>DJ> <RequestInterceptor
>DJ> className="org.apache.tomcat.request.InvokerInterceptor"
>DJ> debug="0" prefix="/servlet/" />
>DJ>
>DJ> <!-- "default" handler - static files and dirs. Set the
>DJ> "suppress" property to "true" to suppress directory listings
>DJ> when no welcome file is present.
>DJ>
>DJ> NOTE: This setting applies to *all* web applications that
>DJ> are running in this instance of Tomcat.
>DJ> -->
>DJ> <RequestInterceptor
>DJ> className="org.apache.tomcat.request.StaticInterceptor"
>DJ> debug="0" suppress="false" />
>DJ>
>DJ> <!-- Plug a session manager. You can plug in more advanced session
>DJ> modules.
>DJ> -->
>DJ> <RequestInterceptor
>DJ> className="org.apache.tomcat.session.StandardSessionInterceptor"
>DJ> />
>DJ>
>DJ> <!-- Check if the request requires an authenticated role.
>DJ> -->
>DJ> <RequestInterceptor
>DJ> className="org.apache.tomcat.request.AccessInterceptor"
>DJ> debug="0" />
>DJ>
>DJ> <!-- Check permissions using the simple xml file. You can
>DJ> plug more advanced authentication modules.
>DJ> -->
>DJ> <RequestInterceptor
>DJ> className="org.apache.tomcat.request.SimpleRealm"
>DJ> debug="0" />
>DJ>
>DJ> <!-- UnComment the following and comment out the
>DJ> above to get a JDBC realm.
>DJ> Other options for driverName:
>DJ> driverName="oracle.jdbc.driver.OracleDriver"
>DJ> connectionURL="jdbc:oracle:thin:@ntserver:1521:ORCL"
>DJ> connectionName="scott"
>DJ> connectionPassword="tiger"
>DJ>
>DJ> driverName="org.gjt.mm.mysql.Driver"
>DJ> connectionURL="jdbc:mysql://localhost/authority"
>DJ> connectionName="test"
>DJ> connectionPassword="test"
>DJ>
>DJ> "connectionName" and "connectionPassword" are optional.
>DJ> -->
>DJ> <!--
>DJ> <RequestInterceptor
>DJ> className="org.apache.tomcat.request.JDBCRealm"
>DJ> debug="99"
>DJ> driverName="sun.jdbc.odbc.JdbcOdbcDriver"
>DJ> connectionURL="jdbc:odbc:TOMCAT"
>DJ> userTable="users"
>DJ> userNameCol="user_name"
>DJ> userCredCol="user_pass"
>DJ> userRoleTable="user_roles"
>DJ> roleNameCol="role_name" />
>DJ> -->
>DJ>
>DJ> <!-- Loaded last since JSP's that load-on-startup use request
>DJ> handling -->
>DJ> <ContextInterceptor
>DJ> className="org.apache.tomcat.context.LoadOnStartupInterceptor"
>DJ> />
>DJ>
>DJ> <!-- ==================== Connectors ==================== -->
>DJ>
>DJ> <!-- Normal HTTP
>DJ> <Connector className="org.apache.tomcat.service.PoolTcpConnector">
>DJ> <Parameter name="handler"
>DJ>
>DJ> value="org.apache.tomcat.service.http.HttpConnectionHandler"/>
>DJ> <Parameter name="port"
>DJ> value="8080"/>
>DJ> </Connector>
>DJ>
>DJ> -->
>DJ> <!--
>DJ> Uncomment this for SSL support.
>DJ> You _need_ to set up a server certificate if you want this
>DJ> to work, and you need JSSE.
>DJ> 1. Add JSSE jars to CLASSPATH
>DJ> 2. Edit java.home/jre/lib/security/java.security
>DJ> Add:
>DJ> security.provider.2=com.sun.net.ssl.internal.ssl.Provider
>DJ> 3. Do: keytool -genkey -alias tomcat -keyalg RSA
>DJ> RSA is essential to work with Netscape and IIS.
>DJ> Use "changeit" as password. ( or add keypass attribute )
>DJ> You don't need to sign the certificate.
>DJ>
>DJ> You can set parameter keystore and keypass if you want
>DJ> to change the default ( user.home/.keystore with changeit )
>DJ> -->
>DJ> <!--
>DJ> <Connector className="org.apache.tomcat.service.PoolTcpConnector">
>DJ> <Parameter name="handler"
>DJ>
>DJ> value="org.apache.tomcat.service.http.HttpConnectionHandler"/>
>DJ> <Parameter name="port"
>DJ> value="8443"/>
>DJ> <Parameter name="socketFactory"
>DJ> value="org.apache.tomcat.net.SSLSocketFactory" />
>DJ> </Connector>
>DJ> -->
>DJ>
>DJ> <!-- Apache AJP12 support. This is also used to shut down tomcat.
>DJ> -->
>DJ> <Connector className="org.apache.tomcat.service.PoolTcpConnector">
>DJ> <Parameter name="handler"
>DJ> value="org.apache.tomcat.service.connector.Ajp12ConnectionHandler"/>
>DJ> <Parameter name="port" value="8007"/>
>DJ> </Connector>
>DJ>
>DJ> <!-- ==================== Special webapps ==================== -->
>DJ> <!-- You don't need this if you place your app in webapps/
>DJ> and use defaults.
>DJ> For security you'll also need to edit tomcat.policy
>DJ>
>DJ> Defaults are: debug=0, reloadable=true, trusted=false
>DJ> (trusted allows you to access tomcat internal objects
>DJ> with FacadeManager ), crossContext=true (allows you to
>DJ> access other contexts via ServletContext.getContext())
>DJ>
>DJ> If security manager is enabled, you'll have read perms.
>DJ> in the webapps dir and read/write in the workdir.
>DJ> -->
>DJ>
>DJ> <!--
>DJ> <Context path="/examples"
>DJ> docBase="webapps/examples"
>DJ> crossContext="false"
>DJ> debug="0"
>DJ> reloadable="true" >
>DJ> </Context>
>DJ> -->
>DJ>
>DJ> <Context path="/" docBase="/home/httpd/html" debug="3" reloadable="true"/>
>DJ>
>DJ> <!-- Admin context will use tomcat.core to add/remove/get info about
>DJ> the webapplications and tomcat internals.
>DJ> By default it is not trusted - i.e. it is not allowed access to
>DJ>
>DJ> tomcat internals, only informations that are available to all
>DJ> servlets are visible.
>DJ>
>DJ> If you change this to true, make sure you set a password.
>DJ> -->
>DJ> <!-- <Context path="/admin"
>DJ> docBase="webapps/admin"
>DJ> crossContext="true"
>DJ> debug="0"
>DJ> reloadable="true"
>DJ> trusted="false" >
>DJ> </Context>
>DJ> -->
>DJ>
>DJ> <!-- Virtual host example -
>DJ> In "127.0.0.1" virtual host we'll reverse "/" and
>DJ> "/examples"
>DJ> (XXX need a better example )
>DJ> (use "http://127.0.0.1/examples" )
>DJ> <Host name="127.0.0.1" >
>DJ> <Context path=""
>DJ> docBase="webapps/examples" />
>DJ> <Context path="/examples"
>DJ> docBase="webapps/ROOT" />
>DJ> </Host>
>DJ> -->
>DJ>
>DJ> </ContextManager>
>DJ> </Server>
>DJ> //////////////////////////////////////////////////////////////////
>DJ>
>DJ>
>DJ>
>DJ> akilus
>DJ> [EMAIL PROTECTED]
>DJ>
ÖÂ
Àñ£¡
akilus
[EMAIL PROTECTED]