客户端网络库实现真的很简单吗?
来源:互联网 发布:php免杀一句话木马 编辑:程序博客网 时间:2024/05/01 16:53
问:你打算怎样实现客户端的网络层?
答:对于TCP协议来说无非就是connect,send,recv呗。
问:那你是否考虑到这种情况,你同时或者先后发过去两个网络请求,你怎么确定你收到回复是哪个请求的?
(其实问到这时有些同事就开始不理解了,我会给他们解释网络传输和服务器处理不是串行的,往往会出现你后发的请求却先收到回复,客户端 多线程情况下更为常见。当然也有有办法的。)
答:那我对每一个请求加一个唯一标识,这样我就可以分辨出来了。
问:你有没有考虑过由于connect,send,recv...这些系统API都是阻塞的,如果没有限制条件,会让你的一个请求卡住很长时间或者永远卡住?
问:你有没有考虑过短连接请求,长连接请求,服务端推送消息如何实现?
问:你有没有考虑过各种网络错误和异常的监控和处理,比如TCP长连接网络断开后的自动重连?
问:你有没有考虑过如果你把网络层或者网络数据层和前台业务和界面混杂在一起后的代码混乱复杂度?
问:你对TCP了解多少,仅仅是会用网络编程的API还是知道TCP还拥有一些诸如TIME_WAIT、TCP_NODELAY...的状态或特性,你知道经常说的粘包是怎么回事吗?
0 0
- 客户端网络库实现真的很简单吗?
- 客户端网络库实现真的很简单吗?
- 实现最简单的网络聊天功能(客户端版)
- 网络编程--python实现 简单的服务端和客户端
- 网络编程--python 实现简单的UDP客户端和服务端
- 简单的网络编程客户端
- 简单IM客户端的实现
- 简单的NTP客户端实现
- ftp客户端的简单实现
- j2me 一个简单的网络客户端
- 简单的网络聊天(客户端)
- 简单的网络编程--服务器,客户端呼应
- 网络编程:使用Socket实现简单的服务器和客户端的通信
- Linux 网络编程基础(一) ---------------客户端/服务器的简单实现
- Linux 网络编程基础(一) ---------------客户端/服务器的简单实现
- 书:深入理解计算机系统(P614) 之 网络编程:简单echo客户端和服务端的实现
- Python 网络编程---简单的服务器与客户端实现---阻塞式编写
- VC下简单网络时间协议SNTP的客户端编程实现(PJ Naughter)
- COM 对象与其基础 RCW 分开后就不能再使用
- div跟着滚动条移动而移动
- 【诸葛】大数据的未来:数据是商品,你就是猎物
- 第2讲(服务端的配置与启动)
- static const的作用
- 客户端网络库实现真的很简单吗?
- 异步模块定义AMD
- java 同时处理android和ios后台时
- EF6 创建数据库的方法
- 因为 setAdapter 返回的 null
- java 截屏
- c#多文件上传简单实现
- Apache2.4的简介和安装
- AE+C#通过名称来删除要素类