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);
------解决方案--------------------

ThedifferencebetweenUnset () undsesion_destroy () isHatunset () clearsSesionSessionVariables whilepingTheSessionActive, whire eassession_destroy () terminatesthectheentireSession.1) UseUnset () toremovespecificSessionvariables ohnemacht

StickySessionSesionSureSerRequestSareroutedTothesamerverForSessionDataconsistency.1) SessionidentificationSignSuServerSuSuSuSingCookieSorUrlmodificificificifications.2) KonsistentroutingDirectsSubsequestRequestTothSameServer.3) LastbalancedistributeNeNewuser

PhpoffersVariousSsionsAVEHandlers: 1) Dateien: Standard, SimpleButMayBottleneckonHigh-Trafficsites.2) Memcached: Hochleistungs-Ideforspeed-kritische Anpassungen.3) Redis: Similartomemez, withaddedPersi.

Die Sitzung in PHP ist ein Mechanismus zum Speichern von Benutzerdaten auf der Serverseite, um den Status zwischen mehreren Anforderungen aufrechtzuerhalten. Insbesondere 1) Die Sitzung wird von der Session_start () -Funktion gestartet, und die Daten werden gespeichert und durch das Super Global Array $ _Session Super Global gelesen. 2) Die Sitzungsdaten werden standardmäßig in den temporären Dateien des Servers gespeichert, können jedoch über Datenbank oder Speicherspeicher optimiert werden. 3) Die Sitzung kann verwendet werden, um die Verfolgung und Einkaufswagenverwaltungsfunktionen zu realisieren. 4) Achten Sie auf die sichere Übertragungs- und Leistungsoptimierung der Sitzung, um die Sicherheit und Effizienz des Antrags zu gewährleisten.

PHPSSIONSSTARTWITHSession_Start (), was generatesauniquidandcreateSaServerfile;

Die Absolute -Sitzungs -Zeitlimit startet zum Zeitpunkt der Erstellung der Sitzung, während eine Zeitlimit in der Leerlaufsitzung zum Zeitpunkt der No -Operation des Benutzers beginnt. Das Absolute -Sitzungs -Zeitlimit ist für Szenarien geeignet, in denen eine strenge Kontrolle des Sitzungslebenszyklus erforderlich ist, z. B. finanzielle Anwendungen. Das Timeout der Leerlaufsitzung eignet sich für Anwendungen, die die Benutzer für lange Zeit aktiv halten, z. B. soziale Medien.

Der Serversitzungsausfall kann durch Befolgen der Schritte gelöst werden: 1. Überprüfen Sie die Serverkonfiguration, um sicherzustellen, dass die Sitzung korrekt festgelegt wird. 2. Überprüfen Sie die Client -Cookies, bestätigen Sie, dass der Browser es unterstützt und korrekt senden. 3. Überprüfen Sie die Speicherdienste wie Redis, um sicherzustellen, dass sie normal arbeiten. 4. Überprüfen Sie den Anwendungscode, um die korrekte Sitzungslogik sicherzustellen. Durch diese Schritte können Konversationsprobleme effektiv diagnostiziert und repariert werden und die Benutzererfahrung verbessert werden.

Session_Start () iscrucialinphPFormAnagingUSSERSIONS.1) ItinitiatesanewSessionifnoneExists, 2) Wiederaufnahmen und 3) setaSessionCookieforContinuityAcrossRequests, aktivierende Anwendungen wie


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

SublimeText3 Linux neue Version
SublimeText3 Linux neueste Version

Dreamweaver Mac
Visuelle Webentwicklungstools

EditPlus chinesische Crack-Version
Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

MantisBT
Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.
