-
问:你打算怎样实现客户端的网络层?
答:对于TCP协议来说无非就是connect,send,recv呗。
-
问:那你是否考虑到这种情况,你同时或者先后发过去两个网络请求,你怎么确定你收到回复是哪个请求的?
(其实问到这时有些同事就开始不理解了,我会给他们解释网络传输和服务器处理不是串行的,往往会出现你后发的请求却先收到回复,客户端 多线程情况下更为常见。当然也有有办法的。)
答:那我对每一个请求加一个唯一标识,这样我就可以分辨出来了。
-
问:你有没有考虑过由于connect,send,recv...这些系统API都是阻塞的,如果没有限制条件,会让你的一个请求卡住很长时间或者永远卡住?
-
问:你有没有考虑过短连接请求,长连接请求,服务端推送消息如何实现?
-
问:你有没有考虑过各种网络错误和异常的监控和处理,比如TCP长连接网络断开后的自动重连?
-
问:你有没有考虑过如果你把网络层或者网络数据层和前台业务和界面混杂在一起后的代码混乱复杂度?
-
问:你对TCP了解多少,仅仅是会用网络编程的API还是知道TCP还拥有一些诸如TIME_WAIT、TCP_NODELAY...的状态或特性,你知道经常说的粘包是怎么回事吗?
客户端网络库实现真的很简单吗?
2014-08-17 21:33
浏览:
上一篇:如何把迅雷路由器设为二级路由
下一篇:linux学习之路之ssh协议
- -
-
- 相关推荐
- 半年热点
-
192.168.1.1打不开怎么办(二)
浏览: 174
电脑如何设置TP-LINK路由器?
浏览: 146
腾达路由器怎么安装设置?Tenda路由器怎么设置
浏览: 93
小米路由器AC2100连不上网怎么办?
浏览: 198
Fast(迅捷)无线路由器设置教程
浏览: 173
TP-LINK无线、有线路由器详细设置教程
浏览: 74
Fast(迅捷)无线路由器怎么设置
浏览: 172
192.168.0.1路由器密码设置
浏览: 170
tplogin.cn修改wifi密码
浏览: 59
TP-LINK路由器设置教程
浏览: 70
【教程】怎么在手机上修改路由器的WIFI密码
浏览: 147
192.168.0.1路由器接线方法
浏览: 78
【视频教程】迅捷(Fast)路由器如何设置?
浏览: 104