2 Stimmen

Würden Sie EnterpriseServices bei einer neuen Unternehmensentwicklung einsetzen?

Wie Sie vielleicht bereits wissen, kann verwalteter Code (.NET-Anwendungen) COM+ über EnterpriseServices und macht Themen wie verteilte Transaktionen , Ressourcenbündelung y Synchronisierung "einfacher zu programmieren", da die Lösungen als unterstützende Infrastruktur für die Anwendung durch COM+ bereitgestellt werden.

Wenn sich Ihre Anwendungsserver in einer Windows-Domäne befinden, kann COM+ " macht Ihre Anwendungen automatisch skalierbarer, indem es Thread-Pooling, Objekt-Pooling und Just-in-Time-Objektaktivierung bietet. COM+ hilft auch, die Integrität Ihrer Daten zu schützen, indem es Transaktionsunterstützung bietet, selbst wenn eine Transaktion mehrere Datenbanken über ein Netzwerk umfasst. (MS-Quelle)

Nehmen wir an, Sie müssen eine große Anwendung von Grund auf in einem Unternehmen entwickeln, das hat nicht COM+ Komponenten geschrieben, die Sie wiederverwenden können, so dass Sie pas an diese Technologie gebunden.

Dies wird ein großes System sein, aber Sie wissen, dass es mit der Zeit noch viel größer werden könnte. Nehmen wir an, es ist so etwas wie ein großes ERP-System, in dem ständig verteilte Transaktionen stattfinden. Nehmen wir an, der Kern des Systems befindet sich in einer Microsoft Windows-Domäne, so dass die Einführung von COM+ über System.EnterpriseServices (ES) eine Option ist. Sie werden einige Komponenten für Dritte verfügbar machen müssen, und das können Sie über WCF tun.

Würden Sie diese Technologie nutzen, wenn Sie wüssten, dass es sie gibt und dass Ihre Umgebung kompatibel ist?

Wenn die Antwort nein lautet, sind alle von COM+ angebotenen Dienste, wie verteilte Transaktionen , verfügbar und einfach zu bedienen in einer vollständig verwalteten Umgebung?

1voto

jwmiller5 Punkte 2564

Ich würde EnterpriseServices wahrscheinlich nicht verwenden, wenn Sie nicht bereits mit COM verheiratet sind. Ich habe heute Morgen über ein ähnliches Problem nachgedacht, und wenn Sie Erfahrung mit COM haben, dann ist EnterpriseServices ein Geschenk des Himmels. In Zukunft würde ich eine modernere (.NET) Infrastruktur wählen, weil

  1. Es ist einfacher, Entwickler (und Schulungen) zu finden.
  2. Die Software von Drittanbietern wird sich auf .NET konzentrieren.
  3. MS PSS ist eher für die .NET-Entwicklung verfügbar (ich weiß, dass die COM-Unterstützung nicht eingestellt wird, aber versuchen Sie einmal, zwei verschiedene Themen aufzurufen und die Antwort abzuwarten)

0voto

Brody Punkte 2076

いいえ。

Wir hatten unendlich viele Probleme (hauptsächlich unlösbare Speicherlecks in COM+ - verursacht durch verschiedene COM+ Interop-Bits, die wir nicht beeinflussen konnten), als wir mit .Net in COM+ arbeiteten. Wir wechselten zu WCFServices, die die Funktionalität der Geschäftsschicht offenlegen, und beschränkten unsere verteilten Transaktionen auf ein Minimum (d.h. die Transaktion wird innerhalb des WCF-Dienstes abgeschlossen - die einzige Möglichkeit, wie man es wirklich machen kann). Mit den eingebauten .Net-Transaktionsfunktionen können wir alles, was wir für Transaktionen benötigen, abwickeln.

Ich würde bei verschiedenen WCF-Dienstschichten bleiben, um die Funktionalität freizulegen. Behalten Sie eine Schicht intern und bieten Sie exponierte Dienste auf einer externen Schicht an, die mit der internen Schicht kommuniziert. Es ist ein bisschen schwer, aber es scheint später gut zu skalieren und bietet die Sicherheit, die Sie erwarten (und benötigen).

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X