socket和http间的区别

socket连接和http连接的区别
  HTTP协议:简单对象访问协议,对应于应用层 ,HTTP协议是基于TCP连接的
  tcp协议: 对应于传输层
  ip协议: 对应于网络层
  TCP/IP是传输层协议,主要解决数据如何在网络中传输;而HTTP是应用层协议,主要解决如何包装数据。
  Socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API),通过Socket,才能使用TCP/IP协议。
  http连接:http连接就是所谓的短连接,即客户端向服务器端发送一次请求,服务器端响应后连接即会断掉;
    socket连接:socket连接就是所谓的长连接,理论上客户端和服务器端一旦建立起连接将不会主动断掉;但是由于各种环境因素可能会是连接断开, 比如说:服务器端或客户端主机down了,网络故障,或者两者之间长时间没有数据传输,网络防火墙可能会断开该连接以释放网络资源。

时间: 2024-11-01 17:15:23

socket和http间的区别的相关文章

Socket 和 Named Pipe的区别

In a fast local area network (LAN) environment, Transmission Control Protocol/Internet Protocol (TCP/IP) Sockets and Named Pipes clients are comparable in terms of performance. However, the performance difference between the TCP/IP Sockets and Named

MinGW MinGW-w64 TDM-GCC等工具链之间的区别与联系

不当之处,尽请指正. 相同点: 一. 他们都是用于编译生成Windows应用程序的工具链. 二. 他们都是基于gcc的. 不同之处(只说大的): 一.项目之间的关系 1. MinGW应该是最先诞生的. 2. MinGW-w64项目最初是做为MinGW的一个分支而诞生,但现在已经独立发展.详细信息参见: http://sourceforge.net/apps/trac/mingw-w64/wiki/History http://zh.wikipedia.org/wiki/MinGW 3. TDM-

关于集合类间的区别

List类 Vector和ArrayList的区别: 1版本不同,Vector属于jdk1.0,而ArrayList属于jdk1.2后的版本. 2,效率上ArrayList比Vector要高,同时vector线程安全,而arraylist线程不安全. ArrayList与LinkedList的区别: 1,结构不同,前者属于数组结构,后者属于链表式结构 2,效率:a,增加或者删除(前面)linkedlist效率好. b,增加或者删除(后面)arraylist效率好. c,查询 arraylist效

array_unique和array_flip 实现去重间的区别

array_unique和array_flip 实现去重间的区别 ?php有内置函数array_unique可以用来删除数组中的重复值, phperz~com (PHP 4 >= 4.0.1, PHP 5) array_unique -- 移除数组中重复的值array_unique说明array array_unique ( arrayarray ) array_unique() 接受 array 作为输入并返回没有重复值的新数组. 注意键名保留不变.array_unique()先将值作为字符串

C#通过Socket在网络间发送和接收图片的演示源码

将内容过程中常用的内容段备份一次,如下资料是关于C#通过Socket在网络间发送和接收图片的演示的内容,希望能对码农们有帮助. using System;using System.Collections.Generic;using System.Text;using System.Net.Sockets;using System.Net;using System.IO; namespace ConsoleApplication1{Class Program{static void Main (S

JVM、JRE和JDK三者间的区别和联系

简介:我们利用JDK(调用JAVA API)开发了属于我们自己的JAVA程序后,通过JDK中的编译程序(javac)将我们的文本java文件编译成JAVA字节码,在JRE上运行这些JAVA字节码,JVM解析这些字节码,映射到CPU指令集或OS的系统调用. JDK(Java Development ToolKit) Java开发工具包,它除了包括JRE和JVM外,还包括java(用于执行.class文件).javac(用于将.java文件编译成.class文件)等工具和JAVA基础的类库.这些工具

Protobuf(二)——使用Socket在系统间进行通信

两个系统间进行通信,其中一端充当客户端的角色,另一端充当服务器的角色. 在我的项目中,Java端充当客户端,与C++服务器通信,使用Socket实现 参照了网上的几篇文章,需要的朋友看一下就能明白 http://wenku.baidu.com/link?url=_bBHBC2jggjaAuGlWxNljaMoutHD8gjILd63NutlIE-Qz5p7U5-MGiYEFHvcVLgzPYHxLyJuwk9DQ1XcoceT-BiKFBW6fJpIOVXkESrHeb_ 此处就不再粘贴我的代码

WebSocket、Socket、TCP、HTTP区别

1. 概述 WebSocket 是为了满足基于 Web 的日益增长的实时通信需求而产生的.在传统的 Web 中,要实现实时通信,通用的方式是采用 HTTP 协议不断发送请求.但这种方式即浪费带宽(HTTP HEAD 是比较大的),又消耗服务器 CPU 占用(没有信息也要接受请求).(下图来自 WebSocket.org) 而是用 WebSocket 技术,则会大幅降低上面提到的消耗:(下图来自 websocket.org) 关于更详细的描述,尹立的这篇文章讲得非常好:WebSocket(2)–为

HTTP和socket的连接请求的区别

首先一定要明白: HTTP协议:简单对象访问协议,对应于应用层 ,HTTP协议是基于TCP连接的 TCP协议: 对应于传输层 IP协议: 对应于网络层 TCP/IP是传输层协议,主要解决数据如何在网络中传输:而HTTP是应用层协议,主要解决如何包装数据. Socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API),通过Socket,我们才能使用TCP/IP协议. HTTP连接:http连接就是所谓的短连接,即客户端向服务器端发送一次请求,服务器端响应后连接即会