“端口被占用”,“需要改端口”,“会不会是端口的问题”,开发一排查错误,就经常查看端口。
端口对我这个验收测试来说,是个高大上的名词,一直不知道他是何方神圣,也不敢触碰。
当我读了《HTTP权威指南》前几章之后,对端口就很好奇了。
端口就像是银行的“窗口”,银行的地址就像是IP,一家银行里面肯定同时开展了多个业务(窗口),同样的,一个IP主机会多任务同时进行,各不干扰。
客户端和服务器是通过“请求响应报文”来通信的,客户端找到服务器的ip,发送请求报文。
如果客户端同时有多个程序,要请求同一台服务器的特定图片资源,那么服务器要把这个图片资源分别传送给该客户端的每个发出请求的程序,
可是,这个客户端就一个ip,服务器要怎么识别每个程序呢?通过IP铁定不行了,这就引入了端口。
一个“任务”对应一个“端口”,服务器任务的端口一般是默认的,而客户端的则变化(这个我也只知道个大概,不细说了)。
所以通过IP+端口号来唯一指定某个服务。
一个端口号只能给一个服务使用,因此,当显示端口号被占用了,要么更改原先/新服务的端口号,要么停止原先服务,启用新服务。
总结一下:
1.就是通过IP+端口号这种方式访问服务器上的资源,或者让服务器完成某计算;
2.一个端口运行一个任务,如果端口号被占用,要么停止旧服务,要么更改新/旧服务的端口号。