一、域名解析错误
Unable to resolve host "www.baidu.com":
1、如果可以 的话,可以选择ip直连,这个要看业务的具体情况。
2、选用更优质的域名解析服务提供商。国内的有快网,外国的有aws,即有更多的dns缓存服务器可供查询
3、在终端配置server list,直接访问IP,不用dns。要灵活一点的话,就server list可通过服务端下发
二、连接域名或者Ip超时,如果有用到https的话,ssl的连接也会超时,已经IO异常
Connect to 127.0.0.1 timed out
SSL handshake timed out,
SSL handshake aborted: ssl=0x784d6888: I/O error
解决方法:
1、多线机房,解决不同运营商之间的通讯的网络状况。
2、体验前置,看是否可以在网关阶段对网络请求进行优化。
3、看看客户端延长客户端的 connection time out以及read time out,如果使用https的话,由于connection需要更多的时间所以要适当加大
三、连接被关闭
Connection closed by peer
有可能是客户端主动关闭连接,例如浏览器关闭比。也有可能是服务器的并发连接数超过了其承载量,web server主动关闭部分连接。还有可能,就是当连接过多的时候。
TCP优化:
1、对linux的TCP协议默认设置进行优化:对满启动拥挤窗口 cwnd的默认值进行设置。
设置方法:vim /proc/sys/net/ipv4/tcp_initcwnd
可考察:http://os.51cto.com/art/201311/418844.htm
•关闭TCP快速回收
•Init RTO不低于3秒
•初始拥塞控制窗口不小于10。因为大部分页面在10kB以下,很多请求在慢启动阶段已经结束,改为10可以降低小页面资源传输时延。内容越大,这个选项的效果就比较不明显。
•Socket buffer > 64k
•TCP滑动窗口可变
•控制发包大小在1400字节以下,避免分片
协议优化的原则总结下来是这么几条:
•连接重用
•并发连接控制
•超时控制
•包头精简
•内容压缩
•选择更高效率的协议。无论是TCP、HTTP、UDP、长连接、GZIP、SPDY、WUP还是WebP,每一种协议、方案都有其道理,没有最优,只有是否适合你的产品和服务特点,需要大家在运营过程验证和取舍。
================================
手机接入服务器的流程: http://djt.qq.com/article/view/1130
1、首先,手机要通过无线网络协议(2G,3G等),从基站获得无线链路分配,才能跟网络进行通讯。
2、获得无线链路后,会进行网络附着、加密、鉴权,核心网络会检查你是不是可以连接在这个网络上,是否开通套餐,是不是漫游等。核心网络有SGSN和GGSN,在这一步完成无线网络协议和有线以太网的协议转换。(客户端网络不可用是否会上报,是否会是time out)
3、再下一步,核心网络会给你进行APN选择、IP分配、启动计费。
4、再往下面,才是传统网络的步骤:DNS查询、响应,建立TCP链接,HTTP GET,RTTP RESPONSE 200 OK,HTTP RESPONSE DATA,LAST HTTP RESPONSE DATA,开始UI展现。
这几个问题的重点在于其中的几个连接点:
无线链路分配。这是一个物理实连接。
IP层链接。这是一个逻辑虚连接。
TCP层链接。这是一个逻辑虚连接。
HTTP层链接。这是一个逻辑虚连接。
用户在线。这是一个逻辑虚连接。