libcurl长连接高并发高性能封装测试分析源代码

时间:2023-10-10 05:21:12
【文件属性】:

文件名称:libcurl长连接高并发高性能封装测试分析源代码

文件大小:17.22MB

文件格式:RAR

更新时间:2023-10-10 05:21:12

libcurl 长连接 高并发 高性能

项目中需要用到Curl频繁调用的情况,发现curl接口调用速度缓慢。为了实现curl高性能,高并发,需要研究如何实现高性能高并发。研究方向有三个。 (1) 长连接。考虑采用长连接的方式去开发。首先研究下长连接和短连接的性能区别。curl内部是通过socket去连接通讯。socket每次连接最为耗时,如果能够复用连接,长时间连接,减少每次socket连接的时间,则可以大大减少时间,提高效率。 (2) 多线程。单个线程下载速度毕竟有限,使用多线程去调用接口。实现高并发高性能,需要考虑资源分配和冲突的问题。 (3) 异步调用。和socket异步调用的原理类似。同步调用会阻塞等待,造成CPU占用率高。


【文件预览】:
CurlHighSpeed
----bin()
----CurlHighSpeed.sln(1KB)
----CurlHighSpeed()
--------CurlHighSpeed.vcxproj.filters(1KB)
--------Release()
--------RestClient.h(2KB)
--------Resources()
--------RestClient.cpp(12KB)
--------GeneratedFiles()
--------RestClientPool.h(2KB)
--------CurlHighSpeed.vcxproj(9KB)
--------main.cpp(756B)
--------x64()
--------RestClientPool.cpp(11KB)
--------CurlHighSpeed.vcxproj.user(1KB)
----.vs()
--------CurlHighSpeed()
----include()
--------curl()
----lib()
--------libcurl_imp.lib(18KB)
--------libssl.lib(119KB)
--------libnghttp2.lib(46KB)
----Win32()
--------Release()
----x64()
--------Debug()
----CurlHighSpeed.VC.db(35.09MB)

网友评论

  • 优化的curl代码没附上哟