Estoy ejecutando un sitio de lector de feeds, donde habrá una gran cantidad de RSS alrededor. Tendré que sincronizar esos alimentos con la mayor frecuencia posible, así que encontré estos dos métodos para hacerlo.CURL o file_get_contents para actualizar una lista de feeds?
1 Método: Uso de CURL
$weblog_name = 'MyBlog';
$weblog_url = 'http://feeds.feedburner.com/myblog';
$ping_url = 'http://ping.feedburner.com';
$request = <<<EOT
<?xml version="1.0" encoding="iso-8859-1"?>
<methodCall>
<methodName>weblogUpdates.ping</methodName>
<params>
<param>
<value>
<string>$weblog_name</string>
</value>
</param>
<param>
<value>
<string>$weblog_url</string>
</value>
</param>
</params>
</methodCall>
EOT;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $ping_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, trim($request));
$result = curl_exec($ch);
curl_close($ch);
Segundo método: file_get_contents
file_get_contents("http://feedburner.google.com/fb/a/pingSubmit?bloglink=http://feeds.feedburner.com/myblog");
Mi pregunta es cuál es la solución mejor y más rápido para hacer ping al menos 50 alimenta a la vez?
No estoy familiarizado con el enrollamiento , ¿obtiene los contenidos? Quiero decir, ¿cómo funciona? Además, ¿50 get_file_contents será muy lento a la vez? – EnexoOnoma
cURL también obtendrá los encabezados para la solicitud http. Puede agregar sus propios encabezados de solicitud, variables de publicación y servidor proxy en cURL. Sin embargo, para una solicitud de obtención simple, cURL es innecesario. Me parece que cURL demora 10 ms más en mi servidor wamp apache2.2.17 php5.3.5 para http://www.google.com –
@mtopia realmente no hace la diferencia porque get_file_contents es sincrónico, es decir, se ejecuta la siguiente línea solo después de que esta línea haya sido completamente ejecutada –