请问如何在http协议中使用长连接?

tqn2001 2016-05-13 12:18:38
项目情况是:我们是java的http server,client端是采用51单片机做的,
具体业务是由client端不定期的通过http post方法向http server传递一些tar文件。
可是由于51机性能有限,而且还要做其他业务,如果采用传统的短连接方式51机的开销太大,直接就会做不下去。
请问如何让51机与http server之间采用长连接,并且能支持http post的协议呢?

我试了http1.1中的keep-alive方法,不管用啊。
呼唤大神。
...全文
277 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
tianfang 2016-05-13
  • 打赏
  • 举报
回复
51 单片机 还是使用UDP吧 TCP的支持都不算好
howsun_zh 2016-05-13
  • 打赏
  • 举报
回复
Http keep-alive无法做到tcp的Socket那样长期保持连接,受到很多制约因素,例如: 1、客户端在一次连接中处理多对request-response后,业务处理完成,通常会在空闲n长时间后关闭连接,这个时间由客户端工具控制。 2、客户端非幂等请求的长连接的支持情况(POST是典型的非幂等请求) 3、服务端的设置、服务端线程数限制和内存限制等等。 ... 建议使用Comet技术(比较好的实现者有pushlet), 或者Html5的WebSocket技术 参考资料: Comet:http://baike.baidu.com/subview/577938/16272498.htm Pushlet:http://baike.baidu.com/item/pushlet WebSocket:https://zh.wikipedia.org/wiki/WebSocket lizi:http://www.lizi.pw
tony4geek 2016-05-13
  • 打赏
  • 举报
回复
网页版的可以WebSocket 实现,你这个单片机不是太了解

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧