meruvian integration server - hunabku v.1.1

Post on 16-Nov-2014

917 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

HunabkuHunabku

Meruvian Integration ServerMeruvian Integration Server

AgendaAgenda

Hunabku Camel

Hunabku Mix (ESB)

HunabkuMQ (Broker)

OSGI

JMS

Hunabku CamelHunabku Camel

Hunabku CamelHunabku Camel

• Hunabku camel (Fuse Mediation Router) merupakan sebuah integrasi framework opensource berdasarkan Enterprise Integration Patterns.Apache camel juga menyediakan bahasa (DSL) untuk mendefinisikan routing.

• Camel menggunakan URI untuk bekerja secara langsung dengan segala jenis Transportasi atau model messaging seperti HTTP, ActiveMQ, JMS, JBI, SCA, MINA atau CXF, serta komponen pluggable.

Arsitektur CamelArsitektur Camel

Komponen Apache CamelKomponen Apache Camel

Enterprise Integration Pattern(EIP)Enterprise Integration Pattern(EIP)

Enterprise Integration Pattern merupakan beberapa pola desain untuk penggunaan integrasi aplikasi enterprise dan message berorientasi middleware.

Hunabku Camel - EIPHunabku Camel - EIP

Adapun EIP didalam Hunabku Camel meliputi :

• Messaging System,

• Messaging Channels,

• Message Contruction,

• Message Routing,

• Message Transformation,

• Message Endpoints, dan

• System Management

Contoh Pattern (EIP) -1Contoh Pattern (EIP) -1

Contoh Pattern (EIP) - 2Contoh Pattern (EIP) - 2

Integrasi Hunabku Camel - EIPIntegrasi Hunabku Camel - EIP

A Bfrom(A).filter(isWidget).to(B);

Endpoint A = endpoint("activemq:queue:quote");

Endpoint B = endpoint("mq:quote");

Predicate isWidget = xpath("/quote/product = ‘widget’ ");

from(A).filter(isWidget).to(B);

Integrasi Hunabku Camel - EIPIntegrasi Hunabku Camel - EIP

A B C D

control

X

from(“a”).choice().when().

method(“controlBean”,“isOK”).

to(“x”).end().

pipeline(“b”, “c”, “d”);

Contoh Pattern : Konten Dasar RouterContoh Pattern : Konten Dasar Router

Konten Dasar Router – CamelContext.xmlKonten Dasar Router – CamelContext.xml

Message FilterMessage Filter

SplitterSplitter

TranslatorTranslator

AgregatorAgregator

Routing Slip (Serial Line Internet Protocol)Routing Slip (Serial Line Internet Protocol)

Routing dengan CamelRouting dengan Camel

Endpoint URIEndpoint URI

Endpoint merupakan komponen dari service yang berkomunikasi dengan client dan menyediakan operasi operasi dari service. Sebuah service memiliki paling sedikit satu endpoint. Setiap endpoint memiliki address / alamat nya sendiri yang berbeda dengan endpoint yang lain.

<component-name>:<component-spec>[?params]from(“file:/tmp?consumer.delay=1000”)

from(“bean:myBean?methodName=getOrders”)

from(“quickfix-server:server.cfg?log=#loggingFactoryBean”)

Sample Code (FilterRoute.java)Sample Code (FilterRoute.java)

import org.apache.camel.builder.RouteBuilder; public class FilterRoute extends RouteBuilder { public void configure() throws Exception { Endpoint A = endpoint("activemq:queue:quote"); Endpoint B = endpoint("mq:quote"); Predicate isWidget = xpath("/quote/product = ‘widget’"); from(A).filter(isWidget).to(B); }}import org.apache.camel.builder.RouteBuilder; public class FilterRoute extends RouteBuilder { public void configure() throws Exception { from("activemq:queue:quote") .filter().xpath("/quote/product =‘widget’") .to("mq:quote"); }}

Hunabku Mix Hunabku Mix

Hunabku MixHunabku Mix

Hunabku Mix merupakan implementasi dari Enterprise Service Bus (ESB) yaitu web server open source yang terintegrasi menjadi satu seperti Apache ActiveMQ, Camel, CXF, ODE dan KARAF.

Fitur Hunabku MixFitur Hunabku Mix

• Support protokol (File,FTP,HTTP/S,MS,SMTP,SOAP,TCP,XMPP)

• Support engine Apache (Camel, CXF, ODE, Drools, OS Workflow, POJOs, Quartz, Scripting Saxon, Xquery, XSLT, WS-Notifikasi)

• Support keamanan atau security (JAAS,WS-Security)

• Web server integrasi (Geronimo,JBoss,Jetty,Tomcat,Weblogic,Websphere)

Arsitektur Service MixArsitektur Service Mix

Keuntungan ESBKeuntungan ESB

Mengurangi total biaya kepemilikan melalui standar berbasis SOA - JBI

Mengurangi kompleksitas integrasi dan biaya Ekstrim kinerja dan skalabilitas terbatas Peningkatan kontrol dan visibilitas Leverage aset yang ada dan informasi dalam cara-cara baru Konfigurasi untuk mendukung integrasi code Menyederhanakan tugas pemrograman yang rumit Menyeimbangkan solusi untuk enterprise-wide deployment (bus

didistribusikan) Pemantauan Terpadu, Tracing dan Logging

Sekilas Mengenai Enterprise Service BusSekilas Mengenai Enterprise Service Bus

Enterprise Service Bus (ESB) adalah perangkat lunak atau software sebagai perantara atau middleware masalah integrasi data seperti masalah integrasi antar webservice, tingkat keamanan dan kontrol dari komunikasi antar webservice.

Arsitektur ESBArsitektur ESB

OSGIOSGI

OSGIOSGI

• OSGI merupakan suatu komponen yang dapat melakukan proses deploy, update, start, stop tanpa harus melakukan proses reboot pada sistem.

• Teknologi ini berawal dari suatu pemikiran bagaimana cara merubah suatu program tanpa membongkar code.Misal : Kita mau menambahka sebuah library jar kedalam source,jika menggunakan OSGI Kita tinggal masukin ,lalu OSGI akan bekerja untuk me-load secara otomatis beda halnya jika Kita menggunakan Tomcat.Jika di Tomcat Kita harus Stop server dulu kemudian masukin jar baru restart server.

Arsitektur OSGIArsitektur OSGI

Manfaat Penerapan OSGIManfaat Penerapan OSGI

• Mengurangi kompleksitas (Reduced Complexity)

• Reuse

• Real World

• Easy Development

• Dynamic Updates

• Simple

Implementasi OSGIImplementasi OSGI

Fitur OSGIFitur OSGI

• Menyediakan komponen untuk membangun aplikasi seperti IDE (Eclipse)

• Aplikasi Server (Glassfish, IBM Websphere, Oracle/BEA Weblogic, Jonas, Jboss)

• Framework (Spring, Guice)

• Otomatisasi industri gateway, telepon

Apa itu Apache Karaf?Apa itu Apache Karaf?

Apache Karaf merupakan runtime kecil berbasis OSGi yang menyediakan media untuk menampung berbagai komponen dan aplikasi yang dapat digunakan.

Sebagai Servicemix Kernel Project

Berkembang di dalam Apache Felix Project

Arsitektur KarafArsitektur Karaf

Support HunabkuMQ, Hunabku Mix, Camel, CXF Support HunabkuMQ, Hunabku Mix, Camel, CXF

HunabkuMQHunabkuMQ

HunabkuMQHunabkuMQ

HunabkuMQ (Fuse Message Broker) merupakan salah satu implementasi Queue atau message broker untuk aplikasi. Jadi HunabkuMQ ini berperan sebagai ruang tunggu (broker)dari aplikasi yang akan memprosesnya.

Fitur HunabkuMQFitur HunabkuMQ

• Suport Berbagai bahasa seperti Java, C, C++, C#, Ruby, Perl, Python dan PHP

• Support Berbagai Protocol TCP, SSLNIO, JMS, REST, UDP, Multicast, Jgroups.

• Desain Sesuai Enterprise Integration Pattern

ActiveMQ ArsitekturActiveMQ Arsitektur

Client connectKe broker

menggunakanSimple

url

TOPIC DAN QUEUE

DI TULIS DINAMIS

KontrolKonektor JaringanReplikasi Failover

Dan clustering

Spring based

FILE DAN JDBC DIDUKUNG BERDASARKAN STORE

MESSAGE

Java Messaging Service (JMS) Java Messaging Service (JMS)

Java Messaging Service (JMS)Java Messaging Service (JMS)

• Messaging adalah suatu metode komunikasi diantara komponen-komponen software atau aplikasi

• Java Message Service (JMS) memberikan sebuah standar interface berbasis Java untuk pelayanan message dari Message Oriented Middleware (MOM) beberapa provider.

Arsitektur JMSArsitektur JMS

Tipe JMS (Tipe JMS (Publish-Subscribe MessagingPublish-Subscribe Messaging))

Tipe JMS (point-to-point)Tipe JMS (point-to-point)

Reflikasi Broker Tempat berbagi message

Replikasi,Clustering dan failoverReplikasi,Clustering dan failover

Jaringan Master-SlaveJaringan Master-Slave

Kombinasi ActiveMQ + Camel + ESBKombinasi ActiveMQ + Camel + ESB

REGIONALNETWORK BROKER

SMX4 - Master

SMX4 – Slave

Meruvian

cs@meruvian.org

top related