2009-04-21 5 views

Antwort

2

Von den Tags verstehe ich, dass wir über .NET sprechen. Vielleicht sollten Sie Microsoft WCF ausprobieren. Es vereinheitlicht dieses Problem und abstrahiert die spezifische Kommunikationstechnologie zwischen Prozessen (Inter-Service) von tatsächlichem Code. In der Regel werden Sie die Schnittstellen entwerfen und schreiben, die Ihre Prozesse verwenden, um miteinander zu kommunizieren. Anschließend konfigurieren Sie eine bestimmte Kommunikationstechnologie in der XML-Konfigurationsdatei. Das heißt, Sie haben eine klare Trennung zwischen "worüber reden die Prozesse" und "wie wird diese Kommunikation konkret umgesetzt?".

WCF unterstützt SOAP, TCP/IP-Kommunikation, MSMQ usw., Ihre Prozesse können IIS-gehostete Web-Services, übliche Windows-Dienste, Konsolenanwendungen usw. sein - all dies unter einheitlichem Framework. Ich denke, das ist genau das, wonach Sie suchen.

+0

Er sagte auch EASY obwohl. WCF hat den schlimmsten Bindungs- und Setup-Albtraum für jedes MS-Produkt, denke ich. Versuchen Sie, anonyme Dienste zu erhalten, um eine Verbindung herzustellen, wenn der Server Teil einer Domäne ist - Sie müssen die Systemregistrierung bearbeiten! ACK! –

+0

Nun, ich kenne Ihren speziellen Fall nicht, daher kann ich nicht argumentieren ... Aber von dem, was ich gesehen habe, ist die WCF-Konfiguration ziemlich intuitiv und gut dokumentiert. Und wie bei Microsoft-Produkten und -Frameworks üblich, funktionieren die Dinge fast out-of-the-box (im Gegensatz zu vielen Lösungen von Drittanbietern), wenn Ihr Szenario eines der von Microsoft beschriebenen Szenarien ist. Jedenfalls, Versuch es wert, meiner Meinung nach. –

0

Es hängt wirklich von dem Projekt, da es eine große Anzahl von Methoden ist.

Dies hängt davon ab, wo die verschiedenen Teile des Projekts ausgeführt werden (sie können auf verschiedenen Servern oder auf verschiedenen Technologie-Stacks ausgeführt werden.).

Die häufigste Methode ist wahrscheinlich Webdienste. Obwohl diese mit einem Overhead verbunden sind, kann es sich lohnen, eine einfache Schnittstellen-API über eine DLL zu betrachten.

Was auch immer Sie tun, sollte wahrscheinlich sorgfältig durchdacht und entworfen werden, unter Berücksichtigung von Sicherheit und Leistung, und wie Sie es in der Zukunft erweitern oder modifizieren werden.

0

Nicht unbedingt die beste oder die einfachste ....

In der .NET-Welt versuchen, MSMQ oder IBM MQ-Nachrichtenmiddleware-Warteschlange.

Wenn die Kommunikation hauptsächlich in einer Richtung erfolgt, sollten Sie die WCF-Dienste in Betracht ziehen, die sowohl gut als auch einfach sind, wenn Sie die Code-Generatoren in Visual Studio die meiste Arbeit für Sie erledigen lassen.

+0

WCF unterstützt auch 2-Wege (Duplex) Kommunikation, es gibt mehrere mitgelieferte Bindings, die das unterstützen - siehe wsDualHttpBinding, netNamedPipeBinding und natürlich netTcpBinding und einige andere ... Siehe hier: http://msdn.microsoft.com/de -us/library/ms730879.aspx –

Verwandte Themen