La classe Yar_Concurrent_Client

(No version information available, might only be in Git)

Introduction

Une classe utilitaire statique qui regroupe des appels RPC distants. Les appels enregistrés avec Yar_Concurrent_Client::call() ne sont pas envoyés immédiatement ; ils sont tous émis ensemble, en parallèle, par Yar_Concurrent_Client::loop().

La classe est destinée aux applications qui ont besoin des résultats de plusieurs appels distants. Seuls les appels indépendants — ceux qui n'ont pas besoin du résultat les uns des autres — peuvent être regroupés ainsi ; quand un appel dépend du résultat d'un autre, les deux doivent s'exécuter séquentiellement. Via Yar_Client, les appels sont envoyés l'un après l'autre, chacun payant son temps d'aller-retour complet ; avec le client concurrent, ils sont envoyés en même temps, de sorte que le temps d'attente total se réduit à la durée du seul appel le plus lent.

Note:

Seuls les services HTTP(S) sont supportés pour les appels concurrents. Ils sont envoyés simultanément via l'interface multi-handle de curl, que le transport TCP/socket Unix n'implémente pas.

Synopsis de la classe

class Yar_Concurrent_Client {
/* Méthodes */
public static function call(
    string $uri,
    string $method,
    ?array $parameters = null,
    ?callable $callback = null,
    ?callable $error_callback = null,
    ?array $options = null
): int|false|null
public static function loop(?callable $callback = null, ?callable $error_callback = null, ?array $options = null): ?bool
public static function reset(): bool
}

Sommaire

add a note

User Contributed Notes

There are no user contributed notes for this page.