2010-11-30 4 views
-4

Est-il possible de télécharger un fichier en utilisant gearman? Salut.Téléchargement du fichier gearman Php

+0

Je ne vois pas pourquoi pas. Pourriez-vous être plus précis sur le genre de problème que vous rencontrez? – dabito

+0

Je cherche un petit exemple juste un indice. Le principal problème est que je ne trouve pas le moyen de passer le $ travail-> workload() au travailleur peut être sérialiser ($ _ FICHIER)? – Aly

Répondre

3

Utilisez le fichier php standard pour télécharger le fichier. Lire les octets du fichier dans une variable et passer au serveur.

Un client a une certaine forme de données blob et veut cultiver le traitement des données vers le nuage. Pour ce faire, il établit une connexion au serveur et demande que le serveur exécute une fonction sur ces données.

Read the docs.

0

Ce lit le fichier en utilisant file_get_contents, il est passé à la méthode do() de GearmanClient. Il n'y a pas besoin de "télécharger" le contenu, il sera transmis à gearman, et plus loin au travailleur.

client.php

<?php 
$client= new GearmanClient(); 
$client->addServer(); 
print_r(unserialize($client->do("wordcount", file_get_contents('filename.txt')))); 

worker.php

<?php 
$worker= new GearmanWorker(); 
$worker->addServer(); 
$worker->addFunction("wordcount", "worker_function"); 
while ($worker->work()); 

function worker_function($job) 
{ 
    return serialize(array_count_values(str_word_count($job->workload(),1))); 
}