MTS Microsoft Transaction Server Martin Basziszta
Features l Die MTS-Laufzeitumgebung. l MTS Explorer, eine grafische Benutzeroberfläche l (APIs und Ressourcen- Verwalter) l Drei Beispielanwendungen (Bankbeispiel!) l MS DTC für Transaktionen
Die MTS- Laufzeitumgebung - 1 Zusammenstellung von Systemdiensten: l Verteilte Transaktionen l Automatische Verwaltung von Prozessen und Threads l Verwaltung von Objektinstanzen l Ein verteilter Sicherheitsdienst
Die MTS- Laufzeitumgebung - 1 l MTS arbeitet mit jedem Anwendungsentwicklungswerkzeug, das ActiveX-DLLs (Dynamic-Link Libraries) erstellen kann. l MTS arbeitet mit einer breiten Palette von Ressourcen-Managern (Datenbanksysteme, Dateisysteme und Dokumentenspeichersysteme
MTS Explorer l grafische Benutzeroberfläche für die Verwaltung von MTS- Komponenten l Explorer-Hierarchie: ·Computer ·Pakete ·Komponenten ·Rollen ·Schnittstellen ·Methoden
MTS-Schnittstellen ·Angeben, dass die Arbeit eines Objekts abgeschlossen ist. ·Eine Transaktion daran hindern, dass sie übermittelt wird. ·Erstellen anderer MTS-Objekte. ·Einbeziehen der Arbeit anderer Objekte in den Bereich der Transaktion des aktuellen Objekts. ·Ermitteln, ob eine aufrufende Prozedur zu einer bestimmten Rolle gehört. ·Ermitteln, ob die Sicherheit aktiviert ist.
MS DTC = Microsoft Distributed Transaction Coordinator l für Transaktion notwendig l Dienst in Windows NT- (Windows 98-) Systemen l verteilte Transaktion für Aktualisierungen an transaktionsgeschützten Ressourcen auf einem oder mehreren Systemen
Remote-Kommunikation in COM l Zwei Hilfsobjekte: Proxy (im Client- Prozess), Stub (im Objekt-Prozess l RPC als Kommunikationskanal zw. Proxy und Stub l Serielles Verschicken von Methodenparametern = Marshaling
Proxy/Stub
Mögliche Zugriffsarten
3 Schichten
Transaktion - 1 l Transaktionsunterstützungsattribut der Komponente setzen (NoTransactions, Requires Transaction, Uses Transaction, Requires New Transaction) l Ein Objekt dieser Komponente erstellen, aktivieren und wieder freigeben l Im Objekt Transaktion kontrollieren: SetComplete, SetAbort
Transaktion - 2 Function ' Objektkontext Dim objCtx As ObjectContext Set objCtx = GetObjectContext ' Daten bearbeiten... ' Trans. gültig setzen objCtx.SetComplete End Function
Transaktion - 3 On Error GoTo ErrorHandler... ErrorHandler: ' Transaktion ungültig setzen objCtx.SetAbort Err.Raise
Registrierung l Server-DLL mit MTS l Client: CliReg32.exe, ServerApp.VBR, ServerApp.TLB l CliReg32.exe Server.VBR -t Server.TLB -d -s -L -nologo l (RegSvr32.exe für Server-DLLs)
Installation (mit ORACLE) l Windows NT 4.0 l Windows NT Service Pack 3 l SQL*Net + Patches l IE4.01 SP1 l MTS 2.0 aus Windows NT 4.0 OptionPack l Windows NT Service Pack 5 l MS Datenzugriffskomponenten (MDAC_TYP.EXE, Microsoft ODBC Driver for Oracle !!!) l (Windows NT Service Pack 6)
Literatur l COM- u. MTS-Programmierung mit Visual Basic, Ted Pattison, Microsoft Press, ISBN , 1999 l VB 6.0-Bücher v. Microsoft Press (Komponenten-, Datenzugriffs-, Programmier- handbuch) l Inside Distributed COM, G. Eddon, H.Eddon, Microsoft Press, ISBN l Microsoft MSDN (VB-CDs bzw. Internet) l MTS-Online-Hilfe l Fachmagazin basicpro, Steingräber Fachverlag, Kiel,
DEMO l MTS l Bsp.: Client/Server/Oracle8