Home | 简体中文 | 繁体中文 | 杂文 | 知乎专栏 | 51CTO学院 | CSDN程序员研修院 | Github | OSChina 博客 | 腾讯云社区 | 阿里云栖社区 | Facebook | Linkedin | Youtube | 打赏(Donations) | About
知乎专栏多维度架构

第 19 章 多维度架构之Socket连接数

目录

19.1. 理解服务器端与客户端
19.2. 影响连接的因素有哪些?
19.3. 程序怎么写?

在上一节《多维度架构之会话数》中从运维角度详细介绍了会话数,本章将从开发角度介绍TCP Socket最大连接数。

我先来问几个问题,然后带着问题思考,最后我再逐一解答。

  1. 一台服务器究竟最大能支持多少个网络连接?
  2. 一台服务器能做到百万的连接数吗?
  3. 你想过怎么实现百万的连接吗?

19.1. 理解服务器端与客户端

服务器端:是指提供服务的一端,例如 WEB 服务器,服务器通常使用 1 ~ 1024 端口,WEB 服务器是 80 端口,服务器端的端口是固定的。

客户端:是指消费服务的一端,例如浏览器,与服务器80端口建立连接,本地也会消耗一个端口,客户端的端口范围通常是 1025~65535。

有这样一种情况

		
浏览器 —> Nginx —> fastcgi/tomcat —> mysql
		
		

Nginx 本身是服务器,但是同时它也是客户端,同理 fastcgi/tomcat 也是如此。也就是说 Nginx 会消耗掉服务器上的 80端口和1024~65535 之间端口号。