日期:2014-05-16  浏览次数:20885 次

对于网站模式的一个疑问。。
既然HTTP是基于TCP协议的,
那连接是不是一直存在。。直到我们关闭了网站。。还是连接发送完数据就关闭?
答案应该是连接一直存在吧?

当我们进入一个网站后,是服务器分配一个线程给我们吗?
如果是分配一个线程给我们。。那我一直在网站上点击。。服务器相对的线程应该一直存在。。这样的话。。当服务器内存不足的时候(既达到了一定得线程数)。。这个线程数也应该是在服务器承受范围之内的。。这样的话。。网站为什么会因为很挤而卡死。。
比如说,我进入了一个网站。。我已经在网站的内部界面中了。。我一直在持续的进行点击。。过了五分钟。。有大量的人开始挤这个网站。。按理说我已经进去了。。已经有一个线程在为我工作。。这样的话我为什么还会卡死呢??  

------解决方案--------------------
首先http不是你所说的一直连接的,完成之后就会断开,
tcp在发送失败的情况下会重新发送,如果发送成功了就不会再发了,udp只会发送,不会保证数据是否能够到达。
所以你打开了网站并且接受了全部数据后连接服务器就会断开,除非服务器端是socket。

所以说即使你已经进了网站,每次点击还是需要重新发送请求过去,并不是说有一个线程一直为你工作,卡死的原因不外乎是你自己机器的问题或者是服务器抗压不行,