2010-12-31 2 views
4

Salut
Est-il vrai que si nous transmettons peu de données au client/serveur, le surcoût de tcp/ip est négligeable et les performances sont identiques à celles de NamedPipe sur la même machine?NamedPipe vs TCP/IP dans peu de données

+1

Je dirais que cela dépend de l'architecture afin de mieux vous vous mesurer dans vos conditions spécifiques. –

+0

La performance est très subjective par rapport à ce que vous essayez d'accomplir. Nombre de transactions dans X quantité de temps. –

Répondre

5

Je dirais que ce n'est pas tellement le quantité de données autant que c'est le nombre de demandes. En d'autres termes, si vous avez 100 000 connexions qui transmettent 100 octets de données, vous aurez plus de préfixe tcp/ip que si vous avez 10 connexions de 100K chacune. Cela ne veut pas dire qu'il n'y a pas de surcharge associée au transfert des données via TCP/IP par rapport aux canaux nommés. Il y a. Mais d'habitude, je dirais que la décision de celle que vous allez utiliser doit faire plus avec l'architecture de votre système que l'inquiétude au sujet des frais généraux.

Si vous souhaitez transférer des données entre des serveurs physiques, vous devez utiliser tcp/ip; Les tuyaux nommés ne sont pas une option. Si vous transférez des données entre des processus sur le même serveur, les tubes nommés sont clairement les plus performants. L'une des raisons pour lesquelles vous voudrez peut-être utiliser tcp/ip lorsque vous êtes sur le même serveur physique est qu'il y a des chances que vous cassiez les processus sur des serveurs physiques à un moment donné dans le futur.

Pour répondre à votre question: Si vous ne transmettez pas beaucoup de données, et que vous ne le faites pas fréquemment, vous n'allez probablement pas remarquer le surcoût tcp/ip lorsque les deux extrémités sont sur le même machine physique.

HTH,
James

Questions connexes