Php 发生在curl身上的奇怪事情
我有一个项目需要从XMLAPI获取数据,我正在使用php的cUrl从API获取数据。现在数据下载如下Php 发生在curl身上的奇怪事情,php,curl,Php,Curl,我有一个项目需要从XMLAPI获取数据,我正在使用php的cUrl从API获取数据。现在数据下载如下 { "url":"the url", "content_type":"text\/xml; charset=iso-8859-1", "http_code":200, "header_size":222, "request_size":600, "filetime":-1, "ssl_verify_result":0, "redirect_co
{
"url":"the url",
"content_type":"text\/xml; charset=iso-8859-1",
"http_code":200,
"header_size":222,
"request_size":600,
"filetime":-1,
"ssl_verify_result":0,
"redirect_count":0,
"total_time":0.942642,
"namelookup_time":8.4e-5,
"connect_time":0.179581,
"pretransfer_time":0.17966,
"size_upload":326,
"size_download":12720,
"speed_download":13493,
"speed_upload":345,
"download_content_length":-1,
"upload_content_length":326,
"starttransfer_time":0.576183,
"redirect_time":0,
"redirect_url":"",
"primary_ip":"81.93.213.42",
"certinfo":[
],
"primary_port":80,
"local_ip":"192.169.233.75",
"local_port":43479
}
- 1请求获取数据,123kb文件
- 1请求获取数据特定信息600字节文件
- 1..10获取图像的请求(最大170kb文件)
{
"url":"the url",
"content_type":"text\/xml; charset=iso-8859-1",
"http_code":200,
"header_size":222,
"request_size":600,
"filetime":-1,
"ssl_verify_result":0,
"redirect_count":0,
"total_time":0.942642,
"namelookup_time":8.4e-5,
"connect_time":0.179581,
"pretransfer_time":0.17966,
"size_upload":326,
"size_download":12720,
"speed_download":13493,
"speed_upload":345,
"download_content_length":-1,
"upload_content_length":326,
"starttransfer_time":0.576183,
"redirect_time":0,
"redirect_url":"",
"primary_ip":"81.93.213.42",
"certinfo":[
],
"primary_port":80,
"local_ip":"192.169.233.75",
"local_port":43479
}
此数据被编码为json,因为它将放在日志服务器上
所以我的问题是,如果curl需要1s才能从API获得响应,并且我的逻辑在2到3秒之间执行,那么响应的时间是1分钟,接下来的50秒在哪里
需要注意的是,我的网站运行在godaddy上,这是一个https下的VPS,api运行在HTTP上,这有什么关系吗
由于提前解决了问题,服务器延迟了curl请求的数据下载,因此我与托管提供商联系,消除了下载延迟。因此,curl请求是由服务器延迟的,而不是代码或curl句柄本身。感谢所有评论。谢谢Brad,编辑得很好。我必须问一个明显的问题:您使用的是curl\u multi吗?您是说12个单独的请求吗?getinfo返回的总时间与上次请求相关。所以12个*请求=XXX。将数据缓存到某个地方。我无法缓存请求,问题是一个请求需要大约1秒的时间。因此,这将是12个请求*1秒,12秒,其中一个持续一分钟。我使用curl_multi进行图像库下载过程。谢谢