Qual è il metodo più veloce per passare i messaggi tra i diversi processi in C #?
-
18-09-2019 - |
Domanda
Ho un sacco di componenti aggiuntivi caricati da Microsoft AddIn quadro tutto in processi separati.
pacchetti arrivano da un lato (anche un componente aggiuntivo) quindi ottenere invia a un controllore (anche un componente aggiuntivo) che coordina il processo del pacchetto. Il controllore quindi invia il pacchetto a più altri componenti aggiuntivi uno alla volta, a seconda del contenuto e il risultato ricevuto dall'ultimo componente aggiuntivo.
La mia domanda è sarà strato di comunicazione del AddIn Framework essere il metodo a digiuno di fare questo o dovrò ottenere prestazioni migliori dal WCF con named pipe o TCP netta, o qualcosa di completamente diverso?
Soluzione
Come per qualsiasi domanda prestazioni:. non v'è alcun sostituto per il test proprio
Se possibile, non codificare il livello di comunicazione e testare sia di scegliere il default.
Mi aspetterei net-tcp di essere più veloce come named pipe hanno ulteriori livelli di astrazione su prese di fondo, ma questa è una stima approssimativa. (D'altra parte, named pipe hanno una più stretta integrazione con l'autenticazione di Windows.)