libcurl:开源的http库学习

其实curl还可以用来做ftp等协议,这里只用到http下载功能,公司用的是自己写的http库,对一些异常处理做的不够好,出了两次问题,所以决定会稳定的curl。

第一次是因为cdn采取了cname的解析方式,但是公司的库没有处理cname方式,所以就悲剧了,赶紧加上了cname的处理方式。

第二次是因为获取要下载的文件时,需要先获取文件长度时(Head),发送Head请求后,网络库是等待web server主动断开后,再去解析数据获取长度(Content-Length),但是由于cdn改变了策略,加了一个连接复用的优化没有和我们断开连接,于是我们又悲剧了。

 

经过两次打击,决定使用libcurl,毕竟开源项目经过大家的努力对于这些异常情况处理也很完善了。

先使用简单的easy模式,发现了一个问题,就是会出现卡死的情况,就是长时间收不到数据,

转载于:https://www.cnblogs.com/xujinping/p/4603995.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值