J'ai écrit wcf service (serviceB) cnsumed par un autre service wcf (ServiceA).wcf-wcf octet []/memorystream/base64string pour améliorer la performance
ServiceA et ServiceB exécutent la même machine. J'utilise nettcpbinding. (comme c'est une bonne option pour wcf-wcf commnucation aussi ces deux services sont en intranet sur la même machine).
Opération Les paramètres du contrat pour ServiceB sont frontimage, backimage.
Quelle est la meilleure façon de faire passer frontimage et backimage pour améliorer la performance. J'utilise byte [],
i..e,
ici est le fonctionnement ocntract pour Serviceb
Hashtable GetConvertedImage (octet [] frontImage, octet [] backImage); Ma question est au lieu d'utiliser byte [] si j'utilise memorystream ou base64string cela améliorera la performance. Qu'en est-il de GZipStream?
Je peux transmettre les paramètres requis tout en les consommant dans ServiceA. L'objectif est d'améliorer la performance. En dehors de byte []/memorystream/base64string, il n'y a pas d'autre moyen d'améliorer les performances que de traiter les grandes images.
s'il vous plaît adivce
suis également en utilisant NetTcpBinding est-ce bien i ce scénario.
mais il accepte un seul paramètre que le droit de flux. – ram
Si j'utilise le streaming, il n'accepte qu'un seul paramètre en tant que flux à droite. dans mon cas je veux apss 2 images. Dans ce cas, j'ai besoin de créer 2 contrats d'exploitation et deux ivocations que je dois faire correctement. conseil plesae. Est-il possible de passer deux pramaters comme des flux – ram
Je pense que le coût de l'appel de deux opérations en streaming est bien inférieur à celui de la sérialisation des données binaires dans un message SOAP. Vous pouvez utiliser un en-tête personnalisé pour transmettre des informations supplémentaires pour l'image (un identifiant pour associer les images par la suite par exemple) –