Maison > développement back-end > Golang > Je ne peux pas avoir plus de 28 233 connexions Websocket sur mon hôte local (pour les tests de stress) | Client Go (gorille)

Je ne peux pas avoir plus de 28 233 connexions Websocket sur mon hôte local (pour les tests de stress) | Client Go (gorille)

WBOY
Libérer: 2024-02-06 09:15:08
avant
753 Les gens l'ont consulté

我的本地主机上的 websocket 连接数不能超过 28233 个(用于压力测试)| Go 客户端(大猩猩)

Contenu de la question

J'essaie de créer un pool de clients connectés au même serveur websocket (serveur go) pour tester les performances et la capacité à gérer les demandes entrantes.

Par exemple, je me demandais comment atteindre 100 000 clients car j'ai vu que lorsque j'avais atteint 28 233 clients gorilles (clients websocket), le programme ne pouvait pas en créer davantage.

J'obtiens l'erreur suivante

tcp 127.0.0.1:8000: connect: cannot assign requested address
Copier après la connexion

Merci d'avance


Bonne réponse


Il ne peut pas y avoir 100 000 connexions client parallèles de 127.0.0.1 à 127.0.0.1:8000. Chacune de ces connexions client parallèles doit avoir un port source différent (sinon, ce n'est pas une connexion différente), et seuls 64 000 ports source sont disponibles. En réalité, le nombre est encore moindre, puisque le système démarrera à partir de ports éphémères voire moins (selon le système d'exploitation et la configuration).

Si le système ne peut pas sélectionner un port source unique qui n'est pas utilisé par une autre connexion à la même adresse IP et au même port de destination, vous recevrez le message "Impossible d'attribuer l'adresse demandée".

Si vous souhaitez prendre en charge davantage de connexions parallèles, vous devez modifier d'autres paramètres de connexion, pas seulement le port source. Généralement, cela se fait en utilisant non pas un seul socket serveur mais plusieurs sockets écoutant sur différents ports.

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!

source:stackoverflow.com
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