Message Queuing Systems
|
|
- Lars Kohl
- vor 2 Jahren
- Abrufe
Transkript
1 1 Message Queuing Systems Andreas Haller Institut für Telematik, Universität zu Lübeck Ratzeburger Allee 160, Lübeck, Germany Zusammenfassung Message Queuing Systems ist der Überbegriff für Message Oriented Middleware (MOM) sowie für die dabei verwendeten Protokolle, wie das Advanced Message Queuing Protocol (AMQP). Die Systeme kommunizieren synchron wie asynchron über so genannte Broker. Ziel ist, einen Nachrichtenaustausch zu etablieren, welcher einen hohen Nachrichtendurchsatz aufweist, und der vor allem zuverlässig ist. Message Queuing Systems sind die Grundlage für alle bekannten Instant Messaging Systeme am Markt, finden aber auch in jedem Betriebssystem bei der Taskabarbeitung Anwendung. In dieser Arbeit wird zunächst der Begriff Message Queuing Systems motiviert und die verwendeten Protokolle werden vorgestellt. Im weiteren Verlauf werden verschiedene Middlewarelösungen vorgestellt. Darauf folgt eine kurze Einführung über Message Queuing Systems und der angebotenen Softwarelösungen. Danach wird auf RabbitMQ näher eingegangen. Die Arbeit schließt mit einer Zusammenfassung bei der auch die zukünftige Entwicklung beleuchtet wird. Index Terms Message Queuing Systems (MQS), Message Oriented Middleware (MOM), Extensible Messaging and Presence Protocol (XMPP), Advanced Message Queuning Protocol (AMQP), Websphere MQ, Apache Active MQ, RabbitMQ, Message Queuing Services (MQS), Amazon Simple Queue Service (Amazon SQS), Microsoft Azure Services Platform I. EINLEITUNG Um das Thema Message Queuing Systems verstehen und einordnen zu können, muss man sich zunächst mit den Vorraussetzungen und der Entstehung dieser Systeme auseinandersetzen [1]. Message Queuing bezeichnet einen meist asynchronen Nachrichtenaustausch zwischen einem Sender und Empfänger. Ein Sender verschickt eine Nachricht, bei der sichergestellt ist, dass diese beim Empfänger ankommt und verarbeitet wird. Wann der Empfänger die Nachricht verarbeitet, kann der Sender nicht beeinflussen. Nur die tatsächliche Annahme und Verarbeitung ist sichergestellt. Message Queues oder Warteschlangen sind ein bereits etabliertes Verfahren der asynchronen Kommunikation. Vorallem innerhalb von Computersystemen oder innerhalb von Anwendungen wird dieses Prinzip schon seit Jahrzehnten eingesetzt. So sind das Betriebssystem Microsoft Windows, sowie Linux, ein Event- Driven System. Jede Eingabe oder Bewegung durch die Maus löst eine Nachricht oder Event aus. Über diese Nachrichten steuert das Betriebssystem seine eigenen Aufgaben, oder stellt Informationen an Anwendungen bereit. Die meisten Verfahren die hierbei verwendet werden, sind jedoch Closed Source und nicht ohne weiteres interoperabel [2], [3], [4], [5], [6]. Mit dem verstärkten Einsatz von verteilten Systemen wurde das Prinzip auch auf diese Problemdomäne übertragen. Nachrichten wurden jetzt über Rechnergrenzen hinweg verschickt. Die Anforderungen blieben gleich. Die Gefahr, dass Nachrichten über Rechnergrenzen hinweg verloren gehen, ist aber ungleich höher als innerhalb einer Anwendung oder eines Computersystems. Es entstand die Message Oriented Middleware (MOM) [7], [8]. Sie stellt nun die Basis für eine asynchrone Kommunikation zwischen Client und Server in einer verteilten Anwendung dar. Diese Form der Kommunikation steht im Gegensatz dazu, wenn Client und Server direkt und zeitgleich - also synchron - miteinander in Verbindung stehen und sich damit ebenso blockieren können. MOM wird daher auch als eine lose Kopplung zwischen den Teilnehmern bezeichnet [9]. Eine neuere Entwicklung sind die Message Queuing Services [10], welche die Leistungen der Message Oriented Middleware in die Cloud verschieben und somit Teil eines Software as a Service (SaaS) Netzwerkes sein können. Somit können die MOM-Funktionalitäten komfortabel über das Internet von nahezu jeder Plattform aus genutzt werden und ebenso komfortabel abgerechnet werden. Die weitere Arbeit ist wie folgt gegliedert: im nächsten Kapitel werden die gängigen Protokolle und deren Entstehung beschrieben. Kapitel 3 gibt einen Überblick über drei am Markt verfügbaren Message oriented Middleware Systeme und geht dabei im besonderen auf RabbitMQ ein. Kapitel 4 schließt mit der Beschreibung der Message Queuing Services. Das letzte Kapitel fasst die Erkenntnisse zusammen und gibt einen Ausblick über zukünftige Entwicklungen. II. PROTOKOLLE A. Extensible Messaging and Presence Protocol (XMPP) Das Extensible Messaging and Presence Protocol (XMPP; wurde zunächst unter dem Namen Jabber (www.jabber.org) bekannt. Es ist ein auf XML basierendes Protokoll, das von der Jabber open-source Gruppe 1999 zum Nachrichtenaustausch in Echtzeit ins Leben gerufen wurde [11]. Das Instant Messaging System Jabber war die erste Anwendung, die das Protokoll eingesetzt hat. In weiteren Iterationen des Protokolls wurde es von Google für Google Talk, von AOL für dessen Messenger und von Facebook für dessen Chat verwendet. Seit 2008 gehört Jabber zur Cisco Firmengruppe. Die Stärke von XMPP liegt in seiner Verbreitung. Da jedermann nicht nur Nutzer, auch einen eigenen XMPP Server betreiben können, gibt es keinen
2 2 zentralen Server und somit keinen Single Point of Failure. Die Sicherheit wird durch Isolation von einzelnen Netzen (isolierter Intranetserver) und durch eine hohe Verschlüsselung via Simple Authentication and Security Layer (SASL) und Transport Layer Security (TLS) gewährleistet. Auf das Protokoll aufbauend kann nahezu jede Funktionalität aufgesetzt werden. Die größte Schwäche von XMPP ist die Datenübertragung mittels XML. Hier gibt es deutlich bessere Ansätze wie das Advanced Message Queuing Protocol, das auf binären Datenversand setzt. Ein weiterer Nachteil ist die Client-Server-Kommunikation. Es findet keine direkte Kommunikation zwischen den einzelnen Nodes statt. Ein ursprüngliches Ziel von Jabber war es, die zu dieser Zeit auf dem Markt befindlichen Instant Messaging Systeme zusammenzuführen und sich somit mit nur einem Client, mit mehreren Systemen zu verbinden, welche nicht das XMPP Protkoll einsetzen. Dies hatte weniger mit dem Protokoll, sondern mehr mit der Serveranwendung zu tun, die solche Services bereitstellte. Das XMPP-Protokoll verwendet zur Kommunikation Streams. Der Grundlegende Aufbau dieser Streams ist, wie auch in Abbildung 1 zu sehen, in die drei Teile <presence\>,<message\>und <iq\>aufgeteilt. Die Verbindung wird über SASL und TLS verschlüsselt und per Simple Authentication gesichert [12]. B. Advanced Message Queuing Protocol Das Advanced Message Queuing Protocol, kurz AMQP, wurde im Juni 2006 von einer Gruppe von Unternehmen (JPMorgan Chase, Cisco Systems, Envoy Technologies, imatix Corporation, IONA Technologies, Red Hat, TWIST Process Innovations, 29WEST) ins Leben gerufen. Der Zusammenschluss hatte das Ziel, einen offenen Standard für ein interoperables, asynchrones Nachrichtenprotokoll zu etablieren. Bereits bei Gründung war die erste Spezifiaktion des Protokolls fertig. Aus diesem Zusammenschluss ging später das OASIS Technical Commitee hervor, das AMQP weiter standardisieren sollte und später Ende 2012 die Version 1.0 veröffentlichte. Eine Besonderheit dieses Protkolls liegt auch in der aktiven, kontinuierlichen Weiterentwicklung und darin, dass während dieser bereits Implementationen in den verschiedensten Programmiersprachen (Java, C++, Python) erschienen sind. Da dieses Protokoll aus dem Finanz und Börsensektor entstanden ist, bestanden auch hohe Anforderungen an Geschwindigkeit, Durchsatz, Skalierbarkeit und Verlässlichkeit. AMQP verfolgt keinen monolithischen Ansatz, sondern besteht aus zwei Teilen. Das Netzwerkprotokoll, welches den Inhalt spezifiziert, den Client- oder Serveranwendungen schicken müssen, um miteinander zu kommunizieren und dem Protokollmodell, welches die Standards an AMQP Anwendungen setzt, damit diese untereinander interagieren können. Der Nachrichtenaustausch wird in exchanges und message queues unterteilt: exchange ist der Verteiler, der anhand von Kriterien Abbildung 1. Vereinfachte Sicht auf Zwei Streams (Quelle: [13]) und Regeln die Nachrichten weiterleitet, sie aber nicht speichert message queues speichern die Nachrichten in einer Warteschlange; Dauer und Speicherort werden von der Implementation festgelegt Eine weitere Besonderheit ist die Verschiebung der Routinglogik in die Broker. Dies führt zwar dazu, dass bei der Implementation von AMQP, im Gegensatz zu anderen Protokollen, deutlich mehr programmiert werden muss, jedoch ist der Gewinn an Geschwindigkeit und der Vorteil, den Datenfluss modifizieren zu können ungleich größer. Das Netzwerkprotokoll sorgt nun dafür, dass die Interoperabilität gegeben ist. AMQP ist ein binäres Protokoll, da binäre Protokolle mehr Daten in einen Frame übertragen können und der Dataoutput beim Nachrichtenaustausch ein sehr wichtiger Faktor ist. Auch das binäre Protokoll sorgt für einen erhöhten Programmieraufwand, aber auch wieder für eine deutlich höhere Geschwindigkeit. Abbildung 2 zeigt den Aufbau eines AMQP Frames [14]. Es gibt neun verschiedene Frame-Bodies: open: neue Verbindung herstellen begin: neue Session erstellen attach: neuen Link erstellen transfer: Nachricht verschicken flow: Nachrichtenaustauschkontrollschema disposition: Zuverlässigkeitseinstellungen (at-most-once,
3 3 at-least-once, exactly-once) detach: Link trennen end: Session beenden close: Verbindung schliessen Abbildung 2. Aufbau des AMQP Frames (Quelle: [15]) III. MESSAGE ORIENTED MIDDLEWARE Message Oriented Middleware (MOM) bezeichnet die Implementierung der diversen Protokolle in Form von Middleware. Abbildung 3 zeigt die Architektur von MOM. A. Websphere MQ Websphere MQ von IBM, ist die wohl etablierteste kommerzielle MOM-Plattform. Sie ist mittlerweile über mehr als 10 Jahre gewachsen und für alle großen Plattformen (Windows, Linux, IBM z/os) verfügbar. Websphere MQ ist integraler Bestandteil der Service-Oriented Architecture Plattform (SOA) von IBM. Das MQ bezeichnet eine Aufteilung von den eigentlichen Messages, die wie bei AMQP binäre Daten sind, und den Message Queues welche die Nachrichten in den Programmen speichern. Die Queue Managers stellen dabei folgende Funktionalitäten bereit: Request & Reply Send & Forget Publish & Subscribe Die Websphere MQ Explorer sind grafische Interfaces, mit welchen die Queue Managers konfiguriert und gesteuert werden können. Bereits bestehende Anwendungen, welche nicht das closed Source Protokoll von IBM sprechen können, werden über Proxies angebunden. Dazu bietet IBM Schnittstellen zu folgenden APIs an: IBM Message QueueInterface (MQI) Java Message Service (JMS) WSDL SOAP Wie bereits erwähnt sind die Queue Managers verantwortlich für die Steuerung und den zeitlichen Abflauf der Kommunikation. Die Kommunikation ist über einzelne unidirektionale Channels gelöst. Jeder Manager benötigt also mindestens zwei Kanäle, um Daten zu senden und zu empfangen. Die Manager können unterbrochene Verbindungen automatisch wieder herstellen. Der Nachrichtenversand wird mitgeloggt, jedoch werden nur Nachrichten die als persistent gekennzeichnet sind, im Fall eines Ausfalls wieder hergestellt. Die Non- Persistent Nachrichten können dafür aber in einem Fast- Mode versendet werden, dessen Erfolg aber nicht garantiert werden kann. Die Abarbeitung der Nachrichten folgt dem FIFO-Prinzip. Abbildung 3. Architektur von MOM (Quelle: [9]) Die Protokolle werden zur synchronen Kommunikation genutzt, aber vor allem der asynchrone Ansatz findet Verwendung. Die Kommunikation wird in drei verschiedene Kommunikationsarten unterschieden: Publish & Subscribe Message Passing Message Queuing Alle Ansätze vereinen, dass die Ausführungsgeschwindigkeit der Programme gesteigert werden, sowie die Verfügbarkeit der Programme zunehmen kann. Die größte Stärke ist auch gleichzeitig die größte Schwäche der MOM. Wie in Abbildung 3 zu sehen, liegt die Middleware, wie der Name bereits vermuten lässt, zwischen den anderen Schichten und sorgt bei Absturz etc. für den Ausfall des Gesamtsystems und aller zu diesem Zeitpunkt verbundenen Systeme. Im folgenden werden nun drei ausgewählte MOM-Systeme vorgestellt. B. Apache ActiveMQ Apache ActiveMQ ist die Open Source Antwort auf Websphere MQ. Es gilt als die führende OpenSource Messaging Plattform. Da es auf Apache aufsetzt, ist es auch für ebenso viele Plattformen (u.a. Windows, Linux, Mac OSX) verfügbar. ActiveMQ ist ein Message Broker der die Java Standards JMS 1.1, J2EE 1.4, sowie JCA 1.5 unterstützt. Es wurde ursprünglich 2005 bei CodeHaus (www.codehaus.org) entwickelt und bereits 2006 von der Apache Software Foundation übernommen. Es ist heute das meist genutzte OpenSource Messaging-System der Welt [16], [17]. Ausser Java wird eine Reihe weiterer APIs unterstützt: OpenWire (Java, C, C++, C) Stomp (C, Ruby, Perl, Python, PHP, Flash) REST Ajax ActiveMQ unterstützt das AMQP-Protokoll und ist somit offen für eine Fülle von Clients.
4 4 C. RabbitMQ RabbitMQ (www.rabbitmq.com) ist eine Open Source Lösung, die das Advance Message Queuning Protocol (AM- QP) einsetzt. Der RabbitMQ Server ist in der Sprache Erlang geschrieben [18]. Das Unternehmen Rabbit Technologies Ltd. wurde im April 2010 von VMWare übernommen. Die Software wird aber weiterhin als Open-Source Lösung vermarktet. RabbitMQ besteht aus folgenden Teilen: RabbitMQ Server (nur Erlang) Gateways für diverse Protokolle (HTTP, STOMP, MQTT) offizielle AMQP Clients (Java,.NET, Erlang) unterstütze AMQP Clients (Spring, Groovy, Scala, Akka, Play!, Ruby, Python...) Das Unternehmen wirbt damit, dass es eine Lösung für nahezu jeden Client (siehe Abbildung 4) bereit hält, was vor allem auf die Verwendung des AMQP-Protokolls zurückzuführen ist. Bash completion has been installed to: /usr/local/etc/bash_completion.d To have launchd start rabbitmq at login: ln -sfv /usr/local/opt/rabbitmq/*.plist / Library/LaunchAgents Then to load rabbitmq now: launchctl load /Library/LaunchAgents/homebrew. mxcl.rabbitmq.plist Or, if you don t want/need launchctl, you can just run: rabbitmq-server Warning: /usr/local/sbin is not in your PATH You can amend this by altering your /.bashrc file Damit ist serverseitig alles installiert und konfiguriert, was zur Kommunikation benötigt wird. Der Server wird mittels launchctl load /Library/LaunchAgents/homebrew.mxcl. rabbitmq.plist gestartet. 2) Java-Client: Um eine erste mögliche Kommunikation mit RabbitMQ zu zeigen muss zunächst das Java-Package von der Website geladen und entpackt werden. Dann werden zwei Java-Dateien (Send /Receive) erstellt. Ziel ist es zu zeigen, wie man eine Verbindung zum Server aufbaut und eine Nachricht verschickt sowie empfängt. Weiterführende Beispiele, sowie auch dieses, werden auf der Herstellerseite unter dem Punkt Tutorials angeboten. Abbildung 4. RabbitMQ für viele Clients (Quelle: [19]) Im folgenden wird die Installation des Servers auf MacOSX 10.8 Mountain Lion beschrieben und ein einfaches Beispiel mit dem offiziellen Java-Client, um die Funktionalität zu illustrieren. 1) Download und Installation: Der RabbitMQ-Server liegt aktuell in der Version (Januar 2013) vor. Der Server lässt sich nicht nativ auf OSX installieren. Man muss zunächst sicherstellen, dass bereits die Addon-Software Homebrew [20] installiert ist. Die restlichen Abhängigkeiten werden dann bei der Installation von RabbitMQ automatisch nachinstalliert. Hat man alle Vorbereitungen getroffen, wird das Terminal geöffnet und folgendermaßen installiert: //aktuelle Homebrewupdates laden brew update // RabbitMQ Server installieren brew install rabbitmq Nach erfolgreicher Installation werden dem Nutzer die wichtigsten Informationen präsentiert, die man im weiteren Verlauf benötigt: Management Plugin enabled by default at localhost:15672 Zunächst wechseln wir in das Verzeichnis, in dem der Client entpackt wurde. Dort legen wir zwei neue Dateien (Send.java und Recv.java) an. Als Erstes befassen wir uns mit dem Sender. Für die Kommunikation müssen drei Imports hinzugefügt werden, damit die Verbindungen zum Server aufgebaut werden können. Jede Warteschlange muss bezeichnet werden, was unter QUEUE NAME gemacht wurde. Sollte die Bezeichnung für Warteschlange bereits vergeben sein, dann wird die bestehende Warteschlange verwendet (Idempotenz). Die Verbindung wird aufgebaut und auf der Verbindung wird ein Kanal zum Versand geöffnet. Auf dem Kanal wird die Warteschlange bekannt gegeben und danach die Nachricht veröffentlicht. Zur Kontrolle wird diese auch auf der Konsole ausgegeben und danach werden der Kanal und die Verbindung wieder geschlossen. Listing 1 zeigt den vollständigen Java- Code. Listing 1. send.java import com.rabbitmq.client.connectionfactory; import com.rabbitmq.client.connection; import com.rabbitmq.client.channel; public class Send { private final static String QUEUE_NAME = "Erste RabbitMQ Warteschlange"; public static void main(string[] argv) throws java.io.ioexception { //Verbindung aufbauen und Kanal erstellen ConnectionFactory factory = new ConnectionFactory(); factory.sethost("localhost");
5 5 Connection connection = factory.newconnection(); Channel channel = connection.createchannel(); channel.queuedeclare(queue_name, false, false, false, null); String message = "Hello World!"; channel.basicpublish("", QUEUE_NAME, null, message.getbytes()); System.out.println(" [x] Sent " + message + " " ); //Verbindungen schliessen channel.close(); connection.close(); Um Nachrichten zu empfangen, muss zusätzlich zum Versand, noch ein weiterer Import hinzugefügt werden, damit auch Nachrichten konsumiert, oder empfangen werden können. Auch hier wird wieder die Warteschlange deklariert. Sollte der Fall eingetreten sein, dass der Empfänger vor dem Sender gestartet wird, wird damit auch wieder die Warteschlange angelegt. Der Sender würde sich dann auf diese Verbinden und die Idempotenz ist weiterhin gegeben. Der Konsument fordert nun auf dem Kanal die Warteschlange an und gibt, solange es Nachrichten in der Warteschlange gibt, diese auf der Konsole aus. Listing 2 zeigt auch hier den vollständigen Java-Code. Listing 2. recv.java import com.rabbitmq.client.connectionfactory; import com.rabbitmq.client.connection; import com.rabbitmq.client.channel; import com.rabbitmq.client.queueingconsumer; public class Recv { private final static String QUEUE_NAME = "Erste RabbitMQ Warteschlange"; public static void main(string[] argv) throws java.io.ioexception, java.lang. InterruptedException { ConnectionFactory factory = new ConnectionFactory(); factory.sethost("localhost"); Connection connection = factory.newconnection(); Channel channel = connection.createchannel(); //Auf die gleiche Warteschlange verbinden channel.queuedeclare(queue_name, false, false, false, null); System.out.println(" [*] Waiting for messages. To exit press CTRL+C"); //Einen Konsumenten auf den Kanal hoeren lassen QueueingConsumer consumer = new QueueingConsumer (channel); channel.basicconsume(queue_name, true, consumer) ; //solange es Nachrichten gibt, gebe diese aus while (true) { QueueingConsumer.Delivery delivery = consumer.nextdelivery(); String message = new String(delivery.getBody ()); System.out.println(" [x] Received " + message + " "); 3) Kompilierung und Ausführung: Um das Beispiel auführen zu können, muss es zunächst kompiliert werden: javac -cp rabbitmq-client.jar Send.java Recv.java Um den Sender auszuführen: java -cp.:commons-io-1.2.jar:commons-cli-1.1.jar: rabbitmq-client.jar Send Die Nachrichten werden folgendermaßen empfangen: java -cp.:commons-io-1.2.jar:commons-cli-1.1.jar: rabbitmq-client.jar Recv IV. MESSAGE QUEUING SERVICES Message Queuing Services (MQS) sind die neueste Entwicklung im Bereich Message Oriented Middleware. Die Funktionalitäten der MOM-Systeme werden in eine Cloud verschoben, verbunden mit der Einbettung der Software in ein Software as a Service Modell. Nutzer können somit einfach Nachrichten aus der Warteschlange abrufen oder veröffentlichen, wenn sie mit dem Internet verbunden sind. Ziele der MQS sind: ungenutzte Kapzitäten freisetzen Kosten-Einsparungen (z.b. Wartungspersonal) Vereinfachung des Zugriffs auf die Warteschlange Performancesteigerung durch dedizierte Serverlandschaft Um eine Vielzahl von Nutzern zu erreichen, bieten die Lösungen eine Vielzahl an Protokollen, wie JMS, AMQP, REST-style APIs und Webservices an [10]. A. Amazon Simple Queue Service Amazon Simple Queue Service (Amazon SQS) bietet solch eine zuverlässige, hochskalierbare, gehostete Warteschlange zum Speichern von Nachrichten. Durch Amazon SQS können Entwickler auf einfache Weise Daten zwischen verteilten Komponenten ihrer Anwendungen, die verschiedene Aufgaben ausführen, verschieben. Dabei gehen keine Mitteilungen verloren und es muss nicht jede Komponente stets verfügbar sein. Amazon SQS vereinfacht das Erstellen eines automatisierten Workflows und arbeitet eng mit Amazon Elastic Compute Cloud (Amazon EC2) und den anderen AWS-Infrastruktur-Web-Services zusammen [21]. Amazon SQS funktioniert durch die Offenlegung der weboptimierten Mitteilungs-Infrastruktur von Amazon als Web- Service. Jeder Computer mit Verbindung ins Internet kann Mitteilungen hinzufügen oder lesen, ohne dass dafür Software installiert oder die Firewall speziell konfiguriert werden muss. Komponenten von Anwendungen, die Amazon SQS verwenden, können unabhängig ausgeführt werden und müssen sich nicht im selben Netzwerk befinden, mit denselben Technologien entwickelt worden sein oder zur selben Zeit ausgeführt werden.
6 6 B. Microsoft Azure Services Platform Microsoft hat im Februar 2012 auf der CeBIT, die Microsoft Azure Services Platform gestartet [22]. Microsoft zentralisiert damit die verschiedensten Dienste in die Cloud und versucht damit gegenüber dem Kunden als ein Full-Service-Anbieter aufzutreten. Die Platform vereint unter anderem: Webseitenhosting Virtuelle-Maschinen Cloud-Services Data-Services Messaging (Windows Azure Service Bus) Der Windows Azure Service Bus stellt hier ähnlich wie Amazon, Queuing Services bereit [23]. Microsoft hält hier eine REST konforme Schnittstelle, ebenso wie Konnektivitätsoptionen für die Windows Communication Foundation (WCF) bereit. V. ZUSAMMENFASSUNG Einstige alleinige Marktführer wie IBM bekommen nun schon seit Jahren den Druck der Mitbewerber zu spüren. Der Markt der Message Oriented Middleware ist einer der umkämftesten der Computerbranche. Dass sich auch hier der Markt immer mehr zu einem Käufermarkt entwickelt, sieht man vorallem an Firmen wie IBM, die ihrer Closed Source Plattform Websphere MQ immer mehr Proxies für diverse Open-Source Sprachen zur Verfügung stellen. Der Grund für die Vielfalt an Open-Source Lösungen ist sicher im Advanced Messaging Protocol zu sehen. Der Erfolg des Protokolls liegt in seiner Qualität. Weder im Bezug auf Geschwindigkeit noch im Bezug auf Customizing lässt es dem Programmierer Wünsche offen. Die Entwicklung des Protokolls hat für eine wahre Explosion an Produkten gesorgt. Unter anderem auch RabbitMQ, das in Bezug auf Kompabilität zu anderen Produkten seinesgleichen sucht. Ermöglicht wird auch das wieder durch das AMQP-Protokoll. Hinzu kommt bei RabbitMQ, dass die Dokumentationen im Internet und vor allem auf der Herstellerseite sehr gut sind. Die Forenunterstützung ist gut, was auch die hohe Anzahl an Clients und die Vielfalt an Programmiersprachen zeigen. Umso überraschender ist der Umstand, dass die neu angebotenen Cloud-Lösungen nun auch wieder propietäre Protokolle verwenden. So ist es nicht ungewöhnlich, dass die Internetforen voll von Diskussionen sind, was denn nun beser sei, Amazon SQS oder RabbitMQ. Vor allem da man RabbitMQ auch auf der Amazon EC2 Cloud betreiben kann. Die weitere Entwicklung wird sicher weiter Richtung Cloud- Services gehen. Zu günstig sind die Lösungen geworden, zu einfach deren Wartbarkeit, zu Ausfallsicher. Die Anbindung eines jeden Internetnutzers ist so gut geworden, dass auch hier keine Bandbreitenprobleme oder Geschwindigkeitsprobleme auftreten können. Dennoch werden sie Lösungen wie RabbitMQ nicht ablösen. Wahrscheinlicher ist es, dass die Welten weiter zusammenwachsen. LITERATUR [1] B. Turakhia. Investigating message queueing systems. [Online]. Available: [2] IBM. What is message queuing? [Online]. Available: topic=%2fcom.ibm.mq.csqzal.doc%2ffg10240.htm [3] Wikipedia. Message queue. [Online]. Available: wiki/message queue [4] MSDN. About messages and message queues. [Online]. Available: [5] Linux. Linux and posix message queues. [Online]. Available: [6] Event-driven architecture overview. [Online]. Available: omg.org/soa/uploaded%20docs/eda/bda2-2-06cc.pdf [7] E. Curry. Message-oriented middleware. [Online]. Available: http: //www.edwardcurry.org/publications/curry MfC MOM 04.pdf [8] Wikipedia. Message-oriented middleware. [Online]. Available: http: //en.wikipedia.org/wiki/message-oriented middleware [9] IT-Wissen. Mom (message oriented middleware). [Online]. Available: message-oriented-middleware-mom.html [10] Wikipedia. Message queuing service. [Online]. Available: http: //en.wikipedia.org/wiki/message queuing service [11] IETF. Extensible messaging and presence protocol (xmpp). [Online]. Available: [12] Wikipedia. Xmpp. [Online]. Available: XMPP [13] IETF. Rfc6120. [Online]. Available: [14] Wikipedia. Advanced message queing protocol. [Online]. Available: [15] OASIS, OASIS Advanced Message Queuing Protocol (AMQP) Version 1.0, OASIS, [16] T. A. S. Foundation. Activemq. [Online]. Available: apache.org/ [17] Wikipedia. Apache activemq. [Online]. Available: org/wiki/apache ActiveMQ [18] Erlang programming language. [Online]. Available: org/ [19] G. T. Talk. Introduction to rabbitmq. [Online]. Available: alexis-google-rabbitmq-talk.pdf [20] M. Howell. Homebrew - the missing package manager for osx. [Online]. Available: [21] Amazon. Amazon simple queue service (amazon sqs). [Online]. Available: [22] Microsoft. Windows azure: die cloud plattform von microsoft. [Online]. Available: [23] MSDN. Windows azure service bus. [Online]. Available: http: //msdn.microsoft.com/de-de/library/ee aspx
Oracle Advanced Queuing AQ
Oracle Advanced Queuing AQ 13.09.2012 Referenten: Claus Cullmann Andreas Steinel Inhalt Motivation Message Systeme Eigenschaften, Beispiele Oracle AQ Terminologie AQ Beispiel pure SQL Beispiel Java-Anwendung
Message Oriented Middleware am Beispiel von XMLBlaster
Message Oriented Middleware am Beispiel von XMLBlaster Vortrag im Seminar XML und intelligente Systeme an der Universität Bielefeld WS 2005/2006 Vortragender: Frederic Siepmann fsiepman@techfak.uni bielefeld.de
.NET-Networking 2 Windows Communication Foundation
.NET-Networking 2 Windows Communication Foundation Proseminar Objektorientiertes Programmieren mit.net und C# Fabian Raab Institut für Informatik Software & Systems Engineering Agenda Grundproblem Bestandteile
Ein Vergleich zwischen SCA,JBI und WCF. Marcello Volpi
Service Component Architecture Ein Vergleich zwischen SCA,JBI und WCF Marcello Volpi Agenda Einführung Service Component Architecture (SCA) Java Business Integration (JBI) Windows Communication Foundation
iphone Push bei den VZ Netzwerken
iphone Push bei den VZ Netzwerken Max Horváth, Steffen Irrgang 1 Vorstellung der Speaker 2 Was sind Push Notifications?? 3 Was sind Push Notifications? Eine Möglichkeit, eine Nachricht an individuelle
XMPP: Extensible Messaging and Presence Protocol
XMPP: Extensible Messaging and Presence Protocol (aka Jabber) 5. Dezember 2005 Einleitung Was ist XMPP? Architektur Allgemeines Kommunikation via XMPP: Streams, Stanzas Beispielanwendung
Client/Server-Systeme
Frühjahrsemester 2011 CS104 Programmieren II / CS108 Programmier-Projekt Java-Projekt Kapitel 3: /Server-Architekturen H. Schuldt /Server-Systeme Ein zweischichtiges /Server-System ist die einfachste Variante
Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung
IBM WebSphere Process Server Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung AGENDA 1. Überblick 2. WebSphere Process Server 3. Komponenten 4. Präsentation
Isabel Arnold CICS Technical Sales Germany Isabel.arnold@de.ibm.com. z/os Explorer. 2014 IBM Corporation
Isabel Arnold CICS Technical Sales Germany Isabel.arnold@de.ibm.com z/os Explorer Agenda Introduction and Background Why do you want z/os Explorer? What does z/os Explorer do? z/os Resource Management
Jabber. Florian Holzhauer. Proseminar Uni Ulm, 27. April 2005.
Jabber Florian Holzhauer Proseminar Uni Ulm, 27. April 2005 Idee, Geschichte Nachrichtentechnik Ausblick, Zukunft Gründe / Intention Grosse
Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4
UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 WebSphere Application Server Teil 4 Leistungsverhalten el0100 copyright W. G. Spruth,
Verteilte Systeme - 1. Übung
Verteilte Systeme - 1. Übung Dr. Jens Brandt Sommersemester 2011 1. Rechnerverbünde Kommunikationsverbund: Beispiele: E-Mail (SMTP, POP/IMAP), Instant Messaging (XMPP, IRC, ICQ,...), Newsgroups (NNTP)
Evaluation of Java Messaging Middleware as a Platform for Software Agent Communication
Evaluation of Java Messaging Middleware as a Platform for Software Agent Communication Frank Kargl Torsten Illmann Michael Weber Verteilte Systeme Universität Ulm {frank.kargl torsten.illmann weber} @informatik.uni-ulm.de
Sicherheitsaspekte in Service Orientierten Architekturen. Eike Falkenberg Sommersemester 2006 Anwendungen I
Sicherheitsaspekte in Service Orientierten Architekturen Eike Falkenberg Sommersemester 2006 Anwendungen I Agenda SOA? Web Services? Sicherheitsrisiko Web Services Web Services & Sicherheit Sichere SOAs
TCP/IP Programmierung. C# TimeServer Java6 TimeClient
TCP/IP Programmierung C# TimeServer Java6 TimeClient Stand 19.10.11 21:24:32 Seite 1 von 16 Inhaltsverzeichnis Erläuterung...3 Software...3 C#TimeServer...4 Klasse ServerThread...6 Starten und Beenden...7
XMPP - Jabber. Noch ein IM. 2010-05-11 (v. 1273584047) Thomas Merkel (tm@core.io)
XMPP - Jabber Noch ein IM 2010-05-11 (v. 1273584047) Thomas Merkel (tm@core.io) Agenda Motivation Das Kaffee Problem Andere... AGBs Was ist Jabber? Warum ist Jabber cool? Beispiel Architektur Features
Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH
Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich
Business Process Management und Enterprise Service Bus
Business Process Management und Enterprise Service Bus Gegner oder doch eine gute Ergänzung? Author: Date: Markus Demolsky Soreco International 08. November 2010 Vortragender Warum über Integration nachdenken?
Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke. 31.03.2003 J.M.Joller 1
Web Services XML, WSDL, SOAP und UDDI Einblicke und Ausblicke 31.03.2003 J.M.Joller 1 Inhalt Architekturen Main Stream.NET J2EE und Applikations-Server Sicht der Anbieter Java J2EE J2EE versus.net Web
Java Forum Stuttgart 2008
Professionelle Open Source SOA in 45 Minuten! Java Forum Stuttgart 2008 Dr. Halil-Cem Gürsoy, CDI AG Der Referent Insgesamt ca. 10 Jahre Beratung, davor Forschung Senior Consultant - JEE Evangelist Hauptsächlich
SaaS-Referenzarchitektur. iico-2013-berlin
SaaS-Referenzarchitektur iico-2013-berlin Referent Ertan Özdil Founder / CEO / Shareholder weclapp die Anforderungen 1.000.000 registrierte User 3.000 gleichzeitig aktive user Höchste Performance Hohe
Vorwort... 11 Azure Cloud Computing mit Microsoft... 12 Danksagungen... 13 Kontakt zum Autor... 13
Inhaltsverzeichnis Vorwort... 11 Azure Cloud Computing mit Microsoft... 12 Danksagungen... 13 Kontakt zum Autor... 13 Einleitung... 15 Zielgruppe... 16 Aufbau... 16 Inhalt der einzelnen Kapitel... 17 Systemanforderungen...
Enterprise Application Integration. Sascha M. Köhler Software Architekt
Sascha M. Köhler Software Architekt Agenda 2 01 Herausforderungen unserer Kunden 02 Lösungsdefinition 03 PROFI Angebot 04 Zusammenfassung Der IT-Gemüsegarten ITK Systeme sind auf Grund von Funktionen &
Scalera Mailplattform Dokumentation für den Anwender Installation und Konfiguration des Outlook Connectors
Installation und Konfiguration des Outlook Connectors Vertraulichkeit Die vorliegende Dokumentation beinhaltet vertrauliche Informationen und darf nicht an etwelche Konkurrenten der EveryWare AG weitergereicht
Web 2.0 Architekturen und Frameworks
Web 2.0 Architekturen und Frameworks codecentric GmbH Mirko Novakovic codecentric GmbH Quality Technische Qualitätssicherung in Software-Projekten mit Fokus auf Performance, Verfügbarkeit und Wartbarkeit
Installationsführer für den SIP Video Client Linphone
Installationsführer für den SIP Video Client Linphone Stand: 10.04.2010 1. Einleitung Dieses Dokument beschreibt die Vorgehensweise für den Download, die Installation und Inbetriebnahme eines SIP Videoclients
Architektur von SOAP basierten Web Services
Architektur von SOAP basierten Web Services André Homeyer 28.11.2005 Worst-Case einer verteilten Anwendung TravelTime Client Benutzerinterface WackyWing Server Flüge suchen TravelTime Server Flüge suchen
Übungen zu Softwaretechnik
Prof. Dr. Dr. h.c. M. Broy Lösungsblatt 11 Dr. H. Ehler, S. Wagner 23. Januar 2004 Übungen zu Softwaretechnik Aufgabe 16 Qualitätseigenschaften Broker-Pattern Beurteilen Sie das in Aufgabe 15 benutzte
Deutschland 8,50. Contexts and Dependency Injection. Präsentation mit Models GUI leicht gemacht » 52
inkl. JAVA Mag CD Transparenz und Qualitätskontrolle in agilen Projekten Deutschland 8,50 Österreich 9,80 Schweiz sfr 16,80 Contexts and Dependency Injection Framework-Integration HTML5 Keynote von Chris
Cloud-Provider im Vergleich. Markus Knittig @mknittig
Cloud-Provider im Vergleich Markus Knittig @mknittig As Amazon accumulated more and more services, the productivity levels in producing innovation and value were dropping primarily because the engineers
Software Engineering I
Software I Übungsblatt 1 + 2 Claas Pinkernell Technische Universität Braunschweig http://www.sse.cs.tu-bs.de/ Seite 2 Welche Werkzeuge? Programmiersprache Java Integrierte Entwicklungsumgebung Eclipse
Mobile Backend in der
Mobile Backend in der Cloud Azure Mobile Services / Websites / Active Directory / Kontext Auth Back-Office Mobile Users Push Data Website DevOps Social Networks Logic Others TFS online Windows Azure Mobile
Softwareentwicklung in der industriellen Praxis
Softwareentwicklung in der industriellen Praxis Cloud-Systeme: Besonderheiten bei Programmierung und Betrieb Steffen Gemkow / Paul Fritsche - ObjectFab GmbH 26.11.2012 Simple is beautiful Don t repeat
Log xmllog textlog Log() start(filename) add(message) end() instance() Abbildung 7-10: Die Protokollierungs-API mit einer einfachen Fassade
HACK #76 Hack APIs mit dem Façade-Muster vereinfachen Durch die Verwendung des Façade-Entwurfsmusters können Sie die anderen Programmierern zugängliche API vereinfachen. #76 Dies ist ein Muster, von dem
JE Web Services. Hinweise. Beschreibung. Doku.-Version: 1.0 Letzte Änderung: 02.02.2011
Beschreibung Hinweise Doku.-Version: 1.0 Letzte Änderung: 02.02.2011 http://www.jacob-computer.de/kontakt.html software@jacob-elektronik.de Inhaltsverzeichnis 1. Inhaltsverzeichnis Hinweise... 1 1. Inhaltsverzeichnis...
Massively Scalable Enterprise Applications. Chris Bernhardt
Massively Scalable Enterprise Applications Chris Bernhardt Allgemein Einsatzgebiete BizTalk Server Engine Management Enterprise Single Sign-On Neuheiten und Beispiele Quellen Agenda 28.01.2010 Microsoft
Client/Server-Systeme
Fachbereich Informatik Projektgruppe KOSI Kooperative Spiele im Internet Client/Server-Systeme Vortragender Jan-Ole Janssen 26. November 2000 Übersicht Teil 1 Das Client/Server-Konzept Teil 2 Client/Server-Architekturen
OpenSSH installieren (Windows) Was ist OpenSSH?
OpenSSH installieren (Windows) Was ist OpenSSH? OpenSSH (Open Secure Shell) ist eine freie SSH/SecSH-Protokollsuite, die Verschlüsselung für Netzwerkdienste bereitstellt, wie etwa Remotelogins, also Einloggen
Platform as a Service (PaaS) 15.01.2010 Prof. Dr. Ch. Reich
Platform as a Service (PaaS) 15.01.2010 Prof. Dr. Ch. Reich Cloud Computing Deployment Typen: Private cloud Besitzt das Unternehmen Community cloud Gemeinsame Nutzung durch Gemeinschaft Public cloud Öffentliche
Softwareupdate-Anleitung // AC Porty L Netzteileinschub
1 Softwareupdate-Anleitung // AC Porty L Netzteileinschub Softwareupdate-Anleitung // AC Porty L Netzteileinschub HENSEL-VISIT GmbH & Co. KG Robert-Bunsen-Str. 3 D-97076 Würzburg-Lengfeld GERMANY Tel./Phone:
ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS. Piotr Kasprzak
ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS Piotr Kasprzak Agenda Laufzeitumgebung Java EE (J2EE) Motivation APIs / Technologien JBoss Entwicklungsumgebung Eclipse Ausblick Java EE -
MICROSOFT WINDOWS AZURE
Cloud Computing à la Microsoft MICROSOFT WINDOWS AZURE Karim El Jed netcreate OHG Agenda Was ist Cloud Computing? Anwendungsszenarien Windows Azure Platform Alternativen Was ist Cloud Computing? Was ist
Microsoft Azure für Java Entwickler
Holger Sirtl Microsoft Deutschland GmbH Microsoft Azure für Java Entwickler Ein Überblick Agenda Cloud Computing Die Windows Azure Platform Anwendungen auf Windows Azure Datenspeicherung mit SQL Azure
Alternativen für asynchrones Messaging als Teil der "Converging Infrastructure"
Mercedes 2012 1. Anforderungen 2. DR 101 3. Datenreplikation Technologie 4. Leistungsumfang heute 5. Arbeitsweise 6. Zukunft 7. Markt und Kunden 8. Anforderungen revisited 9. Warum Gravic und CS Software?
GeoShop Netzwerkhandbuch
Technoparkstrasse 1 8005 Zürich Tel.: 044 / 350 10 10 Fax.: 044 / 350 10 19 GeoShop Netzwerkhandbuch Zusammenfassung Diese Dokumentation beschreibt die Einbindung des GeoShop in bestehende Netzwerkumgebungen.
Nutzung der VDI Umgebung
Nutzung der VDI Umgebung Inhalt 1 Inhalt des Dokuments... 2 2 Verbinden mit der VDI Umgebung... 2 3 Windows 7... 2 3.1 Info für erfahrene Benutzer... 2 3.2 Erklärungen... 2 3.2.1 Browser... 2 3.2.2 Vertrauenswürdige
Windows Azure für Java Architekten. Holger Sirtl Microsoft Deutschland GmbH
Windows Azure für Java Architekten Holger Sirtl Microsoft Deutschland GmbH Agenda Schichten des Cloud Computings Überblick über die Windows Azure Platform Einsatzmöglichkeiten für Java-Architekten Ausführung
Enterprise Application Integration Erfahrungen aus der Praxis
Enterprise Application Integration Erfahrungen aus der Praxis Teil 3: Fallstudien EDS und Vitria Tutorial NODs 2002, Wolfgang Keller and Generali 2001, 2002, all rights reserved 1 Überblick EDS ein selbstgebautes
Python SVN-Revision 12
Python SVN-Revision 12 Uwe Ziegenhagen 7. Januar 2012 Vorwort Dieses Skript erhebt keinen Anspruch auf Vollständigkeit oder Richtigkeit. Es wird geschrieben, um mir als Gedächtnisstütze für den Umgang
Webservices. Grundlagen, Beispiel, Tomcat, Apache Axis
Webservices Grundlagen, Beispiel, Tomcat, Apache Axis Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 1 Was ist ein WebService Eine oder mehrere Methoden die über das Netzwerk aufgerufen werden
Die in diesem Dokument aufgelisteten Anforderungen an das Betriebssystem schließen die aktuellen Patches und Servivepacks ein.
Systemanforderungen Die unten angeführten Systemanforderungen für Quark Publishing Platform sind grundlegende Anforderungen, Ihre Benutzerzahl, Asset-Anzahl und Anzahl der Asset-Versionen beeinflussen
Python Programmierung. Dipl.-Ing.(FH) Volker Schepper
Python Programmierung Kontaktdaten Homepage: http://wwwlehre.dhbw-stuttgart.de/~schepper/ Email: Volker. Schepper [A@T] yahoo.de Vorlesung Skriptsprachen Vorlesung: 06.03.2013 13.03.2013 20.03.2013 27.03.2013
Grid-Systeme. Betrachtung verschiedener Softwareplattformen zur Realisierung von Grids und Vorstellung des Globus Toolkit. 07.06.2002 Grid Systeme 1
Grid-Systeme Betrachtung verschiedener Softwareplattformen zur Realisierung von Grids und Vorstellung des Globus Toolkit 07.06.2002 Grid Systeme 1 Gliederung Vorstellung verschiedener Plattformen Globus
1 Vorraussetzungen. 2 Installiere Eclipse. FS 2015 Herausgabe: 2015-02-18 Dr. A. L. Schüpbach, D. Sidler, Z. István Departement Informatik, ETH Zurich
252-0842-00L Programmieren und Problemlösen Eclipse Tutorial FS 2015 Herausgabe: 2015-02-18 Dr. A. L. Schüpbach, D. Sidler, Z. István Departement Informatik, ETH Zurich 1 Vorraussetzungen Falls Java noch
Erfahren Sie mehr zu LoadMaster für Azure
Immer mehr Unternehmen wechseln von einer lokalen Rechenzentrumsarchitektur zu einer öffentlichen Cloud-Plattform wie Microsoft Azure. Ziel ist es, die Betriebskosten zu senken. Da cloud-basierte Dienste
Einführung in Eclipse und Java
Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski Einführung in Eclipse und Java Dipl.Inf. Manuel Götz Lehrstuhl für Angewandte Informatik
Einführung in Javadoc
Einführung in Javadoc Johannes Rinn http://java.sun.com/j2se/javadoc Was ist Javadoc? Javadoc ist ein Werkzeug, dass eine standardisierte Dokumentation für die Programmiersprache Java unterstützt. Vorteil:
Webinar: Einführung in ICEfaces
Webinar: Einführung in ICEfaces präsentiert von VOIP-Audio ist standardmässig aktiviert Alternatives Einwählen: +41 (0) 415 0008 65 ICESOFT TECHNOLOGIES INC ICESOFT Donnerstag, TECHNOLOGIES 26. März 2009
Einführung in die Cross-Plattform Entwicklung Web Services mit dem Intel XDK
Einführung in die Cross-Plattform Entwicklung Web Services mit dem Intel XDK Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel XDK und dem Zugriff auf Web Services vertraut. Der Web Service
WebSphere Application Server Installation
WebSphere Application Server Installation und Administration Seminarunterlage Version: 3.04 Copyright Version 3.04 vom 16. Mai 2013 Dieses Dokument wird durch die veröffentlicht. Copyright. Alle Rechte
Session Storage im Zend Server Cluster Manager
Session Storage im Zend Server Cluster Manager Jan Burkl System Engineer, Zend Technologies Agenda Einführung in Zend Server und ZSCM Überblick über PHP Sessions Zend Session Clustering Session Hochverfügbarkeit
Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server
Einsatz von Applikationsservern Untersucht am Beispiel des Sybase Enterprise Application Server Architektur von Datenbanksystemen Client / Server Modell (2 Schichten Modell) Benutzerschnittstelle Präsentationslogik
Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/2013. WebSphere MQ Teil 3
UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/2013 WebSphere MQ Teil 3 Trigger el0100 Copyright W. G. Spruth,
Instant Messaging mit XMPP
Instant Messaging mit XMPP Norbert Tretkowski Email: norbert@tretkowski.de XMPP: norbert@tretkowski.de Linux User Schwabach 07. April 2016 Agenda Grundlagen Features Clients Erweiterungen Sicherheit Messenger
Workflow, Business Process Management, 4.Teil
Workflow, Business Process Management, 4.Teil 24. Januar 2004 Der vorliegende Text darf für Zwecke der Vorlesung Workflow, Business Process Management des Autors vervielfältigt werden. Eine weitere Nutzung
Open Source. Hendrik Ebbers 2015
Open Source Hendrik Ebbers 2015 Open Source About me Hendrik Ebbers Lead of JUG Dortmund Java Architect @ Canoo Engineering AG JavaOne Rockstar, Java Expert Group Member Speaker, blogger & author Engineering
Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik
Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine
Hauptseminar. Nachrichtenbasierte Middleware - ein Vergleich: Protokolle, Fähigkeiten, Implementierungen und Anwendungsgebiete
Technische Universität Ilmenau Fakultät für Elektrotechnik und Informationstechnik Hauptseminar Nachrichtenbasierte Middleware - ein Vergleich: Protokolle, Fähigkeiten, Implementierungen und Anwendungsgebiete
estos XMPP Proxy 5.1.30.33611
estos XMPP Proxy 5.1.30.33611 1 Willkommen zum estos XMPP Proxy... 4 1.1 WAN Einstellungen... 4 1.2 LAN Einstellungen... 5 1.3 Konfiguration des Zertifikats... 6 1.4 Diagnose... 6 1.5 Proxy Dienst... 7
Kurzanleitung - XVA Provider unter Mac OSX 10
Kurzanleitung - XVA Provider unter Mac OSX 10 Installation und Bedienung- Inhalt Allgemeine Hinweise:... 1 Kapitel 1 Installation und Konfiguration... 2 Schritt 1: Java SE Development Kit 6 installieren:...
Studienprojekt HP-MOM
Institute of Parallel and Distributed Systems () Universitätsstraße 38 D-70569 Stuttgart Studienprojekt HP-MOM High Performance Message Oriented Middleware 23. Januar 2013 Kurt Rothermel, Frank Dürr, Patrick
Webengineering II T2INF4202.1. Enrico Keil Keil IT e.k.
Webengineering II T2INF4202.1 Enrico Keil Keil IT e.k. Übersicht Herzlich willkommen Enrico Keil Keil IT Oderstraße 17 70376 Stuttgart +49 7119353191 Keil IT e.k. Gegründet 2003 Betreuung von kleinen und
EXCHANGE 2013. Neuerungen und Praxis
EXCHANGE 2013 Neuerungen und Praxis EXCHANGE 2013 EXCHANGE 2013 NEUERUNGEN UND PRAXIS Kevin Momber-Zemanek seit September 2011 bei der PROFI Engineering Systems AG Cisco Spezialisierung Cisco Data Center
Der Adapter Z250I / Z270I lässt sich auf folgenden Betriebssystemen installieren:
Installationshinweise Z250I / Z270I Adapter IR USB Installation hints Z250I / Z270I Adapter IR USB 06/07 (Laden Sie den Treiber vom WEB, entpacken Sie ihn in ein leeres Verzeichnis und geben Sie dieses
Die Open Source SOA-Suite SOPERA
Architektur, Komponenten und Realisierung Jörg Gerlach Technische Universität Dresden Fakultät Informatik Institut für Angewandte Informatik Lehrstuhl Technische Informationssysteme 11. Juni 2009 Gliederung
Mac OS X Consoliero Teil 14: Webmail Agent unter Mac OS X Server 10.2
Mac OSX Consoliero Teil 14 Seite: 1/10 Mac OS X Consoliero Weiterführende Dokumentationen für Administratoren. Mac OS X Consoliero Teil 14: Webmail Agent unter Mac OS X Server 10.2 Christoph Müller, PTS
How to install freesshd
Enthaltene Funktionen - Installation - Benutzer anlegen - Verbindung testen How to install freesshd 1. Installation von freesshd - Falls noch nicht vorhanden, können Sie das Freeware Programm unter folgendem
Sind Cloud Apps der nächste Hype?
Java Forum Stuttgart 2012 Sind Cloud Apps der nächste Hype? Tillmann Schall Stuttgart, 5. Juli 2012 : Agenda Was sind Cloud Apps? Einordnung / Vergleich mit bestehenden Cloud Konzepten Live Demo Aufbau
Erste Schritte zum lauffähigen Java Programm
Erste Schritte zum lauffähigen Java Programm Diese kleine Einführung ist eine Hilfe für Studenten der Vorlesung SWT I zur Meisterung der sich ergebenden Hürden bei der Erstellung eines ersten kleinen Java-Programms.
Eine Taxonomie und Bewertung von Cloud Computing Diensten aus Entwicklersicht
Eine Taxonomie und Bewertung von Cloud Computing Diensten aus Entwicklersicht Universität der Bundeswehr München Mario Golling und Michael Kretzschmar Fakultät für Informatik E-Mail: mario.golling@unibw.de
JEAF Cloud Plattform Der Workspace aus der Cloud
JEAF Cloud Plattform Der Workspace aus der Cloud Juni 2014 : Aktuelle Situation Heutige Insellösungen bringen dem Nutzer keinen Mehrwert Nutzer sind mobil Dateien und Applikationen sind über Anbieter und
Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter
Die Programmiersprache Java Dr. Wolfgang Süß Thorsten Schlachter Eigenschaften von Java Java ist eine von der Firma Sun Microsystems entwickelte objektorientierte Programmiersprache. Java ist......a simple,
Softwareentwicklung mit Enterprise JAVA Beans
Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung
Java Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung
Java Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung Ludwig-Maximilians-Universität München Institut für Informatik Programmierung und Softwaretechnik (PST) Prof. Wirsing 6. Mai 2009 1 Der Name Java
Christoph Mathas. SOA intern. » Praxiswissen zu Service-orientierten IT-Systemen HANSER
Christoph Mathas SOA intern» Praxiswissen zu Service-orientierten IT-Systemen HANSER Inhalt Vorwort XI 1 Einleitung 1 1.1 Wem nützt dieses Buch? 2 1.2 Weshalb dieses Buch? 3 1.3 Die Kapitelstruktur 4 1.4
Daten-Kommunikation mit crossinx
Daten-Kommunikation mit Datenübertragung.doc Seite 1 von 8 Inhaltsverzeichnis 1 Einführung... 3 1.1 Datenübertragung an... 3 1.2 Datenversand durch... 3 2 X.400... 4 3 AS2... 4 4 SFTP (mit fester Sender
Entwicklung von Web-Anwendungen auf JAVA EE Basis
Entwicklung von Web-Anwendungen auf JAVA EE Basis Java Enterprise Edition - Überblick Prof. Dr. Bernhard Schiefer Inhalt der Veranstaltung Überblick Java EE JDBC, JPA, JNDI Servlets, Java Server Pages
Kapitel 7 Message-oriented Middleware (MOM)
Kapitel 7 Message-oriented Middleware (MOM) Inhalt: Transaktionale Warteschlangen Message Queuing Stratifizierte Transaktionen Message Brokering Zusammenfassung Transaktionale Warteschlangen Einsatz von
WINDOWS APPLIKATIONEN UNTER LINUX/UNIX SECURE REMOTE ACCESS
WINDOWS APPLIKATIONEN UNTER LINUX/UNIX SECURE REMOTE ACCESS Dipl.-Ing. Swen Baumann Produktmanager, HOB GmbH & Co. KG April 2005 Historie 2004 40 Jahre HOB Es begann mit Mainframes dann kamen die PCs das
2007 2010 Abitur mit Schwerpunkt Wirtschaft und Verwaltung 2011 2013 Studium Wirtschaftsinformatik Universität Essen
Patrick Forche Fachinformatiker für Anwendungsentwicklung Personaldaten Geburtsdatum: 04.04.1990 Sprachen: Verfügbarkeit: Deutsch (Muttersprache), Englisch (fließend) nach Absprache Ausbildung / Studium
Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007
Eclipse Equinox als Basis für Smart Client Anwendungen Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Übersicht Definition / Architektur Smart Client Smart Client mit RCP / Equinox Gesamtfazit
Whitepaper. Produkt: combit List & Label 16. List & Label Windows Azure. combit GmbH Untere Laube 30 78462 Konstanz
combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit List & Label 16 List & Label Windows Azure List & Label Windows Azure - 2 - Inhalt Softwarevoraussetzungen 3 Schritt 1: Neues Projekt
Verbesserung einer XMPP-Bibliothek für den Einsatz in verteilter Paarprogrammierung
Verbesserung einer XMPP-Bibliothek für den Einsatz in verteilter Paarprogrammierung Diplomarbeit Henning Staib Tutor: Karl Beecher und Stephan Salinger Inhalt - Ausgangssituation - Aufgabenstellung - Lösungsansätze
Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java
Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Präsentation zur Diplomarbeit von Übersicht Java 2 Enterprise Edition Java Servlets JavaServer Pages Enterprise JavaBeans Framework
Von 0 zur Private Cloud in 1h
Von 0 zur Private Cloud in 1h - oder wie baue ich mir eine Demoumgebung Bernhard Frank Technical Evangelist Microsoft Deutschland GmbH Carsten Rachfahl MVP Virtual Machine Rachfahl IT Solutions Wieviele
SAP NetWeaver Gateway. Connectivity@SNAP 2013
SAP NetWeaver Gateway Connectivity@SNAP 2013 Neue Wege im Unternehmen Neue Geräte und Usererfahrungen Technische Innovationen in Unternehmen Wachsende Gemeinschaft an Entwicklern Ausdehnung der Geschäftsdaten
Zend PHP Cloud Application Platform
Zend PHP Cloud Application Platform Jan Burkl System Engineer All rights reserved. Zend Technologies, Inc. Zend PHP Cloud App Platform Ist das ein neues Produkt? Nein! Es ist eine neue(re) Art des Arbeitens.
Service Oriented Architecture. IM-Briefing 2008 4. Dezember 2008
Service Oriented Architecture IM-Briefing 2008 4. Dezember 2008 Agenda Begrüssung Was ist SOA Herkunft Player Modell Komponenten Zusammenfassung Diskussion Seite 1 Was ist SOA? Herkunft Der Begriff serviceorientierte
Integration von Web Services in J EE Anwendungen mit XFire. 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire
Integration von Web Services in J EE Anwendungen mit XFire 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire univativ : = Umsetzung durch Studenten und Young Professionals.
Chatten mit der Glühbirne
Chatten mit der Glühbirne Eine Einführung in Jabber und XMPP für normale User Tim Weber Chaostreff Mannheim 25. Mai 2007 Inhalt Worum geht's? Terminologie, Unterschiede, Vor- und Nachteile gegenüber anderen