2012-09-07 2 views
1

Nous disposons d'un environnement dans lequel plusieurs services WCF sont hébergés sur une seule batterie de serveurs VM (et plusieurs machines virtuelles) derrière un pare-feu. Certains services effectuent des appels vers d'autres services. Actuellement, nous appelons ces services sur http. L'appel est acheminé vers l'équilibreur de charge et chaque appel est routé vers l'une des machines virtuelles.Comment appeler le service WCF sur la machine locale

Pour des raisons de performances, nous souhaitons appeler le service sur la machine locale. Si possible, nous voulons éviter les surcharges de sérialisation et de désérialisation et l'appeler directement (en utilisant MEF?). J'aimerais savoir comment d'autres personnes gèrent ce genre de situation.

Répondre

1

Pourriez-vous simplement définir un point de terminaison supplémentaire pour la machine locale.

NetNamedPipeBinding Class

« Fournit une liaison sécurisée et fiable qui est optimisée pour la communication sur la machine. »

+0

Je vais essayer. Mais quelle est la sérialisation utilisée? –

+0

Je ne sais pas comment NamedPipeBinding sérialise mais je sais qu'il est optimisé pour la communication sur machine et cela semble être votre question. Je ne pense pas que vous puissiez vous en passer sans sérialiser car ce n'est pas un appel de processus. – Paparazzi

0

Vous devez obtenir le projet de service Web sur votre machine locale et de créer un répertoire virtuel pour que sur votre machine et le point à cela de votre code, vous pouvez pointer localement et aussi debug ..

0

Vous pouvez démarrer le service sur votre ordinateur local et modifier les fichiers de configuration pour utiliser uniquement votre hôte local en mode débogage et la machine virtuelle de production en mode édition.

Questions connexes