Incelikle düşen bir API işlemek nasıl

3 Cevap php

Twitter bugün aşağı olmak ile ben aşağı olduğunda iyi bir API çağrıları nasıl düşünüyordum. Ben uygulamayı yavaşlatmak için değil şekilde nasıl senaryo hızla başarısız ve hataları işlemek için neden yok kendi API aramak için CURL kullanarak ediyorsam?

3 Cevap

Belki heyecan olsun veya olmasın yukarı veya aşağı değildir önbellek bir tür kullanın. Bir veritabanı veya sunucu taraflı dosya API geçersiz yanıtları yapın. Eğer arka arkaya geçersiz yanıtların iki / üç / diğer bazı miktar olsun, zaman x miktarda API tüm istekleri devre dışı bırakın.

Zaman x miktar sonra, hala aşağı eğer, tekrar x dakika boyunca devre dışı, bir isteği girişimi.

Sunucu çalıştırabilirsiniz eğer CRON işler her birkaç dakika geçerli bir yanıt için api denetleyen bir komut dosyası yapmayı düşünün. O aşağı bulunuyor anlarsa o kadar geri getirene kadar, istekleri devre dışı bırakın. En azından bu durumda sunucu test yapıyor olacak ve kullanıcılar kobay olmak zorunda değildir.

Kullan curl_setopt

curl_setopt($yourCurlHandle, CURLOPT_CONNECTTIMEOUT, '1'); // 1 second

Eğer kullanın> = 7.16.2 ve PHP> = 5.2.3 yoktur CURLOPT_CONNECTTIMEOUT_MS kıvırmak

curl_getinfo cURL yanıt kodu veya içerik uzunluğu almak ve bu karşı kontrol etmek için kullanın.

$HttpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);