Maison > cadre php > Swoole > Que signifie swoole fd ?

Que signifie swoole fd ?

爱喝马黛茶的安东尼
Libérer: 2019-12-12 10:37:20
original
3337 Les gens l'ont consulté

Que signifie swoole fd ?

fd est le descripteur de fichier de la connexion TCP, qui est l'identifiant unique du client dans swoole_server.

fd est réutilisé. Lorsque la connexion est fermée, fd sera réutilisé par la connexion nouvellement entrée. La connexion TCP fd en cours de maintenance ne sera pas réutilisée.

L'appel de la fonction swoole_server->send/swoole_server->close nécessite de passer le paramètre $fd pour être traité correctement.

Si vous devez envoyer des diffusions dans votre entreprise, vous devez utiliser apc/redis/memcache/swoole_table pour enregistrer la valeur de fd.

Dans la version 1.7.10 ou supérieure, fd n'est plus un descripteur de fichier. fd est un nombre auto-croissant, allant de 1 à 16 millions

Une fois que fd dépasse 16 millions, il sera automatiquement réutilisé à partir de 1

function my_onReceive($serv, $fd, $from_id, $data)  {    
      //向Connection发送数据
    $serv->send($fd, 'Swoole: '.$data); 
    //关闭Connection
    $serv->close($fd); 
}
Copier après la connexion

Pourquoi $fd utilise-t-il le remodelage

$fd utilise un entier au lieu d'un objet. La raison principale est que swoole est un modèle multi-processus. Vous devrez peut-être accéder à une connexion client à tout moment dans le processus Worker/Tâche. Si vous utilisez un objet, vous devez sérialiser/désérialiser. Ajoute une surcharge de performances supplémentaire. Si $fd est un entier, il peut être utilisé pour le stockage et le transfert direct.

Dans la couche PHP, les connexions clients peuvent également être encapsulées dans des objets. L'avantage de l'orientation objet est qu'elle est plus lisible et que l'opération de connexion peut être encapsulée dans des méthodes. Par exemple :

$connection->send($data);
$connection->close();
Copier après la connexion

Le site Web chinois PHP propose un grand nombre de Tutoriels d'introduction à Swoole gratuits, tout le monde est invité à apprendre !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal