[jboss-svn-commits] JBL Code SVN: r5107 - in labs/jbossweb/trunk/docbook/usersguide/en: . images modules
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Jul 15 02:37:33 EDT 2006
Author: michael.yuan at jboss.com
Date: 2006-07-15 02:37:30 -0400 (Sat, 15 Jul 2006)
New Revision: 5107
Added:
labs/jbossweb/trunk/docbook/usersguide/en/images/architecture-fig05.png
Modified:
labs/jbossweb/trunk/docbook/usersguide/en/master.xml
labs/jbossweb/trunk/docbook/usersguide/en/modules/architecture.xml
labs/jbossweb/trunk/docbook/usersguide/en/modules/connectors.xml
Log:
doc update
Added: labs/jbossweb/trunk/docbook/usersguide/en/images/architecture-fig05.png
===================================================================
(Binary files differ)
Property changes on: labs/jbossweb/trunk/docbook/usersguide/en/images/architecture-fig05.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: labs/jbossweb/trunk/docbook/usersguide/en/master.xml
===================================================================
--- labs/jbossweb/trunk/docbook/usersguide/en/master.xml 2006-07-14 21:50:51 UTC (rev 5106)
+++ labs/jbossweb/trunk/docbook/usersguide/en/master.xml 2006-07-15 06:37:30 UTC (rev 5107)
@@ -6,7 +6,9 @@
<!ENTITY gettingstarted SYSTEM "modules/gettingstarted.xml">
<!ENTITY architecture SYSTEM "modules/architecture.xml">
<!ENTITY connectors SYSTEM "modules/connectors.xml">
-<!ENTITY modules SYSTEM "modules/modules.xml">
+<!ENTITY rewrite SYSTEM "modules/rewrite.xml">
+<!ENTITY php SYSTEM "modules/php.xml">
+<!ENTITY dotnet SYSTEM "modules/dotnet.xml">
<!ENTITY performance SYSTEM "modules/performance.xml">
]>
<book lang="en">
@@ -28,8 +30,12 @@
&connectors;
- &modules;
+ &rewrite;
+ &php;
+
+ &dotnet;
+
&performance;
</book>
Modified: labs/jbossweb/trunk/docbook/usersguide/en/modules/architecture.xml
===================================================================
--- labs/jbossweb/trunk/docbook/usersguide/en/modules/architecture.xml 2006-07-14 21:50:51 UTC (rev 5106)
+++ labs/jbossweb/trunk/docbook/usersguide/en/modules/architecture.xml 2006-07-15 06:37:30 UTC (rev 5107)
@@ -15,7 +15,7 @@
<title>JBoss Web Architecture</title>
<mediaobject>
<imageobject>
- <imagedata fileref="image/architecture-fig01.png" format="PNG"/>
+ <imagedata fileref="images/architecture-fig01.png" format="PNG"/>
</imageobject>
</mediaobject>
</figure>
@@ -67,7 +67,7 @@
<title>JBoss Web Extensions</title>
<mediaobject>
<imageobject>
- <imagedata fileref="image/architecture-fig02.png" format="PNG"/>
+ <imagedata fileref="images/architecture-fig02.png" format="PNG"/>
</imageobject>
</mediaobject>
</figure>
@@ -85,7 +85,7 @@
<title>Tomcat Native</title>
<mediaobject>
<imageobject>
- <imagedata fileref="image/architecture-fig03.png" format="PNG"/>
+ <imagedata fileref="images/architecture-fig03.png" format="PNG"/>
</imageobject>
</mediaobject>
</figure>
@@ -111,7 +111,7 @@
<title>Native Proxy</title>
<mediaobject>
<imageobject>
- <imagedata fileref="image/architecture-fig04.png" format="PNG"/>
+ <imagedata fileref="images/architecture-fig04.png" format="PNG"/>
</imageobject>
</mediaobject>
</figure>
@@ -143,4 +143,19 @@
</section>
+ <section>
+ <title>Configuration files in JBoss Web Server</title>
+
+ <para>JBoss Web Server has the same configuration model as the JBoss Application Server. That gives you an easy transition from JBoss Web Server to full-blown Application Server. <xref linkend="architecture-fig05"/> shows how the configuration files are organized in JBoss Web Server. Among them, the most important one is the server.xml file.</para>
+
+ <figure id="architecture-fig05">
+ <title>JBoss Web Architecture</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/architecture-fig05.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+
</chapter>
\ No newline at end of file
Modified: labs/jbossweb/trunk/docbook/usersguide/en/modules/connectors.xml
===================================================================
--- labs/jbossweb/trunk/docbook/usersguide/en/modules/connectors.xml 2006-07-14 21:50:51 UTC (rev 5106)
+++ labs/jbossweb/trunk/docbook/usersguide/en/modules/connectors.xml 2006-07-15 06:37:30 UTC (rev 5107)
@@ -2,108 +2,100 @@
<title>Configuring Connectors</title>
- <para>Connectors are crucial components in the JBoss Web Server. They are outward interface of the server. For instance, when a web browser client needs to connect to the server, it has to connect to one of the connectors. The connectors are configured as XML elements in the server.xml file.</para>
+ <para>Connectors are crucial components in the JBoss Web Server. They are outward interface of the server. For instance, when a web browser client needs to connect to the server, it has to connect to one of the connectors. The connectors are configured as XML elements in the server.xml file. In this chapter, we will cover HTTP, HTTPS and AJP connectors.</para>
- <note>
- <title>Configuration files in JBoss Web Server</title>
- <para>JBoss Web Server has the same configuration model as the JBoss Application Server. That gives you an easy transition from JBoss Web Server to full-blown Application Server. <xref linkend=""/> shows how the configuration files are organized in JBoss Web Server. Among them, the most important one is the server.xml file.</para>
- <figure id="configuration-fig01">
- <title>JBoss Web Architecture</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="image/configuration-fig01.png" format="PNG"/>
- </imageobject>
- </mediaobject>
- </figure>
- </note>
-
-
- <section>
- <title>The HTTP Connector</title>
+ <section>
+ <title>The HTTP Connector</title>
- <para> The HTTP connector uses sendfile for hadling large static files (all such files will be sent ansychronously using high performance kernel level calls), and uses a socket poller for keepalive, increasing scalability of the server. The following attributes are supported in the HTTP connector: </para>
+ <para>The HTTP connector uses sendfile for hadling large static files (all such files will be sent ansychronously using high performance kernel level calls), and uses a socket poller for keepalive, increasing scalability of the server. Below is an example configuration for the HTTP connector in server.xml.</para>
+
+ <programlisting>
+XXXXXX XXXX
+ </programlisting>
+
+ The following attributes are supported in the HTTP connector: </para>
- <table>
- <title>Attributes in the HTTP Connector</title>
<tgroup cols="2" >
<colspec colnum="1" colname="col1" colwidth="1*"/>
<colspec colnum="2" colname="col2" colwidth="1*"/>
+ <table>
+ <title>Attributes in the HTTP Connector</title>
<tgroup cols="2" >
<colspec colnum="1" colname="col1" colwidth="1*"/>
<colspec colnum="2" colname="col2" colwidth="1*"/>
- <thead>
<row>
<entry>Attribute</entry>
<entry>Description</entry>
</row>
</thead>
-
<tbody>
<row>
<entry>acceptCount</entry>
<entry>The maximum queue length for incoming connection requests when all possible request processing threads are in use. Any requests received when the queue is full will be refused. The default value is 10.</entry>
- </row>
- <row>
<entry>address</entry>
<entry>For servers with more than one IP address, this attribute specifies which address will be used for listening on the specified port. By default, this port will be used on all IP addresses associated with the server.</entry>
- </row>
- <row>
<entry>allowTrace</entry>
<entry>A boolean value which can be used to enable or disable the TRACE HTTP method. If not specified, this attribute is set to false.</entry>
- </row>
- <row>
<entry>bufferSize</entry>
<entry>The size (in bytes) of the buffer to be provided for input streams created by this connector. By default, buffers of 2048 bytes will be provided.</entry>
- </row>
- <row>
<entry>compressableMimeType</entry>
<entry>The value is a comma separated list of MIME types for which HTTP compression may be used. The default value is text/html,text/xml,text/plain.</entry>
- </row>
- <row>
<entry>compression</entry>
<entry>The Connector may use HTTP/1.1 GZIP compression in an attempt to save server bandwidth. The acceptable values for the parameter is "off" (disable compression), "on" (allow compression, which causes text data to be compressed), "force" (forces compression in all cases), or a numerical integer value (which is equivalent to "on", but specifies the minimum amount of data before the output is compressed). If the content-length is not known and compression is set to "on" or more aggressive, the output will also be compressed. If not specified, this attribute is set to "off".</entry>
- </row>
- <row>
<entry>connectionLinger</entry>
<entry>The number of milliseconds during which the sockets used by this Connector will linger when they are closed. The default value is -1 (socket linger is disabled).</entry>
- </row>
- <row>
<entry>connectionTimeout</entry>
<entry>The number of milliseconds this Connector will wait, after accepting a connection, for the request URI line to be presented. The default value is 60000 (i.e. 60 seconds).</entry>
- </row>
- <row>
<entry>disableUploadTimeout</entry>
<entry>This flag allows the servlet container to use a different, longer connection timeout while a servlet is being executed, which in the end allows either the servlet a longer amount of time to complete its execution, or a longer timeout during data upload. If not specified, this attribute is set to "false".</entry>
- </row>
- <row>
<entry>emptySessionPath</entry>
<entry>If set to true, all paths for session cookies will be set to /. This can be useful for portlet specification implementations, but will greatly affect performance if many applications are accessed on a given server by the client. If not specified, this attribute is set to false.</entry>
- </row>
- <row>
<entry>enableLookups</entry>
<entry>Set to true if you want calls to request.getRemoteHost() to perform DNS lookups in order to return the actual host name of the remote client. Set to false to skip the DNS lookup and return the IP address in String form instead (thereby improving performance). By default, DNS lookups are enabled.</entry>
- </row>
- <row>
<entry>firstReadTimeout</entry>
<entry>The first read of a request will be made using the specified timeout. If no data is available after the specified time, the socket will be placed in the poller. Setting this value to 0 will increase scalability, but will have a minor impact on latency (see the related pollTime attribute). The default value is 100 (100ms). Note: on Windows, the actual value of firstReadTimeout will be 500 + the specified value.</entry>
- </row>
- <row>
<entry>maxHttpHeaderSize</entry>
<entry>The maximum size of the request and response HTTP header, specified in bytes. If not specified, this attribute is set to 4096 (4 KB).</entry>
- </row>
- <row>
<entry>maxKeepAliveRequests</entry>
<entry>The maximum number of HTTP requests which can be pipelined until the connection is closed by the server. Setting this attribute to 1 will disable HTTP/1.0 keep-alive, as well as HTTP/1.1 keep-alive and pipelining. Setting this to -1 will allow an unlimited amount of pipelined or keep-alive HTTP requests. If not specified, this attribute is set to 100.</entry>
- </row>
- <row>
<entry>maxPostSize</entry>
<entry>The maximum size in bytes of the POST which will be handled by the container FORM URL parameter parsing. The limit can be disabled by setting this attribute to a value less than or equal to 0. If not specified, this attribute is set to 2097152 (2 megabytes).</entry>
- </row>
- <row>
<entry>maxSavePostSize</entry>
<entry>The maximum size in bytes of the POST which will be saved/buffered by the container during FORM or CLIENT-CERT authentication. For both types of authentication, the POST will be saved/buffered before the user is authenticated. For CLIENT-CERT authentication, the POST is buffered for the duration of the SSL handshake and the buffer emptied when the request is processed. For FORM authentication the POST is saved whilst the user is re-directed to the login form and is retained until the user successfully authenticates or the session associated with the authentication request expires. The limit can be disabled by setting this attribute to -1. Setting the attribute to zero will disable the saving of POST data during authentication. If not specified, this attribute is set to 4096 (4 kilobytes).</entry>
- </row>
- <row>
<entry>maxThreads</entry>
<entry>The maximum number of request processing threads to be created by this Connector, which therefore determines the maximum number of simultaneous requests that can be handled. If not specified, this attribute is set to 200.</entry>
- </row>
- <row>
<entry>noCompressionUserAgents</entry>
<entry>The value is a comma separated list of regular expressions matching user-agents of HTTP clients for which compression should not be used, because these clients, although they do advertise support for the feature, have a broken implementation. The default value is an empty String (regexp matching disabled).</entry>
- </row>
- <row>
<entry>pollTime</entry>
<entry>Duration of a poll call. Lowering this value will slightly decrease latency of connections being kept alive in some cases, but will use more CPU as more poll calls are being made. The default value is 5000 (5ms).</entry>
- </row>
- <row>
<entry>pollerSize</entry>
<entry>Amount of sockets that the poller responsible for polling kept alive connections can hold at a given time. Extra connections will be closed right away. The default value is 768, corresponding to 768 keepalive connections.</entry>
- </row>
- <row>
<entry>port</entry>
<entry>The TCP port number on which this Connector will create a server socket and await incoming connections. Your operating system will allow only one server application to listen to a particular port number on a particular IP address.</entry>
- </row>
- <row>
<entry>protocol</entry>
<entry>This attribute value must be HTTP/1.1 to use the HTTP handler, which is the default.</entry>
- </row>
- <row>
<entry>proxyName</entry>
<entry>If this Connector is being used in a proxy configuration, configure this attribute to specify the server name to be returned for calls to request.getServerName().</entry>
- </row>
- <row>
<entry>proxyPort</entry>
<entry>If this Connector is being used in a proxy configuration, configure this attribute to specify the server port to be returned for calls to request.getServerPort().</entry>
- </row>
- <row>
<entry>restrictedUserAgents</entry>
<entry>The value is a comma separated list of regular expressions matching user-agents of HTTP clients for which HTTP/1.1 or HTTP/1.0 keep alive should not be used, even if the clients advertise support for these features. The default value is an empty String (regexp matching disabled).</entry>
- </row>
- <row>
<entry>scheme</entry>
<entry>Set this attribute to the name of the protocol you wish to have returned by calls to request.getScheme(). For example, you would set this attribute to "https" for an SSL Connector. The default value is "http".</entry>
- </row>
- <row>
<entry>secure</entry>
<entry>Set this attribute to true if you wish to have calls to request.isSecure() to return true for requests received by this Connector (you would want this on an SSL Connector). The default value is false.</entry>
- </row>
- <row>
<entry>sendfileSize</entry>
<entry>Amount of sockets that the poller responsible for sending static files asynchronously can hold at a given time. Extra connections will be closed right away without any data being sent (resulting in a zero length file on the client side). Note that in most cases, sendfile is a call that will return right away (being taken care of "synchonously" by the kernel), and the sendfile poller will not be used, so the amount of static files which can be sent concurrently is much larger than the specified amount. The default value is 256.</entry>
- </row>
- <row>
<entry>server</entry>
<entry>The Server header for the http response. Unless your paranoid, you won't need this feature.</entry>
- </row>
- <row>
<entry>tcpNoDelay</entry>
<entry>If set to true, the TCP_NO_DELAY option will be set on the server socket, which improves performance under most circumstances. This is set to true by default.</entry>
- </row>
- <row>
<entry>threadPriority</entry>
<entry>The priority of the request processing threads within the JVM. The default value is java.lang.Thread#NORM_PRIORITY. See the JavaDoc for the java.lang.Thread class for more details on what this priority means.</entry>
- </row>
- <row>
<entry>URIEncoding</entry>
<entry>This specifies the character encoding used to decode the URI bytes, after %xx decoding the URL. If not specified, ISO-8859-1 will be used.</entry>
- </row>
- <row>
<entry>useBodyEncodingForURI</entry>
<entry>This specifies if the encoding specified in contentType should be used for URI query parameters, instead of using the URIEncoding. This setting is present for compatibility with Tomcat 4.1.x, where the encoding specified in the contentType, or explicitely set using Request.setCharacterEncoding method was also used for the parameters from the URL. The default value is false.</entry>
- </row>
- <row>
<entry>useIPVHosts</entry>
<entry>Set this attribute to true to cause JBoss Web to use the IP address that the request was recieved on to determine the Host to send the request to. The default value is false.</entry>
- </row>
- <row>
<entry>useSendfile</entry>
<entry>Use kernel level sendfile for certain static files. The default value is true.</entry>
- </row>
- <row>
<entry>xpoweredBy</entry>
<entry>Set this attribute to true to cause JBoss Web to advertise support for the Servlet specification using the header recommended in the specification. The default value is false.</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
+ <thead>
<row>
<entry>Attribute</entry>
<entry>Description</entry>
</row>
</thead>
+
<tbody>
<row>
<entry>acceptCount</entry>
<entry>The maximum queue length for incoming connection requests when all possible request processing threads are in use. Any requests received when the queue is full will be refused. The default value is 10.</entry>
+ </row>
+ <row>
<entry>address</entry>
<entry>For servers with more than one IP address, this attribute specifies which address will be used for listening on the specified port. By default, this port will be used on all IP addresses associated with the server.</entry>
+ </row>
+ <row>
<entry>allowTrace</entry>
<entry>A boolean value which can be used to enable or disable the TRACE HTTP method. If not specified, this attribute is set to false.</entry>
+ </row>
+ <row>
<entry>bufferSize</entry>
<entry>The size (in bytes) of the buffer to be provided for input streams created by this connector. By default, buffers of 2048 bytes will be provided.</entry>
+ </row>
+ <row>
<entry>compressableMimeType</entry>
<entry>The value is a comma separated list of MIME types for which HTTP compression may be used. The default value is text/html,text/xml,text/plain.</entry>
+ </row>
+ <row>
<entry>compression</entry>
<entry>The Connector may use HTTP/1.1 GZIP compression in an attempt to save server bandwidth. The acceptable values for the parameter is "off" (disable compression), "on" (allow compression, which causes text data to be compressed), "force" (forces compression in all cases), or a numerical integer value (which is equivalent to "on", but specifies the minimum amount of data before the output is compressed). If the content-length is not known and compression is set to "on" or more aggressive, the output will also be compressed. If not specified, this attribute is set to "off".</entry>
+ </row>
+ <row>
<entry>connectionLinger</entry>
<entry>The number of milliseconds during which the sockets used by this Connector will linger when they are closed. The default value is -1 (socket linger is disabled).</entry>
+ </row>
+ <row>
<entry>connectionTimeout</entry>
<entry>The number of milliseconds this Connector will wait, after accepting a connection, for the request URI line to be presented. The default value is 60000 (i.e. 60 seconds).</entry>
+ </row>
+ <row>
<entry>disableUploadTimeout</entry>
<entry>This flag allows the servlet container to use a different, longer connection timeout while a servlet is being executed, which in the end allows either the servlet a longer amount of time to complete its execution, or a longer timeout during data upload. If not specified, this attribute is set to "false".</entry>
+ </row>
+ <row>
<entry>emptySessionPath</entry>
<entry>If set to true, all paths for session cookies will be set to /. This can be useful for portlet specification implementations, but will greatly affect performance if many applications are accessed on a given server by the client. If not specified, this attribute is set to false.</entry>
+ </row>
+ <row>
<entry>enableLookups</entry>
<entry>Set to true if you want calls to request.getRemoteHost() to perform DNS lookups in order to return the actual host name of the remote client. Set to false to skip the DNS lookup and return the IP address in String form instead (thereby improving performance). By default, DNS lookups are enabled.</entry>
+ </row>
+ <row>
<entry>firstReadTimeout</entry>
<entry>The first read of a request will be made using the specified timeout. If no data is available after the specified time, the socket will be placed in the poller. Setting this value to 0 will increase scalability, but will have a minor impact on latency (see the related pollTime attribute). The default value is 100 (100ms). Note: on Windows, the actual value of firstReadTimeout will be 500 + the specified value.</entry>
+ </row>
+ <row>
<entry>maxHttpHeaderSize</entry>
<entry>The maximum size of the request and response HTTP header, specified in bytes. If not specified, this attribute is set to 4096 (4 KB).</entry>
+ </row>
+ <row>
<entry>maxKeepAliveRequests</entry>
<entry>The maximum number of HTTP requests which can be pipelined until the connection is closed by the server. Setting this attribute to 1 will disable HTTP/1.0 keep-alive, as well as HTTP/1.1 keep-alive and pipelining. Setting this to -1 will allow an unlimited amount of pipelined or keep-alive HTTP requests. If not specified, this attribute is set to 100.</entry>
+ </row>
+ <row>
<entry>maxPostSize</entry>
<entry>The maximum size in bytes of the POST which will be handled by the container FORM URL parameter parsing. The limit can be disabled by setting this attribute to a value less than or equal to 0. If not specified, this attribute is set to 2097152 (2 megabytes).</entry>
+ </row>
+ <row>
<entry>maxSavePostSize</entry>
<entry>The maximum size in bytes of the POST which will be saved/buffered by the container during FORM or CLIENT-CERT authentication. For both types of authentication, the POST will be saved/buffered before the user is authenticated. For CLIENT-CERT authentication, the POST is buffered for the duration of the SSL handshake and the buffer emptied when the request is processed. For FORM authentication the POST is saved whilst the user is re-directed to the login form and is retained until the user successfully authenticates or the session associated with the authentication request expires. The limit can be disabled by setting this attribute to -1. Setting the attribute to zero will disable the saving of POST data during authentication. If not specified, this attribute is set to 4096 (4 kilobytes).</entry>
+ </row>
+ <row>
<entry>maxThreads</entry>
<entry>The maximum number of request processing threads to be created by this Connector, which therefore determines the maximum number of simultaneous requests that can be handled. If not specified, this attribute is set to 200.</entry>
+ </row>
+ <row>
<entry>noCompressionUserAgents</entry>
<entry>The value is a comma separated list of regular expressions matching user-agents of HTTP clients for which compression should not be used, because these clients, although they do advertise support for the feature, have a broken implementation. The default value is an empty String (regexp matching disabled).</entry>
+ </row>
+ <row>
<entry>pollTime</entry>
<entry>Duration of a poll call. Lowering this value will slightly decrease latency of connections being kept alive in some cases, but will use more CPU as more poll calls are being made. The default value is 5000 (5ms).</entry>
+ </row>
+ <row>
<entry>pollerSize</entry>
<entry>Amount of sockets that the poller responsible for polling kept alive connections can hold at a given time. Extra connections will be closed right away. The default value is 768, corresponding to 768 keepalive connections.</entry>
+ </row>
+ <row>
<entry>port</entry>
<entry>The TCP port number on which this Connector will create a server socket and await incoming connections. Your operating system will allow only one server application to listen to a particular port number on a particular IP address.</entry>
+ </row>
+ <row>
<entry>protocol</entry>
<entry>This attribute value must be HTTP/1.1 to use the HTTP handler, which is the default.</entry>
+ </row>
+ <row>
<entry>proxyName</entry>
<entry>If this Connector is being used in a proxy configuration, configure this attribute to specify the server name to be returned for calls to request.getServerName().</entry>
+ </row>
+ <row>
<entry>proxyPort</entry>
<entry>If this Connector is being used in a proxy configuration, configure this attribute to specify the server port to be returned for calls to request.getServerPort().</entry>
+ </row>
+ <row>
<entry>restrictedUserAgents</entry>
<entry>The value is a comma separated list of regular expressions matching user-agents of HTTP clients for which HTTP/1.1 or HTTP/1.0 keep alive should not be used, even if the clients advertise support for these features. The default value is an empty String (regexp matching disabled).</entry>
+ </row>
+ <row>
<entry>scheme</entry>
<entry>Set this attribute to the name of the protocol you wish to have returned by calls to request.getScheme(). For example, you would set this attribute to "https" for an SSL Connector. The default value is "http".</entry>
+ </row>
+ <row>
<entry>secure</entry>
<entry>Set this attribute to true if you wish to have calls to request.isSecure() to return true for requests received by this Connector (you would want this on an SSL Connector). The default value is false.</entry>
+ </row>
+ <row>
<entry>sendfileSize</entry>
<entry>Amount of sockets that the poller responsible for sending static files asynchronously can hold at a given time. Extra connections will be closed right away without any data being sent (resulting in a zero length file on the client side). Note that in most cases, sendfile is a call that will return right away (being taken care of "synchonously" by the kernel), and the sendfile poller will not be used, so the amount of static files which can be sent concurrently is much larger than the specified amount. The default value is 256.</entry>
+ </row>
+ <row>
<entry>server</entry>
<entry>The Server header for the http response. Unless your paranoid, you won't need this feature.</entry>
+ </row>
+ <row>
<entry>tcpNoDelay</entry>
<entry>If set to true, the TCP_NO_DELAY option will be set on the server socket, which improves performance under most circumstances. This is set to true by default.</entry>
+ </row>
+ <row>
<entry>threadPriority</entry>
<entry>The priority of the request processing threads within the JVM. The default value is java.lang.Thread#NORM_PRIORITY. See the JavaDoc for the java.lang.Thread class for more details on what this priority means.</entry>
+ </row>
+ <row>
<entry>URIEncoding</entry>
<entry>This specifies the character encoding used to decode the URI bytes, after %xx decoding the URL. If not specified, ISO-8859-1 will be used.</entry>
+ </row>
+ <row>
<entry>useBodyEncodingForURI</entry>
<entry>This specifies if the encoding specified in contentType should be used for URI query parameters, instead of using the URIEncoding. This setting is present for compatibility with Tomcat 4.1.x, where the encoding specified in the contentType, or explicitely set using Request.setCharacterEncoding method was also used for the parameters from the URL. The default value is false.</entry>
+ </row>
+ <row>
<entry>useIPVHosts</entry>
<entry>Set this attribute to true to cause JBoss Web to use the IP address that the request was recieved on to determine the Host to send the request to. The default value is false.</entry>
+ </row>
+ <row>
<entry>useSendfile</entry>
<entry>Use kernel level sendfile for certain static files. The default value is true.</entry>
+ </row>
+ <row>
<entry>xpoweredBy</entry>
<entry>Set this attribute to true to cause JBoss Web to advertise support for the Servlet specification using the header recommended in the specification. The default value is false.</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
- </section>
+ </section>
<section>
<title>The HTTPS Connector</title>
@@ -161,10 +153,74 @@
<para>The AJP connector is used for machine-to-machine communication. If another server (e.g., an Apache web server or a load balancer) needs to access services on JBoss Web Server, it can use the AJP connector. It is more efficient than the HTTP connector, which targets web browsers.</para>
- <para> The AJP connector uses a socket poller for keepalive, increasing scalability of the server. As AJP is designed around a pool of persistent (or almost persistent) connections, this will reduce significantly the amount of processing threads needed by JBoss Web. Unlike the HTTP connector, the AJP connector cannot use sendfile to optimize static file processing. The following attributes are supported in the AJP connector</para>
+ <para> The AJP connector uses a socket poller for keepalive, increasing scalability of the server. As AJP is designed around a pool of persistent (or almost persistent) connections, this will reduce significantly the amount of processing threads needed by JBoss Web. Unlike the HTTP connector, the AJP connector cannot use sendfile to optimize static file processing. Below is an example configuration for an AJP connector.</para>
+
+ <programlisting>
+XXXXX XXXXXXX
+ </programlisting>
+
+ <para>The following attributes are supported in the AJP connector. Many of the attributes are very similar to the HTTP connector we have seen above.</para>
+ <table>
+ <title>Attributes in the AJP Connector</title>
<tgroup cols="2" >
<colspec colnum="1" colname="col1" colwidth="1*"/>
<colspec colnum="2" colname="col2" colwidth="1*"/>
+
+ <thead>
<row>
<entry>Attribute</entry>
<entry>Description</entry>
</row>
</thead>
+
<tbody>
<row>
<entry>acceptCount</entry>
<entry>The maximum queue length for incoming connection requests when all possible request processing threads are in use. Any requests received when the queue is full will be refused. The default value is 10.</entry>
+ </row>
+ <row>
<entry>address</entry>
<entry>For servers with more than one IP address, this attribute specifies which address will be used for listening on the specified port. By default, this port will be used on all IP addresses associated with the server. A value of 127.0.0.1 indicates that the Connector will only listen on the loopback interface.</entry>
+ </row>
+ <row>
<entry>allowTrace</entry>
<entry>A boolean value which can be used to enable or disable the TRACE HTTP method. If not specified, this attribute is set to false.</entry>
+ </row>
+ <row>
<entry>connectionTimeout</entry>
<entry>The number of milliseconds this Connector will wait, after accepting a connection, for the request URI line to be presented. The default value is infinite (i.e. no timeout).</entry>
+ </row>
+ <row>
<entry>emptySessionPath</entry>
<entry>If set to true, all paths for session cookies will be set to /. This can be useful for portlet specification implementations, but will greatly affect performance if many applications are accessed on a given server by the client. If not specified, this attribute is set to false.</entry>
+ </row>
+ <row>
<entry>enableLookups</entry>
<entry>Set to true if you want calls to request.getRemoteHost() to perform DNS lookups in order to return the actual host name of the remote client. Set to false to skip the DNS lookup and return the IP address in String form instead (thereby improving performance). By default, DNS lookups are enabled.</entry>
+ </row>
+ <row>
<entry>firstReadTimeout</entry>
<entry>The first read of a request will be made using the specified timeout. If no data is available after the specified time, the socket will be placed in the poller. Setting this value to 0 will increase scalability, but will have a minor impact on latency (see the related pollTime attribute). The default value is 100 (100ms). Note: on Windows, the actual value of firstReadTimeout will be 500 + the specified value.</entry>
+ </row>
+ <row>
<entry>maxPostSize</entry>
<entry>The maximum size in bytes of the POST which will be handled by the container FORM URL parameter parsing. The feature can be disabled by setting this attribute to a value less than or equal to 0. If not specified, this attribute is set to 2097152 (2 megabytes).</entry>
+ </row>
+ <row>
<entry>maxSavePostSize</entry>
<entry>The maximum size in bytes of the POST which will be saved/buffered by the container during FORM or CLIENT-CERT authentication. For both types of authentication, the POST will be saved/buffered before the user is authenticated. For CLIENT-CERT authentication, the POST is buffered for the duration of the SSL handshake and the buffer emptied when the request is processed. For FORM authentication the POST is saved whilst the user is re-directed to the login form and is retained until the user successfully authenticates or the session associated with the authentication request expires. The limit can be disabled by setting this attribute to -1. Setting the attribute to zero will disable the saving of POST data during authentication. If not specified, this attribute is set to 4096 (4 kilobytes).</entry>
+ </row>
+ <row>
<entry>maxThreads</entry>
<entry>The maximum number of request processing threads to be created by this Connector, which therefore determines the maximum number of simultaneous requests that can be handled. If not specified, this attribute is set to 200.</entry>
+ </row>
+ <row>
<entry>pollTime</entry>
<entry>Duration of a poll call. Lowering this value will slightly decrease latency of connections being kept alive in some cases, but will use more CPU as more poll calls are being made. The default value is 5000 (5ms).</entry>
+ </row>
+ <row>
<entry>pollerSize</entry>
<entry>Amount of sockets that the poller responsible for polling kept alive connections can hold at a given time. Extra connections will be closed right away. The default value is 768, corresponding to 768 keepalive connections.</entry>
+ </row>
+ <row>
<entry>port</entry>
<entry>The TCP port number on which this Connector will create a server socket and await incoming connections. Your operating system will allow only one server application to listen to a particular port number on a particular IP address.</entry>
+ </row>
+ <row>
<entry>protocol</entry>
<entry>This attribute value must be AJP/1.3 to use the AJP handler.</entry>
+ </row>
+ <row>
<entry>proxyName</entry>
<entry>If this Connector is being used in a proxy configuration, configure this attribute to specify the server name to be returned for calls to request.getServerName().</entry>
+ </row>
+ <row>
<entry>proxyPort</entry>
<entry>If this Connector is being used in a proxy configuration, configure this attribute to specify the server port to be returned for calls to request.getServerPort().</entry>
+ </row>
+ <row>
<entry>redirectPort</entry>
<entry>If this Connector is supporting non-SSL requests, and a request is received for which a matching <security-constraint> requires SSL transport, Catalina will automatically redirect the request to the port number specified here.</entry>
+ </row>
+ <row>
<entry>request.registerRequests</entry>
<entry>This attribute controls request registration for JMX monitoring of the Connector. It is enabled by default, but may be turned it off to save a bit of memory.</entry>
+ </row>
+ <row>
<entry>scheme</entry>
<entry>Set this attribute to the name of the protocol you wish to have returned by calls to request.getScheme(). For example, you would set this attribute to "https" for an SSL Connector. The default value is "http".</entry>
+ </row>
+ <row>
<entry>secure</entry>
<entry>Set this attribute to true if you wish to have calls to request.isSecure() to return true for requests received by this Connector (you would want this on an SSL Connector). The default value is false.</entry>
+ </row>
+ <row>
<entry>tcpNoDelay</entry>
<entry>If set to true, the TCP_NO_DELAY option will be set on the server socket, which improves performance under most circumstances. This is set to true by default.</entry>
+ </row>
+ <row>
<entry>tomcatAuthentication</entry>
<entry>If set to true, the authetication will be done in Jboss Web. Otherwise, the authenticated principal will be propagated from the native webaserver and used for authorization in JBoss Web. The default value is true.</entry>
+ </row>
+ <row>
<entry>URIEncoding</entry>
<entry>This specifies the character encoding used to decode the URI bytes, after %xx decoding the URL. If not specified, ISO-8859-1 will be used. </entry>
+ </row>
+ <row>
<entry>useBodyEncodingForURI</entry>
<entry>This specifies if the encoding specified in contentType should be used for URI query parameters, instead of using the URIEncoding. This setting is present for compatibility with Tomcat 4.1.x, where the encoding specified in the contentType, or explicitely set using Request.setCharacterEncoding method was also used for the parameters from the URL. The default value is false.</entry>
+ </row>
+ <row>
<entry>useIPVHosts</entry>
<entry>Set this attribute to true to cause JBoss Web to use the ServerName passed by the native web server to determine the Host to send the request to. The default value is false.</entry>
+ </row>
+ <row>
<entry>xpoweredBy</entry>
<entry>Set this attribute to true to cause JBoss Web to advertise support for the Srevlet specification using the header recommended in the specification. The default value is false.</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
-
</section>
<section>
More information about the jboss-svn-commits
mailing list