1.服務器有65535個端口,也就是記錄服務器端口的變量,是兩個字節,是一個short int。其兩個字節的存儲空間,決定了其只能開65535的端口。服務器
2.那端口是幹什麼用的呢?端口就是用來監聽tcp鏈接的。也就是客戶端http鏈接用ip地址+服務器端端口號來進行通信的。併發
3.那客戶端進來http鏈接請求了,服務器端誰來監聽端口呢?就是應用程序啊,相似於Tomcat等軟件。socket
4.應用程序的serverSocket的有Bind()方法,綁定服務器的指定端口。而後serversocket用accept()方法,接受來自客戶端的請求。tcp
這就是客戶端發送(服務器IP地址+服務器端口號)---->服務器端程序調用代碼serverSocket.accept()監聽服務器的端口。從而客戶端與服務器端應用程序創建了鏈接。性能
5.端口號與tcp鏈接數量一點關係沒有!!!具體的TCP鏈接數量,徹底由serverSocket.accept()來創建鏈接。線程
serverSocket.accept()每次創建鏈接的時候,綁定的端口號指的是客戶端的端口號,以便將數據返回給客戶端的應用程序。server
6.一臺Tomcat的能容納的TCP鏈接數量,徹底由服務器性能相關,能夠是幾萬個。不是500個,500個指的是TOmcat最多創建500個線程,傳統的bio通訊用線程。ip
7.現在的TOmcat通訊能容納幾萬條併發。io