Socket与URL通信比较

转至链接:http://blog.csdn.net/qq_15848173/article/details/46328399

利用URL通信和Socket进行通信有很多相似之处。他们都是利用建立连接、获取流来进行通信,他们的区别之处如下:

         利用Socket进行通信时,在服务器端运行一个Socket通信程序。服务器端不停的监听某个端口,等待客户的连接申请,接到申请后建立连接并进行通信,所以,在Socket通信中,服务是主动等待通信的到来。

         利用URL进行通信时,在服务器端常驻一个CGI程序,但他一直处于休眠状态。只有在客户端要求建立连接时才被激活,然后才与用户进行通信。所以,在URL通信中,服务器是被动等待连接通信的到来。

         由于Socket通信和URL通信的方式不同,所以,它们有各自的特点。利用Socket通信时,服务器端的程序可以打开多个线程与多个客户进行通信,还可以通过服务器使各个客户之间进行通信。这种方式比较灵活,适用于一些复杂的通信,但是服务器端的程序必须始终处于运行状态以监听端口。利用URL进行通信时,服务器端的程序只能与一个客户进行通信,形式比较单一。但是他不需要服务器端的CGI一直处于运行状态,只有在有客户申请是才被激活。所以,这种方式适用于客户机的浏览器与服务器之间的通信

       

 

posted @ 2017-10-22 21:51  kelly_one  阅读(2673)  评论(0编辑  收藏  举报