一、背景
公司進行安全整改,
技術要求:會話限制:應能夠對應用系統的最大並發會話連接數進行限制;
提供憑證:提供對系統最大並發會話連接數進行限制的截圖,需要將所有被檢查系統中間件配置截圖,如果不限制最大並發連接數,一旦遭到DOS攻擊,CPU占用率達到100%,影響服務器性能。
措施:配置系統中間件
二、技術實現
因為我負責的系統web服務器為Tomcat,經查詢資料,可以通過修改Tomcat的server.xml文件來限制最大連接數,線程數等信息。
在server.xml中新增如下配置:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" maxConnections="200" maxProcessors="200" maxThreads="200" acceptCount="100" redirectPort="8443" />
參看鏈接:
https://www.cnblogs.com/kismetv/p/7806063.html
http://blog.chinaunix.net/uid-7374279-id-4470247.html
三、驗證配置是否有作用
3.1 查看Tomcat並發連接數
1、方式一:通過tomcat自帶的管理控制台查看
啟動tomcat后,在瀏覽器輸入:http://11.8.130.129:8080/manager/status
tomcat7以后需要賬號登錄,配置賬號需要進入tomcat目錄下的conf路徑下tomcat-user.xml文件進行修改:
打開tomcat-users.xml加上如下代碼到 </tomcat-users> 節點內就ok了。
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="admin" password="admin" roles="manager-gui,manager-script,manager-jmx,manager-status"/>
配置修改后,重啟tomcat ,再次輸入上述的地址,登錄。登錄后可以看到以下內容:
"http-bio-8080"
Max threads: 200 Current thread count: 10 Current thread busy: 2
Max processing time: 671 ms Processing time: 3.987 s Request count: 197 Error count: 1 Bytes received: 0.00 MB Bytes sent: 1.84 MB
Current thread count 就是當前的並發量。
參看鏈接:
https://blog.csdn.net/qq_18800269/article/details/86432303?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase
2、方式二:jmeter測試