Komunikace systémů pomocí. 10. 11. 2011 Hradec Králové



Podobné dokumenty
Java Message Service (JMS) Martin Ptáček, KOMIX s.r.o.

Implementace dávkových operací

Semináˇr Java X J2EE Semináˇr Java X p.1/23

Miroslav Holec. Software & Cloud Architect. Microsoft MVP: Microsoft Azure MCSD, MCSA, MTA. Zvyšujeme výkonnost aplikací s. (Azure) Redis Cache

TwinCAT IoT Řešení pro průmysl 4.0

Session Beans. Petr Aubrecht CA. Vtipy budou tentokrát o krizi:

Architektury informačních systémů

Architektury informačních systémů

Úvod. Petr Aubrecht (CA) Martin Ptáček (Wincor Nixdorf) Je 10 typů lidí: ti, kteří znají binární kód, a ti, kteří ne.

Distribuované systémy a výpočty

Tvorba informačních systémů

RabbitMQ. Tomáš Jecha (MVP) jechtom Školení vývojářů Články a diskuzní fóra

UAI/612 - Cloudová Řešení. Technologie

Tvorba podnikových aplikací v jazyce JAVA. Josef Pavlíček KII PEF CZU

X33EJA Enterprise Java

Úvod do Web Services

Vhodnost nasazení jednotlivých webových architektur, sdílení dat, perzistence, webové služby a REST, asynchronnost, messaging

Systémová administrace portálu Liferay

1. Distribuce Javy. 2. Vlastnosti J2EE aplikace. 3. Fyzická architektura J2EE aplikace. Distribuce Javy se liší podle jejího zamýšleného použití:

Předmluva 17. Stručný úvod 17 Cílová skupina 18 Cvičení a řešení 18 Poděkování 19 Zpětná vazba od čtenářů 19 Errata 19

MQTT

Softwarově definované úložiště pod taktovkou EMC Lukáš Bělovský, konzultant Gapp System

Obsah přednášky. Technologie. Enterprise Java Beans. Enterprise Java Beans. EJB kontejner. Enterprise Java Beans (EJB)

Specifikace minimální konfigurace zboží Příloha č. 1. Specifikace minimálních požadavků na vybrané parametry zboží

Enterprise Java Beans 3.0

PODMÍNKY POSKYTOVÁNÍ PŘÍSTUPU K PORTÁLU NAMĚŘENÝCH DAT POMOCÍ WEBOVÝCH SLUŽEB SPOLEČNOSTI ČEZ DISTRIBUCE, A. S.

messaging systémů Perfromance Analysis of Open Source Messaging Systems

Tvorba informačních systémů

Java a J2EE. Cleverlance. Lukáš Marek lukas.marek@cleverlance.com

Obsah. Předmluva KAPITOLA 1 Úvod do programu Microsoft Dynamics NAV KAPITOLA 2 Základy ovládání...33

Komunikace. Úrovová architektura protokol. Úrovová architektura protokol (2) Pednášky z distribuovaných systém

KAPITOLA 1 Instalace Exchange Server

FRED & PostgreSQL. CZ.NIC, z.s.p.o. Jaromír Talíř <jaromir.talir@nic.cz>

(Enterprise) JavaBeans. Lekce 7

případová studie KB - BLOK systém, s.r.o. Nová webová prezentace rozšířená o e-shop

Objektově orientované technologie Dynamický náhled Sekvenční diagram (Realizace UC) Daniela Szturcová

CAL (CAN Application Layer) a CANopen

Realizace klientsky orientovaných služeb veřejné správy

NOVINKY V JEE EJB 3.1. Zdeněk Troníček Fakulta informačních technologií ČVUT v Praze

Nasazení webových služeb do enterprise prostředí. Petr Steckovič

SOAP & REST služby. Rozdíly, architektury, použití

Internet Information Services (IIS) 6.0

Zpětná vazba od čtenářů 11 Dotazy 11 Zdrojové kódy ke knize 11 Errata 11 Typografické konvence použité v knize 12

Tvorba informačních systémů

Ing. Pavel FERINA. RADIÁLKA HRADEC KRÁLOVÉ, s.r.o.

WCF. IW5 - Programování v.net a C# WCF

A7B39WPA Webové podnikové aplikace. Zdeněk Kouba Petr Aubrecht Petr Křemen

Integrace dat. RNDr. Ondřej Zýka

Load Balancer. RNDr. Václav Petříček. Lukáš Hlůže Václav Nidrle Přemysl Volf Stanislav Živný

RadioBase 3 Databázový subsystém pro správu dat vysílačů plošného pokrytí

Architektura orientovaná na služby Návrh orientovaný na služby. Ing. Petr Weiss. VUT v Brně,, FIT, UIFS

Alcatel-Lucent VitalQIP DNS/DHCP & IP Management Software

NetFlow a NBA? FlowMon 7 umí mnohem více! (NPM, APM, VoIPM, packet capture) Petr Špringl springl@invea.com

UAI/612 - Cloudová Řešení. Návrh aplikací pro cloud

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)

Bi-Direction Replication

Principy ATM sítí. Ing. Vladimír Horák Ústav výpočetní techniky Univerzity Karlovy Operační centrum sítě PASNET

Michal Krátký, Miroslav Beneš

Turris:Sentinel. Nový systém pro sběr dat. Robin Obůrka

Tvorba informačních systémů

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)

Společnost MEFISTO SOFTWARE, a.s. uvádí na trh nový produkt Mefisto CAMPUS.

1. Webové služby. K čemu slouží? 2. RPC Web Service. 3. SOA Web Service. 4. RESTful Web services

Y36PSI IPv6. Jan Kubr - 7_IPv6 Jan Kubr 1/29

Tvorba informačních systémů na platformě J2EE Petr Hetmánek Masarykova Univerzita, Fakulta Informatiky, Botanická 68a, Brno

Administrace Oracle - Správa zdrojů

Hana Jedličková Novell Tour Praha,

Návrh architektury škálovatelné cloudové služby aneb nespalte se v cloudu. Mgr. David Gešvindr MCSE: Data Platform MCT MSP

Platforma J2EE. Lukáš Zapletal liberix.cz. Platforma Java 2 Enterprise Edition

Distribuované systémy a počítačové sítě

MYBIZ - Řešení pro zpřístupnění dat ze stávajících aplikací na mobilních zařízeních (Mobilize your business!) Požadavky zákazníka.

Ing. Michal Martin. MQTT na zařízeních Weintek

Platformy / technologie. Jaroslav Žáček

PLATFORMY / TECHNOLOGIE JAROSLAV ŽÁČEK

Business continuity a disaster recovery plánování (BCP/DRP) jako základní kámen přežití organizace

Tvorba informačních systémů

O Apache Derby detailněji. Hynek Mlnařík

Distribuce IT systému z důvodu minimalizace rizik a nasazení platformy linux

Návrhové vzory pro J2EE. Miroslav Beneš

Systémy pro sběr a přenos dat

IPZ laboratoře. Analýza komunikace na sběrnici USB L305. Cvičící: Straka Martin, Šimek Václav, Kaštil Jan. Cvičení 2

Dodávka a implementace personálního a mzdového IS

Bolesti a přínosy. Ing. J. Skorkovský, CSc. pro ESF MU

MVVM pro desktop i web


NPRG051 Pokročilé programování v C /17 Úkol 2

Sledování výkonu aplikací?

Common Object Request Broker Architecture

Modul pro PrestaShop 1.7

VÝZVA K PODÁNÍ NABÍDKY. Ukládání, zálohování a archivace dat

Dodatečné informace č. 7

Centralizace aplikací ve VZP

Softwarové komponenty a Internet

Architektury komunikujících systémů

ilé aspekty distribuovaných objektových systémů

Elektronická komunikace. 18. sympozium EDI (FACT a eb)

Identifikátor materiálu: ICT-3-03

X33EJA Enterprise Java. Petr Šlechta Sun Microsystems

Jak nasadit konverzní ko d

TECHNICKÁ SPECIFIKACE VEŘEJNÉ ZAKÁZKY

Transkript:

Komunikace systémů pomocí zasílání zpráv Petr Steckovič 10. 11. 2011 Hradec Králové 1

Komunikace Synchronní / Asynchronní Jednosměrná / Obousměrná Přímá / Zprostředkovaná Nejobvyklejší typ komunikace: Synchronní Obousměrná, Přímá 2

Úryvek ze specifikace po té co je objednávka založena a uživatelem, je poslán e-mail s náhledem objednávky a zároveň je notifikován skladový systém, který zajistí vyskladnění zboží. Založení objednávky je dále napojeno na účetní systém přes, který bude možné vytisknout fakturu 3

Založení objednávky 4

Rizika synchronní komunikace Přímá závislost sos volajícího oaj o na volaném oa Problémy (částečných) výpadků, upgradů Příliš těsná závislost systémů ů Nutnost znát kolaborující systémy Rozdílná rychlost spolupracujících systémů 5

Asynchronní komunikace Nečeká se na kompletní zpracování zprávy Odesílatel zprávy nemusí znát (všechny) příjemce - Motivace pro použití zprostředkované komunikace Request / Response (odesílatel zprávy se obtížně dozví jak zpracování dopadlo) 6

Zprostředkovaná komunikace e-mail e-shop Zprostředkovatel komunikace warehouse accounting 7

Message broker Prostředník oddělující vysílajícího od příjemce (příjemců) Manager queue e / topic a dalších objektů Queue Producer / Consumer Topic Publisher / Subscribe Odolnost proti výpadku Garantované doručení 8

Instalace brokeru Dedikovaný Součást JEE aplikačního serveru Součást aplikace Clustering / Load balancing / Failover Persistentní úložiště Databáze Filesystém Speciální 9

Example - Sender 10

Example - Receiver 11

Example Ostatní JNDI Konfigurace HornetQ 12

Header Properties Anatomie zprávy Standardní d (JMSX prefix, JMSXDeliveryCount) Application Specific Provider (Broker) specific Typ těla zprávy BytesMessage, TextMessage, StreamMessage, MapMessage, ObjectMessage 13

Selektory zpráv Logický ýjazyk see selektorů oů boolean Použití selektorů V aplikaci i V brokeru (směrování / duplikaci ) Příklad selektoru: COUNTRY = CZ AND CITY_ID= HK ID= HK 14

Návrh zprávy Zpráva pá ajeob obvykle rozhraní mezi systémy y Pozor na ObjectMessage!!! Vhodné aplikační č property: Typ zprávy (ORDER_CREATED, ORDER_CANCELLED) Verze dat Některá business data jako property (ORDER_ID, COUNTRY, CITY_ID) ID) 15

Transakce / doručení Transakce Distribuované transakce Doručení / Redelivery Dead Letter Queue (DLQ popř. DMQ) Expiry Queue 16

Bridge Přeposílání zpráv mezi brokery Lokální komunikace poslání zprávy Odolnost proti výpadku remote brokeru Aplikace Remote broker Embedded broker Queue Queue 17

Divert Forwading - exclusive divert OrderQueue OrderTopic Duplikace non-exclusive divert možnost využít selektor OrderQueue AuditingQueue 18

Rozposílání zpráv Řešení specifikace prostředky brokeru AccountingQ EmailQ OrderQueue OrderTopic WarehouseHKQ WarehouseQ 19

Request / Response Emulace synchronního volání Proč tak složitě? Obousměrná komunikace s exspirací Request >>>>>>>> System 1 <<<<<<<< Reponse System 2 <<<<<<<< Expiry 20

Implementace Pomocí oc dynamického see selektoru Robustní Bezeztrátové Pomalejší Pomocí temporary queue (example) Rychlé Konfigurace s expirací nelze Uzavření ř temporary Q ztratí tí její jí obsah V době zpracování requestu nemusí již žadatel existovat 21

Req / Res - Klient 22

Req / Res - Server 23

Podpora v JEE 6 Pouze JEE Full Profile ConnectionFactory, Queue.. jsou zdroje AS - @Resource Plná podpora p distribuovaných transakcí Podpora MDB MDB automaticky ti napojená na thread pool Propustnost aplikace Stavební kámen paralelizmu Zjednodušený deployment 24

Producer servlet JEE 6 25

Consumer MDB JEE 6 26

Q&A 27