IT-Academy Logo
Sign Up Login Help
Home - Glossar - M - MTS


MTS

Autor: Martin Puaschitz (onestone)
Datum: 01-01-2002, 21:53:10
Referenzen: http://www.glossar.de/
Ansichten: 2235x

[Druckansicht] [Als E-Mail senden]

Abkürzung für "Microsoft Transaction Server". Technologie für verteilte Anwendungen mit entsprechendem Performancegewinn.

Durch den immer stärkeren Einsatz eines Extranets oder des Internets für geschäftskritische Anwendungen sind die Anforderungen an Programme immens gestiegen. Anwendungen müssen

rund um die Uhr verfügbar sein (24 Stunden, sieben Tage die Woche), auch Tausende von Benutzern zuverlässig verarbeiten und natürlich dürfen die Antwortzeiten trotz allem nicht zu lang werden. Um viele dieser Probleme zu lösen, hat Microsoft 1996 den Microsoft Transaction Server (MTS) vorgestellt - ursprünglicher Codename "Viper".

Das Elementarste, das der MTS voraussetzt, ist eine "Drei-Schichten-Architektur (three-tiered-architecture). Dies bedeutet, daß eine Anwendung nicht mehr einfach nur eine ausführbare EXE-Datei ist, die alles in sich vereint, sondern aus mindestens drei Teilen besteht. (Sind es mehr, spricht man von einer n-Tiered Architektur.) Die einzelnen Schichten teilen sich die Arbeit und diese Trennung ermöglicht es sogar, bei Bedarf jeden Teil der Anwendung auf einem eigenen Computer auszuführen, so dass das Programm von drei Computern bearbeitet wird (anstatt von einem). Neben dem möglichen Geschwindigkeitszuwachs erlaubt die Drei-Schichten-Architektur ein Mitswachsen der Anwendung: Am Anfang eines Projekts werden z.B. noch alle Schichten auf einem einzigen Computer ausgeführt. Läuft das Projekt gut und steigt die Benutzerzahl an, werden die Schichten auf verschiedene Computer verteilt. Nicht zu vergessen ist auch der Vorteil der Wiederverwendbarkeit: Liegt ein Programm erst einmal in einer verteilten Struktur vor, können andere Programme sehr leicht auf Komponenten zugreifen. Die wichtigesten Schichten sind:

Eine Präsentationsschicht (Frontend oder Client) mit den Benutzerdiensten. Unter Windows sind das beispielsweise die Fenster, in denen der Benutzer Daten eingibt.

Eine Applikationsschicht (Business Objects Tier, Businesslogik oder Middletier) mit den Geschäftsdiensten; hier kaufen die eigentlichen Programme. Die Applikationsschicht stellt die Logik des Programms dar, z.B. kann sie überwachen, dass keine Stückzahl an das System weitergereicht wird, die kleiner "0" ist. Der MTS wurde speziell zur Verwaltung von Applikationsschicht-COM-Komponenten entwickelt. Wenn also von Businesslogik, Middletier oder Applikationsschicht die Rede ist, dann sind damit immer unter MTS laufende COM-Komponenten gemeint.

Eine Datenzugriffsschicht (Data Access oder Backend), die für das Bereitstellen und Abspeichern der Daten zuständig ist. Hierfür wird i.A. eine Datenbank wie der SQL Server oder Oracle eingesetzt werden.
Übrigens: mehrschichtige-Software-Architektur ist keine neue Erfindung: Auch in einem altehrwürdigen zweischichtigen Client-Server-System greift z.B. eine Terminal-Software auf eine SQL-Datenbank zu, die im Netzwerk liegt..

Besonders im Rahmen des MTS wird gerne diskutiert, in welcher der Schichten sich das eigentliche Programm befindet. Als Beispiel sei die Überprüfung angeführt, ob eine eingegebene Stückzahl gradzahlig und größer als Null ist: Die Überprüfung kann direkt im Client abgefangen werden (Beispiel aus der Web-Technik: per Java-Skript auf der Browser-Seite), die Applikationsschicht könnte es verhindern (durch ein auf dem Web-Server laufendes CGI- oder PHP-Skript) oder aber die Datenbank lässt es nicht zu. Genauso gut ist es aber möglich, dass weder die Datenbank noch der Client sich um dieses Detail kümmern, lediglich die Applikationsschicht kümmert sich um dieses Detail. Das jeweilige Vorgehen hängt letztendlich von den Personen ab, die ein solches Programm entwickeln: Ist beispielsweise einen versierter Datenbankadministrator (DBA) verfügbar, der auch schon bisher sehr komplexe Datenbanken entwickelt hat, so sollte doch ein großer Teil der Logik in die Datenbank verlagert werden! Die Applikationsschicht ist in einem solchen Fall lediglich dafür zuständig, die Daten der Clients in SQL zu übersetzen und an die Datenbank weiterzureichen.

Obwohl die Drei-Schichten-Architektur etliche Vorteile aufweist, sind auch einige Probleme zu berücksichtigen. Das wohl größte besteht in der Geschwindigkeit der Kommunikation der Schichten untereinander. Solange alle drei Schichten auf einem einzigen Computer laufen, treten Geschwindigkeitsprobleme so gut wie überhaupt nicht auf. Sobald sich jedoch die Schichten auf verschiedenen Computern befinden (und somit die gesamte Kommunikation über das Netzwerk abläuft), verhält sich die Lage ganz anders.




Userdaten
User nicht eingeloggt

Gesamtranking
Werbung
Datenbankstand
Autoren:04508
Artikel:00815
Glossar:04116
News:13565
Userbeiträge:16552
Queueeinträge:06246
News Umfrage
Ihre Anforderungen an ein Online-Zeiterfassungs-Produkt?
Mobile Nutzung möglich (Ipone, Android)
Externe API Schnittstelle/Plugins dritter
Zeiterfassung meiner Mitarbeiter
Exportieren in CSV/XLS
Siehe Kommentar



[Results] | [Archiv] Votes: 1154
Comments: 0