作者mshockwave (夏克维夫)
看板AndroidDev
标题Re: [请益] 关於TCP socket和HTTPPOST
时间Wed Sep 16 23:16:14 2015
※ 引述《ZCBVXIRD (Alonso)》之铭言:
: ※ [本文转录自 PHP 看板 #1L-MvmGK ]
: 作者: ZCBVXIRD (Alonso) 看板: PHP
: 标题: [请益] 关於TCP socket和HTTPPOST
: 时间: Wed Sep 16 21:28:14 2015
: 各位大大好
: 小弟目前在看Android系统上传资料的方法
: (目前是用httppost 到後台写php处理资料)
: 如果要比较频繁、即时的上传资料(资料size不能太大)
: 通常会用到TCP socket、HTTPPOST这两种
: 我想要厘清两者的优劣跟使用的时机
: 可是翻了许多资料,觉得无论如何都会是TCP socket比较好的样子
: 因为少了HTTP标头 也不用频繁的连线、结束、重练,不断丢request占用频宽
: 速度、频宽、耗能上都会是TCP socket来得有优势
嘛...这的确是大学计网概课的标准答案(笑)
但现在REST之所以还是走http有很大一部分原因是因为方便 利用既有的协定就好
换句话说 实际情况要考虑的不只是理论上的速度而已
当然如果你真的很在意速度的话 用google的protocol buffer就可以了:
https://developers.google.com/protocol-buffers/
但其实我个人比较私心另外一个跟protocol buffer长的差不多 但快上好几倍的
flat buffers:
https://google.github.io/flatbuffers/
他当初是开发用来给游戏用途的 所以适用於performance的环境
: (毕竟是比较底层的协议 有优势是理所当然?)
: 这样我就不知道,除了浏览网页外,
: 还有甚麽样的情况下用HTTP polling会比较好呢?
: 另外还有几个小问题:
: 1.websocket,目前认知这是为browser设计的协议,
: 请问一般Android APP有办法整合这功能吗?(会不会问错版了XD)
: 2.Websocket的连线流程(protocol behavior),是不是就跟TCP/IP socket一模一样?
: 谢谢
第一个问题:用函式库就好 我随便就找到一个:
http://autobahn.ws/android/
第二个问题:这样问不太好 因为Websockets就是基於TCP的呀
他们两个是在OSI的不同层
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.114.207.171
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/AndroidDev/M.1442416590.A.965.html
1F:→ ZCBVXIRD: 谢谢! 09/21 13:02