Une collection de différentes implémentations de transport et d'outils connexes axés principalement sur les technologies Web. Comprend le développement interne de 6 RFC IETF (6265, 6455, 7541, 7692, 8441, 9113), 2 spécifications formelles (GRPC, PostgreSQL) et plusieurs autres idées inventées.
Chaque fonctionnalité est facultative et doit être définie au moment de la compilation. Veuillez consulter la documentation prévue pour plus d'informations.
Les dispositifs intégrés avec un allocateur de tas de travail peuvent utiliser cette caisse no_std .
Beaucoup de choses qui améliorent généralement les performances sont utilisées dans le projet, pour n'en nommer que quelques-uns:
cargo tree -e normal --features postgres .Étant donné que la mémoire est généralement maintenue au niveau de l'instance au lieu d'être créée et abandonnée à la volée, il convient de noter que son utilisation peut se développer considérablement en fonction du cas d'utilisation. Si vous êtes approprié, essayez d'utiliser un pool de ressources partagé ou essayez de limiter la quantité de données qui peuvent être échangées entre les parties.
Découvrez WTX-Bench pour voir une variété de repères ou n'hésitez pas à pointer des malentendus ou des erreurs de configuration.
Il y a principalement 2 choses qui ont un impact sur les performances, l'exécution choisie et le nombre d'octets pré-allocés. Surtout pour les serveurs qui doivent créer une nouvelle instance pour chaque poignée de main, la pré-allocation d'un nombre élevé d'octets pour les connexions de courte durée ou de transfert à faible transfert peut avoir un impact négatif.
Tout ce qui est marqué de #[bench] dans le référentiel est considéré comme une référence de bas niveau dans le sens où ils mesurent des opérations très spécifiques qui servent généralement de base à d'autres parties.
Jetez un œil à https://bencher.dev/perf/wtx pour voir tous les repères de bas niveau sur différentes périodes.
Lorsque vous utilisez une fonctionnalité qui nécessite une connexion réseau, il est souvent nécessaire d'effectuer une communication cryptée et comme wtx n'est pas codé en dur avec une implémentation de flux spécifique, c'est à vous de choisir le meilleur fournisseur TLS.
Certains services publics comme TokioRustlsConnector ou TokioRustlsAcceptor sont disponibles pour rendre les choses plus pratiques, mais gardez à l'esprit qu'il est toujours nécessaire d'activer une caisse qui fournit des certificats pour l'utilisation du client.
Des démonstrations de différentes cas d'utilisation peuvent être trouvées dans le répertoire wtx-instances ainsi que dans la documentation.
Ne prend pas en charge les systèmes d'une longueur de pointeur de 16 bits.
Attend la somme infaillible des longueurs d'un nombre arbitraire de tranches, sinon le programme déclenchera probablement un débordement qui peut éventuellement entraîner des opérations inattendues. Par exemple, dans un système 32 bits, un tel scénario doit être viable sans mémoire d'échange ou via des limites spécifiques comme ulimit .