27
Spojujeme software, technologie a služby Spojujeme software, technologie a služby Pomocí mechanismu JMS front Garantované doručení zpráv v prostředí Oracle SOA František Post Vedoucí systémového vývoje 12. Listopadu 2013

Garantované doručení zpráv v prostředí oracle soa

Embed Size (px)

Citation preview

Page 1: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby Spojujeme software, technologie a služby

Pomocí mechanismu JMS front

Garantované doručení zpráv v prostředí Oracle SOA

František Post

Vedoucí systémového

vývoje

12. Listopadu 2013

Page 2: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 2

Úvod

Page 3: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 3

Obecný popis prostředí

Existující problémy

Proč Oracle SOA?

Popis řešení

Testy

Shrnutí

Agenda

Page 4: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 4

Heterogenní prostředí

Různí dodavatelé

Jednotlivé systémy mezi sebou komunikují

pomocí volání webových služeb

Obecný popis prostředí

Page 5: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 5

Heterogenní prostředí

Různí dodavatelé

Jednotlivé systémy mezi sebou komunikují

pomocí volání webových služeb

Obecný popis prostředí

Page 6: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 6

Nízká propustnost systému

V určitých situacích se ztrácejí zprávy

Uživatelé ani správa neví proč

Existující problémy

Page 7: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 7

Standardní řešení

Výkonnost (včetně škálování), dostupnost

SOA Suite poskytuje vše, co pro pilotní aplikaci

potřebujeme

Proč Oracle SOA

Page 8: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 8

Nízká propustnost – větší výkon celkově plus

jednoduché škálování

Ztráta zpráv – garantované doručení

Uživatelé neví proč mizí zprávy – možnost

použití BAM (Business activity monitoring),

RUEI (Real User Experience Insight) nebo

Business Transaction Management

Jak SOA Suite čelí popsaným problémům

Page 9: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 9

Co tedy potřebujeme v pilotním projektu vyřešit

Řízení dokumentů a jejich stavů

Zaručené doručení na vstupu a výstupu

Protože se jedná o kritický systém, zaměřili

jsme se hlavně na garantované doručení

Popis řešení

Page 10: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 10

Popis řešení - obecně

Page 11: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 11

Popis řešení - detailně

Page 12: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 12

Popis řešení - implementace

Page 13: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 13

Funkční testy – jestli vše funguje tak jak

očekáváme

Zátěžové – jak se systém chová při zátěži

Testy použitého řešení

Page 14: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 14

Příjem zpráv i v případě, že aplikace neběží

Automatické pokračování v případě

opětovného spuštění aplikace

Persistence zpráv

Transakčnost

Funkční testy

Page 15: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 15

Funkční testy – příjem zpráv bez aplikace

Ověřeno, funguje

Page 16: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 16

Funkční testy – persistence zpráv

Ověřeno, funguje

Page 17: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 17

Funkční testy – transakčnost

Je třeba správně nastavit transakce na kompozitní aplikaci, která

provádí zápis zpráv do fronty

Pak funguje

Page 18: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 18

Funkční testy – shrnutí

JMS fronta lze použít pro garantované

doručení

Je nutno nastavit správně transakce

Page 19: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 19

Vliv použití JMS fronty na rychlost odezvy a na

celkovou délku zpracování

Vliv velikosti zprávy na rychlost odpovědi

Rychlost výběru zprávy z fronty

Vliv zaplnění fronty na odezvu

Zátěžové testy

Page 20: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 20

Java aplikace generující zátěž a

zaznamenávající rychlost odezvy

SOA kompozitní aplikace

Dvě verze

S předřazenou JMS frontou

S přímým voláním

Jak se testovalo

Page 21: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 21

SOA Suite nasazeno na aplikačním serveru Weblogic

Virtuální server pro weblogic

4 x Intel Xeon 2,4 GHz

9 GB paměti RAM

Z toho 7 GB jen pro node soa_server

Oddělená databáze

Na čem se testovalo

Page 22: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 22

Zátěžové testy – vliv použití JMS

- Skutečný vliv JMS fronty na rychlost zpracování požadavku

- Celkový čas na vstupu, včetně výběru zprávy z fronty a

zpracování

- Až o 80% delší zpracování

Page 23: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 23

Zátěžové testy – vliv velikosti zprávy na odezvu

(rychlost vkládání zpráv do fronty)

- Na vstupu je rychlost stejná

- Při větších zprávách se projevuje větší zátěž při zpracování (s

JMS frontou není zahrnuté)

- Do velikosti cca 50 kB je odezva konstantní, pak úměrná velikosti

0

0,5

1

1,5

2

2,5

1 5 10 20 50 100 200 500 1000 2000

Od

ezv

a a

plikace [

s]

Velikost zprávy [kB]

Bez JMS

s JMS

Page 24: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 24

Zátěžové testy – vliv zaplnění fronty na rychlost

vkládání nových zpráv

Testovací aplikace zapisovala v 10 vláknech

vždy 100 zpráv

Zprávy se z fronty vybíraly cca 10x pomaleji,

takže šlo sledovat odezvu na vstupu při

rostoucím počtu zpráv ve frontě

Zapisovalo se až do počtu 400 tisíc zpráv o

velikosti 1 kB

Žádný vliv na rychlost nebyl pozorován

Page 25: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 25

Ověřili jsme požadovanou funkčnost

Určili jsme vliv na odezvu (jak na vstupu, tak

celkové zpracování)

S JMS frontou na vstupu může být doba

zpracování až dvakrát delší

S JMS frontou na vstupu je odezva na vstupu

rychlejší

Shrnutí testů

Page 26: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 26

SOA Suite splnila naše očekávání

Uvažujeme o uplatnění i u jiných zákazníků

Závěr

Page 27: Garantované doručení zpráv v prostředí oracle soa

Spojujeme software, technologie a služby 27

OKsystem s.r.o.

Na Pankráci 125

140 21 Praha 4

tel: +420 236 072 111

[email protected]

www.oksystem.cz

Děkujeme za pozornost