1. 程式人生 > >Linux下tomcat設定最大連線數

Linux下tomcat設定最大連線數

處理:修改tomcat的最大執行緒數。在server.xml裡的connect標籤里加引數,具體的引數名稱請參考http://tomcat.apache.org/tomcat-6.0-doc/config/http.html , 
加了maxThreads(預設200) 和 acceptCount(預設100)兩個引數,分別設定最大連線數。


1、環境說明


Linux下tomcat執行期


 


2、增加jvm 記憶體的配置


#vi catalina.sh


插入如下:


JAVA_OPTS='-Xms256m -Xmx512m'


 


3、INFO: Maximum number of threads (200) created for connector with address null and port 11222


說明:最大執行緒數錯誤


解決方案:


 


使用執行緒池,用較少的執行緒處理較多的訪問,可以提高tomcat處理請求的能力。使用方式:


首先。開啟/conf/server.xml,增加


Xml程式碼
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"   
        maxThreads="500" minSpareThreads="20" maxIdleTime="60000" />  
 


最大執行緒500(一般伺服器足以),最小空閒執行緒數20,執行緒最大空閒時間60秒。


然後,修改<Connector ...>節點,增加executor屬性,如:


Xml程式碼
<Connector executor="tomcatThreadPool"   
               port="80" protocol="HTTP/1.1"   
               connectionTimeout="60000"  
               keepAliveTimeout="15000"  
               maxKeepAliveRequests="1"  
               redirectPort="443"  
                ....../>  
 


 


4、java.net.SocketException: Too many open files


 


當tomcat併發使用者量大的時候,單個jvm程序確實可能開啟過多的檔案控制代碼。


使用 #lsof -p 10001|wc -l   檢視檔案運算元


如下操作:


Js程式碼
(1).ps -ef |grep tomcat   檢視tomcat的程序ID,記錄ID號,假設程序ID為10001   
(2).lsof -p 10001|wc -l     檢視當前程序id為10001的 檔案運算元   
(3).使用命令:ulimit -a    檢視每個使用者允許開啟的最大檔案數   
   預設是1024.   

相關推薦

Linuxtomcat設定連線

處理:修改tomcat的最大執行緒數。在server.xml裡的connect標籤里加引數,具體的引數名稱請參考http://tomcat.apache.org/tomcat-6.0-doc/conf

Tomcat容器做到自我保護,設定連線(服務限流:tomcat請求限制)

http://itindex.net/detail/58707-%E5%81%87%E6%AD%BB-tomcat-%E5%AE%B9%E5%99%A8 為了確保服務不會被過多的http長連線壓垮,我們需要對tomcat設定個最大連線數,超過這個連線數的請求會拒絕,讓其負載到其它機器。達到保護自己的同時起到

設定springboot自帶tomcat連線併發

從原始碼來看,最大連線數和最大併發數預設是10000和200 可以通過工程下的application.yml配置檔案來改變這個值 server:   tomcat:     uri-enco

tomcat連線

前提說明 為了確保服務不會被過多的http長連線壓垮,我們需要對tomcat設定個最大連線數,超過這個連線數的請求會拒絕,讓其負載到其它機器。達到保護自己的同時起到連線數負載均衡的作用。 動手去做 一開始根據故障todoList提供的引數MaxKeepAliveRequests,進行驗證,我們

mysql在linux表名大小寫以及mysql連線

“Can not connect to MySQL server. Too many connections”-mysql 1040錯誤,這是因為訪問MySQL且還未釋放的連線數目已經達到MySQL的上限。通常,mysql的最大連線數預設是100, 最大可以達到16384。 第一種:命

Linux高併發socket連線各種限制的調優

1、修改使用者程序可開啟檔案數限制  在Linux平臺上,無論編寫客戶端程式還是服務端程式,在進行高併發TCP連線處理時,最高的併發數量都要受到系統對使用者單一程序同時可開啟檔案數量的限制(這是因為系統為每個TCP連線都要建立一個socket控制代碼,每個socket控制代碼同時也是一個檔案控制代碼)。可使用

Linux高併發socket連線所受的各種限制

1、修改使用者程序可開啟檔案數限制在Linux平臺上,無論編寫客戶端程式還是服務端程式,在進行高併發TCP連線處理時,最高的併發數量都要受到系統對使用者單一程序同時可開啟檔案數量的限制(這是因為系統為每個TCP連線都要建立一個socket控制代碼,每個socket控制代碼同時也是一個檔案控制代碼)。可使用ul

linux 修改連線的辦法

1、修改使用者程序可開啟檔案數限制 在Linux平臺上,無論編寫客戶端程式還是服務端程式,在進行高併發TCP連線處理時,最高的併發數量都要受到系統對使用者單一程序同時可開啟檔案數量的限制(這是因為系統為每個TCP連線都要建立一個socket控制代碼,每個socket控制代碼

linux上怎麼設定mysql的連線

一、mysql最大連線數的設定 1:檢視當前mysql支援的最大連線數 mysql> show variables like 'max_connections'; +-----------------+-------+ | Variable_name | Va

合理設定apache httpd的連線--linux

手頭有一個網站線上人數增多,訪問時很慢。初步認為是伺服器資源不足了,但經反覆測試,一旦連線上,不斷點選同一個頁面上不同的連結,都能迅速開啟,這種現象就是說明apache最大連線數已經滿了,新的訪客只能排隊等待有空閒的連結,而如果一旦連線上,在keeyalive 的存活時

LinuxTCP連線受限問題

一、 檔案數限制修改 1、使用者級別 檢視Linux系統使用者最大開啟檔案限制: # ulimit -n 1024 (1) vi /etc/security/limits.conf mysql soft nofile 10240 mysql hard nofile 1024

tomcat執行緒等待連線

tomcat是目前較為常用的Web容器,那麼怎麼配置tomcat才能使得自己的服務效率更高,今天我主要解釋一下tomcat的最大執行緒數(maxThreads)、最大等待數(acceptCount)和最大連線數(maxConnections)。     maxThreads

Linux 調優方案, 修改連線(ulimit命令)

Linux對於每個使用者,系統限制其最大程序數。為提高效能,可以根據裝置資源情況,設定各linux 使用者的最大程序數 可以用ulimit -a 來顯示當前的各種使用者程序限制。 下面我把某linux使用者的最大程序數設為10000個:      ulimit -u 1

Linux 核心優化-調TCP連線

一、tcp 概述 1、伺服器如何標識tcp連線? 在tcp應用中,server事先在某個固定埠監聽,client主動發起連線,經過三路握手後建立tcp連線。 在確定最大連線數之前,先來看看系統如何標識一個tcp連線。系統用一個4四元組來唯一標識一個TCP連線:{local

Linuxtomcat設定jsp連線mysql 的問題忙了幾天,終於搞定

OS: Ubuntu6.06Tomcat: Tomcat 5.0.30Mysql: MySQL5.0.22mysql-connector: mysql-connector-java-3.1.14本來安裝完JDBC驅動mysql-connector-java後應該可以正常連線m

memcached 連線及其記憶體大小的設定

  2011年11月30日 11:21:26 小狼_百度 閱讀數:9641  memcached的基本設定:   -p 監聽的埠 -l 連線的IP地址, 預設是本機 -d start 啟動memcached服務 -d restart 重起

合理設定apache httpd的連線

1.在哪裡設定? 伺服器的為FreeBSD 6.2 ,apache 2.24,使用預設配置(FreeBSD 預設不載入自定義MPM配置),預設最大連線數是250 在/usr/local/etc/apache22/httpd.conf中載入MPM配置(去掉前面的註釋): # Server-pool ma

MySQL報已達到連線的解決方法CMD命令設定

以管理員的身份開啟CMD,CMD的操作命令在這裡就不多說了,不會請自行百度。。。 解決方法: 1.找到MySQL的安裝路徑。【如:C:\Program Files\MySQL\MySQL5.5\】 2.進入bin目錄【如:C:\Program Files\

linux mysql修改連線

檢視當前資料庫連線>mysqladmin -uroot -pxxxxx processlist +--------+------+----------------------+----------+---------+------+-------+----------

SQL設定SQLServer連線

設定最大連線數   下面的T-SQL 語句可以配置SQL Server 允許的併發使用者連線的最大數目。   exec sp_configure 'show advanced options', 1 exec sp_configure 'user connections',