TechDocs


   Rubrik > Servlet Container > Tomcat >


    17.02.2011 15:25:03  Servlet Container > Tomcat    

Tomcat 5 Connector (HTTP/1.1) Einstellungen

Tomcat unterstützt Konnektoren für das HTTP, HTTPS und AJP Protokoll. Im folgenden werden Einstellungen für den HTTP-Connector beschrieben.

Tomcat Connector Architektur


server.xml Eintrag



Tomcat 5.x. Connector Attribute

(nicht vollständig)

 acceptCountMaximale Anzahl von in einer Warteschlange/Queue zu puffernden Anfragen für den Fall das alle Anfragen verarbeitenden Threads beschäftigt sind. Anfragen die darüber hinaus beim Tomcat Konnektor ankommen werden abgewiesen.
 
 addressIP Adresse unter welcher Tomcat erreichbar ist. Wird die Adresse nicht angegeben akzeptiert Tomcat Verbindungen auf allen Adressen des Host (in dem Fall der Host mehrere Adressen hat).
 
 bufferSizeGrösse des Connector Input Stream Buffers in Bytes, der Wert ist auf 2.048 Bytes voreingestellt.
 
 compressionConnector GZIP Kompressionseinstellungen zur Verringerung der zu übertragenden Datenmenge.
Gütige Werte sind:
  • off - Komprimierung ausschalten
  • on - Komprimierung einschalten
  • force - immer komprimieren
  • eine Zahl - Anzahl von Bytes, ab welcher komprimiert werden soll
Standardmäßig ist die Komprimierung ausgeschaltet.
 
 compressableMimeTypeKomma separierte Liste von MIME Typen für die die HTTP Kompression benutzt werden soll. Voreingestellt sind 'text/html', 'text/xml' und 'text/plain'.
 
 connectionTimeoutMillisekunden die der Konnektor nach dem Öffnen einer Verbindung auf die Anfrage URI wartet. Voreingestellt sind 60 Sekunden.
 
 debugLegt den Detaillierungsgrad der Debug-Ausgaben fest. 0 ist Standard und schaltet das Logging ab. Je höher der hier angegebene Wert je detaillierter wird geloggt. Eine Obergrenze ist nicht festgelegt. Bei einem Wert von 5 sind so gut wie alle Ausgaben zu erwarten.
 
 enableLookupsIst der Wert 'true' wird bei Aufruf von request.getRemoteHost() über ein DNS Lookup der Hostname des anfragenden Client abgefragt. Ist der Wert auf 'false' gesetzt findet keine DNS Abfrage statt und nur die IP-Adresse wird zurückgegeben. Die DNS Abfrage ist voreingestellt ausgeschaltet.
 
 maxThreadsMaximale Anzahl von Anfragen bearbeitenden Threads im Threadpool. Voreingestellt sind 200 Threads.
 
 maxSpareThreadsMaximale Anzahl von nicht genutzten gestarteten Threads ab denen Tomcatbeginnt die ungenutzten Threads zu beenden (voreingestellt ist 50).
 
 minSpareThreadsMinimale Anzahl von Threads die bei Initialisierung des Connector gestartet werden (voreingestellt ist 4).
 
 noCompressionUserAgentsListe von HTTP Clients (user-agents) für die die Komprimierung nicht durchgeführt werden soll. In der durch Kommas getrennte Liste könnenreguläre Ausdrücken angegeben werden. Voreingestellt ist der leere String.
 
 portPort an dem der HTTP Connector auf Anfragen wartet.
 
 protocolHTTP Protokoll, ist auf HTTP/1.1 zu setzen (Standard). Andere Werte sind nicht erlaubt und führen bei Initialisieren des Konnektor zu Fehlern.
 
 redirectPortPort an den SSL Anfragen weitergeleitet werden sollen.
 
 restrictedUserAgentsKomma separierte Liste von regulären Ausdrücken, welche 'user-agents' von HTTP Clients beschreiben für die HTTP/1.1 oder HTTP/1.0 'keep alive' deaktiviert werden soll, auch wenn diese die 'keep-alive' Eigenschaft unterstützen. Voreingestellt ist ein leerer String.
 
 secure'true' bezeichnet einen SSL-Connector (voreingestellt ist 'false')



  Tuning Tipps:

  • enableLookups auf false setzen, dadurch werden DNS Lookups vermieden
  • maxThreads und acceptCount sollten ausreichend gross eingestellt sein, die Tomcat Instanz muss die dadurch aufkommende Anfragelast allerdings auch verarbeiten können
  • bei den compression Einstellungen ist zwischen der Einsparung an Bandbreite und der zusätzlicher Server-Rechenleistung für das Komprimieren abzuwägen

Weitere Tomcat Links:
  =>Sticky Sessions im Tomcat Cluster konfigurieren
  =>Tomcat Cluster mit Apache Load Balancer (mod_jk)
  =>Session Replikation im Tomcat Cluster
  =>Mehrere Tomcat Instanzen auf einem Server laufen lassen
  =>JkStatusManager - Apache Load Balancer Management



Übersicht