http和socket协议应用场合总结

来源:互联网 发布:网页小游戏源码下载 编辑:程序博客网 时间:2024/06/05 20:33

就我个人的使用情况来看,socket一般用于比较即时的通信和实时性较高的情况,比如推送,聊天,保持心跳长连接等,http一般用于实时性要求不那么高的情况,比如信息反馈,图片上传,获取新闻信息等。就使用情况不同分开传输

这两者均可以用于游戏服务器端和客户端进行交互的协议,本人参与过两款手机游戏的开发,一款是基于socket协议,一款是基于http的(AMF),想比较起来前者更高效。

 

一、socket 也称”套接字”,可实现S/C之间的物理连接,并进行数据传输,主要有UDP和TCP两个协议。Socket处于网络协议的传输层。

 

优点

1)传输数据为字节级,传输数据可自定义,数据量小(对于手机应用讲:费用低);

2)传输数据时间短,性能高;

3)适合于客户端和服务器端之间信息实时交互;

4)可以加密,数据安全性强;

 

缺点:

1)需对传输的数据进行解析,转化成应用级的数据;

2)对开发人员的开发水平要求高;

3)相对于Http协议传输,增加了开发量;

 

应用场景:

适合于对传输速度,安全性,实时交互,费用等要求高的应用中,如网络游戏,手机应用,银行内部交互等。

 

二、http 属于应用层协议,底层是基于tcp的,是一种无连接、无状态的网络协议

 

优点:

1)基于应用级的接口使用方便;

2)程序员开发水平要求不高,容错性强;

缺点:

1)传输速度慢,数据包大(Http协议中包含辅助应用信息);

2)如实时交互,服务器性能压力大;

3)数据传输安全性差;

 

应用场景:

适合于对传输速度,安全性要求不是很高,且需要快速开发的应用。如web应用,小的手机游戏等等。

0 0