Wie geht es weiter in der nachrichtenbasierten Welt?

Slides:



Advertisements
Ähnliche Präsentationen
Cadastre for the 21st Century – The German Way
Advertisements

Service Oriented Architectures for Remote Instrumentation
Service Discovery in Home Environments
DNS-Resolver-Mechanismus
P. Marwedel Informatik 12, U. Dortmund
INFSO-RI Enabling Grids for E-sciencE CrossGrid Migrating-Desktop Marcus Hardt Forschungszentrum Karlsruhe GmbH An Induction to.
Microsoft Referenzarchitekturen- Infrastruktur für Connected Systems
1 Sascha Michael Competence Manager Integration Umsetzung einer SOA-basierten Retail Plattform.
Entwicklung und Einsatz von Smart Client-Anwendungen Jens Häupel Developer Evangelist Microsoft Deutschland GmbH Dirk Primbs.
Windows Vista Deployment
Windows Vista für Entwickler
Neue Mobilität Frank Prengel Developer Evangelist Developer Platform & Strategy Group Microsoft Deutschland GmbH
Ein erster Blick auf ASP.NET 2.0 Whidbey Uwe Baumann Developer Platform & Strategy Group Microsoft Deutschland.
1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH.
Windows Server 2003 Managment Eric Hellmich
An OGC Standards Driven Geodata Online Access for DLRs National Remote Sensing Data Library (NRSDL) Torsten Heinen German Remote Sensing Data Center (DLR/DFD)
Dr. M. Schlottke Common Description of Web Services Source: P. Gerbert, 2002 Web Services allow to establish B2B e-commerce on the fly Web Services allow.
Gesellschaft für wissenschaftliche Datenverarbeitung mbH Göttingen Am Fassberg, Göttingen Fon: Fax:
.NET – Quo Vadis? Dariusz Parys Developer Group Microsoft GmbH.
Visual Extend Features für Entwickler deutschsprachige FoxPro User Group Uwe Habermann VFX 05 D.
WebCast: Managed Smart Tags mit VSTO Jens Häupel.NET Technologieberater Microsoft Deutschland GmbH
CCNA Exploration Network Fundamentals
Gehärtet von Anfang an { Windows 2008: Spezielle Aufgaben }
Microsoft Office Forms Server
November 15, 2008 Software plus Service – das Konzept hinter der neuen Microsoft Plattformstrategie Tim Fischer – Microsoft Deutschland GmbH Platform Marketing.
Windows Vista für Entwickler: Microsoft.NET Framework 3.0 Nico Orschel Student Partner TU-Ilmenau.
No. 240 Marcel Gnoth, NTeam GmbH Message Queueing Stille Post mit dem.Net-Framework.
Microsoft Security Tools Christian Thor Systems Engineer Microsoft GmbH.
Google App Engine Microsoft Windows Azure
Institut AIFB, Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Towards Automatic Composition of Processes based on Semantic.
SQL Server Service Broker
Sanjay Patil Standards Architect – SAP AG April 2008
| DC-IAP/SVC3 | © Bosch Rexroth Pneumatics GmbH This document, as well as the data, specifications and other information set forth in.
Best Practices in der Datenbank-programmierung
Centre for Public Administration Research E-Government for European Cities Thomas Prorok
BAS5SE | Fachhochschule Hagenberg | Daniel Khan | S SPR5 MVC Plugin Development SPR6P.
3rd Review, Vienna, 16th of April 1999 SIT-MOON ESPRIT Project Nr Siemens AG Österreich Robotiker Technische Universität Wien Politecnico di Milano.
Z Corp Customer Examples
Projekt Alcatraz Java RMI / Spread - Gruppe A4.
© All rights reserved. Zend Technologies, Inc. Jan Burkl System Engineer, Zend Technologies Zend Server im Cluster.
| Basel Von der SharePoint Taskliste zum gemanagten Project in Project Server Luca Argentiero Solution Specialist Microsoft
The free XML Editor for Windows COOKTOP Semistrukturierte Daten 1 Vortrag Semistrukturierte Daten 1 COOKTOP The free XML-Editor for Windows
Your name Bedeutung von Internet- Technologien Gruppe 1 Andreas Feuerstein Philipp Hochratner Christian Weinzinger.
Developer Day Webseiten auf Windows Azure hosten Britta Labud bbv Software Services AG Roland Krummenacher bbv Software Services AG.
Jan Hentschel Microsoft Expert Student Partner Windows Azure Windows Azure SQL Server auf IaaS How-to.
Neno Loje Berater & MVP für Visual Studio ALM und TFS (ehemals VSTS) Hochqualitative Produkte mit Visual Studio & TFS 2010.
Ralf M. Schnell Technical Evangelist Microsoft Deutschland GmbH.
Frank Fischer + Bernhard Frank Microsoft Deutschland GmbH.
Roger Boesch Developer Technical Specialist Developer and Platform Group.
Quelle: Standish Group, 2006 Fourth Quarter Research Report, CHAOS Research Results.
3/28/2017 8:11 PM Visual Studio Tools für Office { Rapid Application Development für Office } Jens Häupel Platform Strategy Manager Microsoft Deutschland.
Dariusz Parys Developer Evangelist Microsoft Deutschland GmbH.
PresenterCompanyContact Windows Azure ASP.NET Web-Anwendungen schnell und zuverlässig bereitstellen.
XML IV: Cocoon 2.
Virtual Earth Visualisierung von Geodaten Daniel Walzenbach, Microsoft Deutschland GmbH
Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Web Application Engineering & Content Management.
SharePoint FIS HandsOn – out of the Box.
Ein Projekt des Technischen Jugendfreizeit- und Bildungsvereins (tjfbv) e.V. kommunizieren.de Blended Learning for people with disabilities.
Office Business Anwendungen mit SharePoint Fabian Moritz | MVP Office SharePoint Server.
© All rights reserved. Zend Technologies, Inc. Jenseits von var_dump(): Debugging in ZF Jan Burkl System Engineer.
1 von 10 ViS:AT Abteilung IT/3, IT – Systeme für Unterrichtszwecke ViS:AT Österreichische Bildung auf Europaniveau BM:UKK Apple.
Die nächste Generation von Microsoft Office System 2007 Microsoft Office System Gernot Kühn Technologieberater Office System Mittelstandsbetreuung.
3rd Review, Vienna, 16th of April 1999 SIT-MOON ESPRIT Project Nr Siemens AG Österreich Robotiker Technische Universität Wien Politecnico di Milano.
1 Intern | ST-IN/PRM-EU | | © Robert Bosch GmbH Alle Rechte vorbehalten, auch bzgl. jeder Verfügung, Verwertung, Reproduktion, Bearbeitung,
Launch ON Global.vi System ID object name classname Services to suscribe Observer Control Ref vi-path Service name Step 1 : Objects register to the Global.vi´s,
EN/FAD Ericsson GmbH EDD/ Information im 21. Jahrundert muss Erwünscht Relevant Erreichbar Schnell Kostenlos!?
Technische Universität München 1 CADUI' June FUNDP Namur G B I The FUSE-System: an Integrated User Interface Design Environment Frank Lonczewski.
Microsoft Partner Network (MPN)
Computer Services Business challenge
Azure Mobile Services Deep dive into node.js scripting
 Präsentation transkript:

Wie geht es weiter in der nachrichtenbasierten Welt? Neues in MSMQ 3.0 Wie geht es weiter in der nachrichtenbasierten Welt?

Zur Person Dipl. Inf. Marcel Gnoth, MCSD NTeam GmbH, Berlin www.gnoth.net NTeam GmbH, Berlin www.nteam.de Leiter Softwareentwicklung MS Gold Partner Busines Intelligence, Information Worker, Advanced Infrastructur Autor dotnetpro und dotnet-magazin Trainer (u.a. SPC Berlin, www.spc.de ) Themen VB6, COM Datenbanken, Yukon Verteilte Informationssysteme mit .Net Office System 2003 Integration Reisen in ferne Länder: www.gnoth.net/reise.htm 

Multiple Destination Delivery … Agenda Einleitung MSMQ Neues in Version 3 Trigger HTTP Multiple Destination Delivery … MSMQ und Indigo – wie geht es weiter …? Indigo …? SQL-Service Broker …? Fazit

Einleitung

Message Queueing Briefe zwischen Computern versenden

Asynchrone Abarbeitung von Aufgaben Einführung Konzepte Asynchrone Abarbeitung von Aufgaben Empfänger oder Sender kann Offline sein Nachrichten werden zwischengepuffert Aktiver Austausch von Informationen zwischen Programmen / Computern Pushen der Infos Workflows Offline

Bestandteil des Win2k / WinXP Setup Active Directory Einleitung / Basics Bestandteil des Win2k / WinXP Setup Nicht Standardinstallation Active Directory Ohne AD-> Workgroup Modus, nur Private Queues Computerverwaltung SnapIn VS.net Integration Server Explorer

MessageQueue.Create (Path As String) New MessageQueue (Path As String) Öffnen einer Queue MessageQueue.Create (Path As String) New MessageQueue (Path As String) MessageQueue.Exists (Path As String) Imports System.Messaging Private WithEvents m_JobQueue As MessageQueue Sub Test() m_JobQueue = New MessageQueue _ ("Gengar\Private$\Jobs") End Sub Dim mqs As MessageQueue() = _ MessageQueue.GetPrivateQueuesByMachine("Gengar")

Schnellste und flexibelste Methode Öffnen mit FormatName Offline Mode, ohne MQIS Schnellste und flexibelste Methode FormatName:Public=5A5F7535-AE9A-41d4-935C-845C2AFF7112 FormatName:DIRECT=SPX:NetworkNumber;HostNumber\QueueName FormatName:DIRECT=TCP:IPAddress\QueueName FormatName:DIRECT=HTTP://MSMQComputer/msmq/MyPublicQueue FormatName:DIRECT=HTTPS://MSMQComputer/msmq/MyPublicQueue FormatName:DIRECT=OS:MachineName\QueueName FormatName:DIRECT=OS:MachineName\Private$\QueueName Dim myQueue As New MessageQueue _ ("FormatName:DIRECT=OS:Gengar\private$\Jobs")

Senden einer Nachricht Queue öffnen Send Methode mit einem Objekt aufrufen Objekt wird serialisiert <Serializable()> Public Class Job XML ist Standardformat z.B. DataSets verschicken Eigenes Message – Objekt verwenden Konfiguration vieler Parameter msgQ.Send(myObject, "Message Label")

Nachricht empfangen Receive BeginReceive Asynchrones Empfangen Dim msg As Message = mqResults.Receive() mqResults.BeginReceive() Private Sub mqResults_ReceiveCompleted(..., _ ByVal e As ...ReceiveCompletedEventArgs) _ Handles mqResults.ReceiveCompleted Dim myMsg As System.Messaging.Message myMsg = e.Message End Sub

Eigenschaften Offline fähig Journal Timeouts Acknowledgements Transaktionen Interne und DTC

Messaging entwickelt sich weiter MENU Neues in MSMQ 3.0 Messaging entwickelt sich weiter

Nachrichtentransport über HTTP Neue Feature in MSMQ 3.0 Nachrichtentransport über HTTP Ich sage nur Port 80 … SOAP Extensions for Reliable Messaging Load Balancing, Webfarms Trigger Jetzt Bestandteil von MSMQ 3.0 Nachrichten an mehrere Empfänger senden Publisher / Subscriber Real-Time Messaging Multicast , Distribution Lists Message lookup Suchen nach Nachrichten ohne Cursur mit einer 64-bit lookup ID , schnellster Zugriff Liste: http://www.microsoft.com/windows2000/technologies/communications/msmq/30features.asp

Verbesserte Features in MSMQ 3.0 AD Integration Konfiguration im AD Clients verwenden LDAP MMC Support Workgroup Mode Support Cluster Support CE Support MSMQ Nachrichtenspeicher jetzt (theoretisch) 1TB Schnellerer Neustart, auch wenn große persistente Nachrichten vorliegen

Programmierschnittstelle für die Verwaltung Statistiken über Messages Überwachen des MSMQ hop-to-hop transactional messaging Protokols Überwachen und steuern des MSMQ Dienstes Pause und Start für Queues Nachverfolgung von MSMQ Nachrchten von der Quelle bis zum Ziel Viele Funktionen nur als COM- oder C-Schnittstelle Nicht alles über .Net Framework verfügbar 

HTTP Transport über das Internet Wer braucht schon Webservices 

Transport über http, https + SOAP Einleitung MSMQ + HTTP Transport über http, https + SOAP http Unterstützung muß beim Setup ausgewählt werden, IIS auf dem Empfänger! Neues virtuelles Verzeichnis wird angelegt http://localhost/msmq/ Nur senden, kein Lesen von remote queues Gleiche Limitation haben Webservices SOAP Header kann ausgelesen werden Dim s As String = String.Format _ ("FormatName:Direct=http://{0}/msmq/Private$/{1}", strCom, strQue) Dim mq As MessageQueue = New MessageQueue(s) mq.Send(txtBody.Text, txtLabel.Text) “FormatName:Direct=http://CHIHIRO/msmq/Private$/httptest”

MSMQ “lauscht” nicht direkt an irgendwelchen Ports Hardened MSMQ mode MSMQ “lauscht” nicht direkt an irgendwelchen Ports Akzeptiert nur Nachrichten über IIS Alle augehenden Queues, die nicht über HTTP gehen sind gesperrt Nachrichten können plaziert werden, werden aber nicht gesendet, bis der hardened Mode aufgehoben ist

Demo Senden über HTTP

Aktionen beim Eintreffen von Nachrichten auslösen Trigger Aktionen beim Eintreffen von Nachrichten auslösen

Windows Dienst (mqtgsvc.exe) Verwendet Regeln Aktion Was sind Trigger? Windows Dienst (mqtgsvc.exe) Verwendet Regeln Aktion COM Komponente (.net) Exe Parameterübergabe

Trigger Objekte Trigger Condition Action Rule kann mehrere Rules enthalten Condition Eigenschaften der Nachricht werden beim Eintreffen geprüft Mehrere Kombinationen möglich Action Eine Exe oder eine COM-Komponente Parameterübergabe kann definiert werden Rule Paar von Condition und Action

Trigger neu anlegen Über Computerverwaltung Triggers Admin Utility for MSMQ

Demo Trigger

Multiple Destinations Senden einer Nachricht an mehrere Empfänger

Multiple Destinations Wege Distribution Lists Multiple-Element Format Names Multicast Addresses Jede Nachrichtenkopie hat die gleiche ID Kein Tracing Keine AcknowledgeMessages Kein .Net API, COM oder C Es kann eine Liste von ResponseQueues mitgegeben werden MSMQMessage.ResponseDestination , MSMQDestination

Senden über Distribution Lists Listen im Active Directory Public Queues, Queue Aliases, andere Distribution Lists Private Sub SendingToDL(ByVal strADsPathDL As String) ' Declare Message Queuing objects. Dim dest As New MSMQDestination Dim msg As New MSMQMessage ' Obtain an MSMQDestination object. dest.ADsPath = strADsPathDL On Error GoTo ErrorHandler msg.Label = "Test Message“ msg.Send(DestinationQueue:=dest) dest.close() Exit Sub ErrorHandler: MsgBox(Err.Description End Sub

Senden über Multiple Element Format Names Private Listen mit Warteschlangen Kombination aus beliebigen Direct-Formatnames Mehrere FormatNames werden duch Kommata getrennt verknüpft ' Create multiple-element format name. strFormatName1 = "DIRECT=OS:" & "Chihiro" & "\private$\" & "Gengar“ strFormatName2 = "Direct=http://Chihiro/msmq/Private$/Enton“ strFormatName3 = "Direct=http://192.168.0.5/msmq/Private$/Bisasam“ strFormatName4 = "DIRECT=TCP:" & "192.168.0.5" & "\private$\" & "Onix“ strMultipleElement = strFormatName1 & "," & strFormatName2 & "," & _ strFormatName3 & "," & strFormatName4 'Set format name of MSMQDestination object. dest.FormatName = strMultipleElement ' Set the message label. msg.Label = "Test Message MultElFormNam - " + Now.ToShortTimeString ' Send the message and close the MSMQDestination object. msg.Send(DestinationQueue:=dest) dest.Close()

Senden über Multicast Adressen Eine Multicastausgangsqueue Multicast Session über TCP Transport MSMQQueueInfo.MulticastAddress class D range (224.0.0.0 to 239.255.255.255 ) Zum Erzeugen einer Multicastadresse für eine Queue MSMQQueueInfo.Update aufrufen um Änderung zu speichern Keine transaktionalen Nachrichten Pragmatic General Multicast (PGM) Protokol

Mulitcast – Code Beispiel Const MULTI_CAST_ADR As String = "234.1.1.1:4455“ Const qiDest1 As String = "Chihiro\private$\Gengar“ Const qiDest2 As String = "Chihiro\private$\Enton“ qi = New MSMQ.MSMQQueueInfo qi.PathName = qiDest1 qi.Refresh() qi.MulticastAddress = MULTI_CAST_ADR qi.Update() qi = New MSMQ.MSMQQueueInfo qi.PathName = qiDest2 qi.Refresh() qi.MulticastAddress = MULTI_CAST_ADR qi.Update() Dim dest As New MSMQ.MSMQDestination Dim msg As New MSMQ.MSMQMessage dest.FormatName = "MULTICAST=" + MULTI_CAST_ADR msg.Label = "Test Message Multicast Adr - " + Now.ToShortTimeString msg.Send(DestinationQueue:=dest) dest.Close()

Multiple Destinations Demo Multiple Destinations

Lesen von remote Queues vermeiden Zugriffe aufs AD vermeiden Best Practices Lesen von remote Queues vermeiden MSMQ ist für remote Senden und lokales Lesen designed Zugriffe aufs AD vermeiden Lieber Private als Public Queues Verwenden Sie Time Outs Berücksichtigen Sie die Grenzen der asynchronous notification Setzen Sie Transaktionen mit Bedacht ein Verwenden Sie ACKs oder NAKs

Nächste Windowsversion Longhorn ca. 2007 Indigo in der Zukunft Nächste Windowsversion Longhorn ca. 2007 WinFS Avalon (GUI) Indigo (Kommunikation) Indigo soll die verschiedenen Kommunikationstechnologien zusammenführen, nicht abschaffen DCOM, MSMQ, WS, Remoting, Enterprise Services (COM+) Dienstorientierte Architektur (SOA) steht im Vordergrund

Internet Connection Firewall Presentation Data Communication Avalon Windows Forms Windows Forms ASP.NET WinFS ADO.NET Indigo Collaboration Document UI Media Object T/SQL XML Service Models Schemas Connectivity Messaging Services Desktop Services Desktop Window Manager Controls Interop Engine Adaptive UI Engine Services People Group ObjectSpaces People and Groups Synchronization (WinFS, Win32..) Channels (Datagram, Reliable, Peer, …) Policy Engine Presentation Object Manager Desktop Composition Engine Application Services Page/Site Composition Calendar Media Queuing Eventing Routing Document … DataSet Channel Security Collaboration History Media Services InfoAgent (PreferenceRules..) Data Model Transport Channels (IPC, HTTP, TCP…) Items SQL XML Message Encoder Animation and Composition Media Processing Capture and Sourcing Designer Services Personalization and Profiling Services Real-Time Activities System Services FileSystem Services (MetaDataHandlers..) Relationships Providers Communications Manager (Port) Transaction Framework Hardware Rendering Software Rendering and Sinks Controls Membership and Security Services Signaling Extensions Federation Base Operating System Services CLR Base Class Libraries Network Class Library Application Deployment Engine (Click-Once) Memory Manager Code Execution Loader Security Serialization Network Services Hosting Layer Demand Activation and Protocol Health PNRP Native WiFi SIP GDI/GDI+ Window Manager Global Audio Engine DirectX Graphics Transactions Identity & Security System Storage Management TCP Listener UDP Listener IPC Listener Graphics drivers Lightweight Transactions Transaction Coordinator Backup / Restore File Replication Service Virtual Disk Service Internet Connection Firewall DDI Input Manager Audio Drivers DirectX Graphics Mini port Kernel Transaction Manager Logging Service Redirectors Distributed File System Filter Manager Cache Manager Protocols Filter Engine TPC, UDP IPV4, IPV6 IPSEC QOS HTTP Listener Plug and Play Memory Manager Power Manager Config Manager Process Manager Security Reference Monitor LPC Facility Transacted NTFS Universal Data Format FAT 16/32 IO Manager Device Drivers Kernel SCSI/FC 802.3 802.11 .. Kernel Mode Hardware Abstraction Layer Make the connection

Indigo Architecture Service Model Connector Hosting Environments Messaging Services Service Model Queuing Instance Manager Context Manager Type Integration Service Methods Declarative Behaviors Transacted Methods Routing Connector Eventing Channels (Datagram, Reliable, Peer, …) Policy Engine Channel Security … Transport Channels (IPC, HTTP, TCP…) Message Encoder System Services Communications Manager (Port) Transaction Federation Hosting Environments ASP.NET .container .exe NT Service DllHost …

Indigo Connector Von außen sichtbar Intern Services Messages Ports SOAP Nachrichten Intern Ports URI Bezeichner Channels Transportiert zwischen Ports TCP, HTTP, ICP, MSMQ

MSMQ Server Wire Interop Web Services MSMQ Expose as a Web Service Upgraded Existing Client Server API API MSMQ MSMQ MSMQ / SRMP Soap Reliable Messaging Protocol

MSMQ Binary Migration Details Requirements Upgrade the platform Avoid Nothing: The full set of MSMQ features will interop Will not be supported

FAQ: What is the future of MSMQ and messaging technologies at Microsoft? A. The next version of MSMQ will be delivered as a component of the next version of Windows (code-named "Longhorn") and will interoperate with Indigo, the name for a collection of new programming frameworks. Indigo will be the framework of choice for building connected systems and will include powerful, reliable messaging capabilities. Other messaging technologies include Message Queuing (code named "MSMQ-T"), a feature in Microsoft BizTalk® Server 2004. In addition, the next version of Microsoft SQL Server™ (code-named Yukon) includes a feature called Service Broker.

FAQ: What is Indigo? A. Windows "Longhorn" will include a new communications infrastructure built around the Web services architecture, Indigo. Indigo provides a simple, powerful framework for transacted messaging with the best possible interoperability on the Windows server platform. The Indigo framework provides a rich, extensible feature set for reliable messaging, including tight and loose coupling models, durable or volatile storage, configurable delivery guarantees, and deployment flexibility. For more information, see the Indigo page on the MSDN Windows "Longhorn" Developer Center Web site.

FAQ: What is BizTalk Server 2004 Message Queuing? A. BizTalk Server 2004 includes Message Queuing, an adapter for MSMQ that enables high-performance interoperability between MSMQ applications and BizTalk Server. "Message Queuing" refers to this adapter, not a general-purpose reliable messaging technology. Message Queuing is used to integrate an MSMQ application with BizTalk Server 2004. For example, if an integration application uses BizTalk Server to orchestrate incoming Web services requests with an existing MSMQ application, BizTalk Server is leveraged for format and transport modification. For more information, see the BizTalk Server Web site.

FAQ: What is the SQL Server Service Broker? A. SQL Server "Yukon" includes Service Broker, a feature for database developers that facilitates building queuing semantics into SQL Server "Yukon" applications. For example, Service Broker could be used for a system which coordinates data processing among multiple SQL Server "Yukon" servers such that entries in a master customer database result in queued record transfer to a branch office. Or Service Broker could be used for a database application that stores and forwards records to another "Yukon" server for processing. For more information about the SQL Server "Yukon" release, see the SQL Server 2005 Web site. For information about specific features, including Service Broker, see An Overview of SQL Server "Yukon" for the Database Developer.

Artikel auf www.gnoth.net Links Artikel auf www.gnoth.net http://www.gnoth.net/Job/Publikationen.htm Send MSMQ Messages Securely Across the Internet with HTTP and SOAP http://msdn.microsoft.com/msdnmag/issues/03/12/MSMQandNET/default.aspx Newsgroups auf nntp://msnews.microsoft.com

Alles wird gut  Uff...