백엔드 개발 PHP 튜토리얼 sae的curl限制可否突破

sae的curl限制可否突破

Jun 13, 2016 pm 12:01 PM
curl nbsp

sae的curl限制能否突破?
我先说下我的情况:
curl到国外的web service上面,发送数据,处理后,再返回数据。

之前使用了美国空间,香港空间,但是总不满意,无法满足国内各地区的快速访问。

所以我现在放到了sae上面运行,但是sae有很多限制的,比如curl的限制如下:
connect_timeout 5秒 
send_timeout 15秒 
read_timeout 20秒 
抓取文件大小 8MB 
禁用头,这些头用户无法修改 Content-Length、Host、Vary、Via、X-Forwarded-For、FetchUrl、AccessKey、TimeStamp、Signature、AllowTruncated、ConnectTimeout、SendTimeout、ReadTimeout 


目前就是第一条把我给限制住了,后面的限制对我没有影响。

正是由于他的connect_timeout 5秒 限制,导致我的curl应用经常返回502/504错误提示。

这个出错比例大概在3%左右,也就是运行100次,就会出错3次,后来我将curl里的网址由https换成http,这样出错概率降低了不少,但还是存在,测试在1%左右。

对于结果我还是不满意。因为我的curl程序在其他地方(国内三家机房测试)运行都没有出现过错误。

当然我也给sae提出建议,甚至要求升级成付费用户,都没有回复。

惟一的一个管理员说跟我要了curl的网址说帮我找台机器测试看看是不是有这回事。

可能有人说你为什么要在sae这棵树上吊死?

说实话我看中sae的惟一优势是他们是5线机房,国内大部分地区的用户访问速度非常不错的。再说我申请通过开发者认证,每个月的云豆应该足够使用了。

现在似乎有三种选择:
1.继续给sae建议,让他们修改限制参数
2.优化代码?我实在想不出如何优化了
3.放弃sae,这不是我最终想要的结果



我的curl代码是这样的:

	#POST方法<br />        $curl = curl_init($url);<br />        curl_setopt( $curl, CURLOPT_POST, 1 );<br />        curl_setopt( $curl, CURLOPT_POSTFIELDS, $data );<br />        curl_setopt( $curl, CURLOPT_HEADER, 0 );<br />        curl_setopt( $curl, CURLOPT_RETURNTRANSFER , 1 );<br />        $response = curl_exec($curl);<br /><br />        #GET方法<br />        $curl = curl_init($url);<br />        curl_setopt( $curl, CURLOPT_GET, 1 );<br />        curl_setopt( $curl, CURLOPT_GETFIELDS);<br />        curl_setopt( $curl, CURLOPT_HEADER, 0 ); <br />        curl_setopt( $curl, CURLOPT_RETURNTRANSFER , 1 );<br />        $response = curl_exec($curl);
로그인 후 복사

------解决方案--------------------

本帖最后由 PhpNewnew 于 2012-04-22 10:38:04 编辑 对于限制多多的机房我个人是扭头就走的.国内你一般只需要考虑电信网通(现在叫联通?)双线就行了,其他商用接入都是最后接到他们的网上。如果是用空间我还真没啥建议,我没用过任何一款空间,有经济基础的话似乎可以考虑美国的主机,或者香港的主机。

放弃sae 转战阿里云 然后回头来汇报一下情况好给我参考...哈哈哈
云豆够用吗?我不太相信...

至于curl的优化...这还能优化么...
------解决方案--------------------
你应该给出一些测试用的 url
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

해결 방법: 조직에서 PIN 변경을 요구합니다. 해결 방법: 조직에서 PIN 변경을 요구합니다. Oct 04, 2023 pm 05:45 PM

해결 방법: 조직에서 PIN 변경을 요구합니다.

Windows 11에서 창 테두리 설정을 조정하는 방법: 색상 및 크기 변경 Windows 11에서 창 테두리 설정을 조정하는 방법: 색상 및 크기 변경 Sep 22, 2023 am 11:37 AM

Windows 11에서 창 테두리 설정을 조정하는 방법: 색상 및 크기 변경

Windows 11에서 제목 표시줄 색상을 변경하는 방법은 무엇입니까? Windows 11에서 제목 표시줄 색상을 변경하는 방법은 무엇입니까? Sep 14, 2023 pm 03:33 PM

Windows 11에서 제목 표시줄 색상을 변경하는 방법은 무엇입니까?

Windows 11에서 작업 표시줄 축소판 미리 보기를 활성화 또는 비활성화하는 방법 Windows 11에서 작업 표시줄 축소판 미리 보기를 활성화 또는 비활성화하는 방법 Sep 15, 2023 pm 03:57 PM

Windows 11에서 작업 표시줄 축소판 미리 보기를 활성화 또는 비활성화하는 방법

Windows 11/10 복구의 OOBELANGUAGE 오류 문제 Windows 11/10 복구의 OOBELANGUAGE 오류 문제 Jul 16, 2023 pm 03:29 PM

Windows 11/10 복구의 OOBELANGUAGE 오류 문제

Windows 11의 디스플레이 크기 조정 가이드 Windows 11의 디스플레이 크기 조정 가이드 Sep 19, 2023 pm 06:45 PM

Windows 11의 디스플레이 크기 조정 가이드

Windows 11에서 밝기를 조정하는 10가지 방법 Windows 11에서 밝기를 조정하는 10가지 방법 Dec 18, 2023 pm 02:21 PM

Windows 11에서 밝기를 조정하는 10가지 방법

Python에서 CURL과 Python 요청 간의 상호 변환을 실현하는 방법 Python에서 CURL과 Python 요청 간의 상호 변환을 실현하는 방법 May 03, 2023 pm 12:49 PM

Python에서 CURL과 Python 요청 간의 상호 변환을 실현하는 방법

See all articles