+ All Categories
Home > Technology > Open Source Soa

Open Source Soa

Date post: 20-Nov-2014
Category:
Upload: arun-pareek
View: 11,734 times
Download: 2 times
Share this document with a friend
Description:
This is a presentation on Open source SOA. It also contains evaluations of the existing open source tools available in the market.
Popular Tags:
38
SOA – Open Source Approach Presented By: Arun Pareek, January 05,2009
Transcript
Page 1: Open Source Soa

SOA – Open Source ApproachPresented By: Arun Pareek, January 05,2009

Page 2: Open Source Soa

2

SOA – Open Source Approach – January 05, 2009Arun Pareek

Why you might be interested…

“SOA” is showing up in the technical press

SOA dramatically improves IT flexibility and simultaneously reduces costs.

Page 3: Open Source Soa

3

SOA – Open Source Approach – January 05, 2009Arun Pareek

What is it ?…

What is Service Oriented Architecture?.

Company B Company BCompany ACompany A

Application AApplication A

ObjectA-----------------------------------------------------------------------------------------------------------------

ObjectA-----------------------------------------------------------------------------------------------------------------

Application BApplication B

ObjectB------------------------------------------------

ObjectB------------------------------------------------

Service Broker

Service InterfaceService Interface

PublishDiscover

New? No

Rocket science? Not really

A change in thinking? Most definitely!

Can you run right out and buy one? Well…..

Page 4: Open Source Soa

4

SOA – Open Source Approach – January 05, 2009Arun Pareek

Key Characteristics of SOA

Quality of service, security and performance are specified.

Software infrastructure is responsible for managing. Services are cataloged and discoverable. Data are cataloged and discoverable. Protocols use only industry standards.

Page 5: Open Source Soa

5

SOA – Open Source Approach – January 05, 2009Arun Pareek

What is it not…

SOA isn’t a solution to world hunger

Nor is it: • A specific Technology• The Ultimate answer to reuse• A New name for EAI • A New way to do RPC

Page 6: Open Source Soa

6

SOA – Open Source Approach – January 05, 2009Arun Pareek

SOA and Services Skeleton

.

ServiceService

describesdescribes

End PointEnd Point ExposesExposes

MessagesMessages Sends/ReceivesSends/Receives

ContractsContracts

Binds toBinds to

Service Service ConsumerConsumer implementsimplements

PolicyPolicy governed bygoverned by

Sends/ReceivesSends/Receives

Adheres Adheres toto

ComponentComponent

RelationRelation

KeyKey

UnderstandsUnderstands

ServesServes

Page 7: Open Source Soa

7

SOA – Open Source Approach – January 05, 2009Arun Pareek

Open Source SOA

Try before you buy:

With open source, you can create prototypes and try out the software before you commit large sums of money.

Lower cost of entry:

The cost of the various tools within the stack can be quite staggering. Open source eliminates or greatly reduces the initial sticker shock.

Cost effective support:

Support for open source software is substantially less. So not only do we not have the huge initial investment, but our ongoing fixed costs are substantially less as well.

Core competency:

Many of commercial SOA vendors buy several companies and then call themselves an integrated SOA stack. The reality is, their stacks are a hodgepodge of many different companies and the promise of integration is not a reality. With many of the open-source vendors, SOA is all that they do. These products are built for SOA from the ground up, not from mergers, acquisitions, and rushed integration releases.

For the people by the people

Page 8: Open Source Soa

8

SOA – Open Source Approach – January 05, 2009Arun Pareek

Introduction to Shared Services Architecture

Page 9: Open Source Soa

9

SOA – Open Source Approach – January 05, 2009Arun Pareek

PRESENTATION SERVICES

Page 10: Open Source Soa

10

SOA – Open Source Approach – January 05, 2009Arun Pareek

Portals and Portal Frameworks

• Portals and Portlets are emerging technologies and gaining lot of popularity.

• Portals are gaining attention among programmers due to their ease in development, richness in functionality, customization of interface and pluggable architecture.

• There are many open source Portal Frameworks available and it is important to evaluate all these Portal Frameworks in an effective manner, based on core functionality i.e. their compliance with JSR 168 Portal API and optional features available to the programmers i.e. IDE plug-ins, utility packages, monitoring tools etc.

• We have selected a small number of Portal Frameworks based on their popularity and our experience of using them to evaluate their core and optional functionalities.

Page 11: Open Source Soa

11

SOA – Open Source Approach – January 05, 2009Arun Pareek

Comparison of Leading Open Source Portal Technologies

Portal Latest Edition

Community

License

Platform Theme UE

LifeRay LifeRay 5.1.2 LifeRay MIT License

Comes in two Versions.Pro: Tomcat, Jetty, ResinEnterprise: Any J2EE App Server.JSR-168 and JSR-170 compliance.

Swappable themes, deployed as WAR. Many more community themes available for use

Struts and tiles, AJAX, Tapestry, Velocity, Spring and AOP. And many more.

Apache Jet Speed 2

JetSpeed-2 Apache Apache 2.0

Any servlet container 2.3 or higher. JSR-168 compliance for portlets.

Simple guide for customizing layout using Velocity

Velocity and JSP. Also there is support for Ajax. Spring Components.

JBoss Portal JBoss Portal 2.7.0

JBoss Inc and Community

LGPL JSR-168 and JSR-170 Portal and Portlets Compliant Servers

Easily swappable themes/layouts, Flexible API, Per-page layout Strategy.

JSF, MyFaces, Spring MVC, Ajax

Page 12: Open Source Soa

12

SOA – Open Source Approach – January 05, 2009Arun Pareek

BUSINESS SERVICES LAYER

Page 13: Open Source Soa

13

SOA – Open Source Approach – January 05, 2009Arun Pareek

What is it?

Business Processes Management

The concept of Business Process Management [BPM] has its roots in Operation Transformation and enables flexible design deployment, monitoring and tracking, process focus and efficiency.

Page 14: Open Source Soa

14

SOA – Open Source Approach – January 05, 2009Arun Pareek

Aspects of a BPM Tool

Business Process Management (BPM) Involves

– End to end Automation of business processes– Blending machine-machine and manual operations– Straight Through Processing (STP)

BPM Uses– Workflow– Imaging & Document Management – EAI: Integration with Business Systems– Measurements, Tracking, reporting and Control– Analysis, Simulation, Optimisation and re-deployment

Page 15: Open Source Soa

15

SOA – Open Source Approach – January 05, 2009Arun Pareek

Open Source BPM Technologies Comparison Parameters

Business Process Modeling Capabilities• Defining Processes Graphically and/or Textually• Ability to create Value Chain, High-Level Process Model, Organization Model, Roles• Process Decomposition• Capability for Importing and managing organizational structures• Capability to link between Organization, Processes and Value Model• View Metadata through process flow• Capability to support standard notation (e.g. BPMN, BPEL, BPML, UML etc)

Ease of Use

Business Rules Capability and Interface• Graphical Rules Editor• Products Ability to manage business rules

Page 16: Open Source Soa

16

SOA – Open Source Approach – January 05, 2009Arun Pareek

BPM TOOL Considered - Intalio

System Introspection Automatic System Interface WSDL Generation, Visual Connectors for All Supported Systems

Code Generation & Import ARIS Import, Automatic Process Code Generation, BPEL4WS 1.0/1.1, Code Import, BPML Code Import, Transparent Process Validation, WS-BPEL 2.0 Code Generation, WS-BPEL 2.0 Code Import, WSDL Endpoint Generation

Environment BPMN 1.0 Support, Eclipse Plug-in Version, Integrated Development Environment, Standalone Version

Life Cycle Management Advanced Searching, Check-In/Check-Out, Collaborative Versioning, Graphical Dependency Manager, Local Versioning

Mapping Editor Graphical Assignment Mapping, Graphical Rule Mapping, Graphical Transformation Mapping, Schema-to-Schema Mapping Editor, Support for Complex Schemas, Transparent Schema Validation, XML Schema 1.0 Support, XPath 1.0 Support

Process Deployment Dynamic Consistency Checking, One-Click Process Deployment, Online Reference Tracking

Process Modeler Advanced Set of Pre-Built Process Constructs, Compensation Flows, Various Drag and Drop UI, Process Map Export, Reusable Process Support, Visual Property Editor

Page 17: Open Source Soa

17

SOA – Open Source Approach – January 05, 2009Arun Pareek

BPM TOOL Considered - jBPM

Lightweight Architecture jBPM can run in any environment that has a JVM and JDBC connection. It can run well in both a non J2EE app server environment, and any J2EE environment. It also runs in clustered J2EE environments.

Multiple Process Language support jBPM supports two XML based process languages: JPDL and BPEL

Visual Process Modeler jBPM provides a visual process modeler that is a plug-in to the Eclipse IDE.

Graph Oriented Programming with JPDL Flexible Nodes, Actions, Timers, Process Variables

Process Management Execution Management, Task Management, Audit Trails, Persistence, Process Versioning

Interfacing to jBPM Simple API, No Code Generation

Hardware Requirements Minimun 512 Megs of RAM, 300 Mbytes of disk space

Page 18: Open Source Soa

18

SOA – Open Source Approach – January 05, 2009Arun Pareek

Enterprise Service BUS

Page 19: Open Source Soa

19

SOA – Open Source Approach – January 05, 2009Arun Pareek

Enterprise Service Bus Features and Functions

Enterprise Service Bus Features and Functions

Category Feature/Function Basic Optional

Routing Addressability Y

Content-based Routing Y

Transport-synchronous and asynchronous (JMS,WS-Rel, HTTP) Y

Invocation WS-1(SOAP, UDDI, WSDL) ? ?

JMS, JCA ? ?

Meditation Data Transformation and translation (XSD, DTD, XSLT, XPath) Y

Protocol Translation (SOAP, JMS, WS-Rel, JCA, SMTP) ? ?

Security Model Translation Y

Process Orchestration Business Process Support (BPEL) Y

Complex Event Processing Event Interpretation, event correlation, event pattern making. Y

Adapters Adapters for major application infrastructure platforms (J2EE, .Net,), application packages, DBMS, FTP, EDI etc.

Y

Integration Testing Graphical Design Time Tooling Y

Deployment Tools (ANT) Y

Testing Tools Y

Change Management Hot Deployment Y

Multiple Versions (Production) Y

Service Lifecycle management (development, testing, QA, production)

Y

Quality of Service Transaction Control and Compensation Y

Failover at service and service container Y

Page 20: Open Source Soa

20

SOA – Open Source Approach – January 05, 2009Arun Pareek

Open Source ESB Considered - WSO2 ESB 2.0

Minimal Custom Development Content based routing, Service virtualization, Load balancing, Fail over sending, Protocol switching, Message transformation, Schema validation, Logging & monitoring, Messagesplitting and, Aggregation, Enterprise integration patterns, Request throttling Response caching

Full XML and Web Services Support SOAP 1.1/SOAP 1.2 , WSDL 1.1/WSDL 2.0 , WS-Addressing, WS-Security, WSReliable Messaging, WS-Eventing, WS-Policy MTOM/SwA optimizations for binarymessages, XML/HTTP (POX) REST formats

Extensibility It can be extended using simple Java extensions, POJO classes or Spring, as well as with JavaScript, Ruby, Groovy or other Apache BSF scripting languages.

Multi-protocol Non-blocking HTTP/S transport, Transactional JMS transport 1.0 and 1.1 with binary, textand SOAP messages over JMS Mail transport (POP3, IMAP, SMTP)

Internationalized Graphical Console Sequence editor, Proxy service editor, Endpoint/Local Entry editor, Task scheduler, Eventsource creator, Built-in registry browser, Policy editor, Predefined security scenarios,Configure dataSources,Transport management, Logs, trace and statistics monitor.

Server Management Ability to shutdown and re-start the ESB, gracefully and forcefully through the management console and JMX

Built-in Registry The WSO2 ESB ships with an integrated WSO2 Registry, and can easily connect to external/remote Registry implementations

Page 21: Open Source Soa

21

SOA – Open Source Approach – January 05, 2009Arun Pareek

Open Source ESB Considered – Apache Service Mix 3.3

ServiceMix is lightweight and easily embeddable, has integrated Spring support and can be run at the edge of the network (inside a client or server), as a standalone ESB provider or as a service within another ESB. You can use ServiceMix in Java SE or a Java EE application server.

ServiceMix uses ActiveMQ to provide remoting, clustering, reliability and distributed failover.

ServiceMix is completely integrated into Apache Geronimo, which allows you to deploy JBI components and services directly into Geronimo. ServiceMix is being JBI certified as part of the Geronimo project.

Other J2EE application servers ServiceMix has been integrated with include JBoss, JOnAS with more to follow.

Page 22: Open Source Soa

22

SOA – Open Source Approach – January 05, 2009Arun Pareek

Open Source ESB Considered – OpenESB 2.0

OpenESB includes a growing set of binding components (i.e. transports) that implement the JBI specification. These include HTTP , File , JMS , JDBC and many other components.

Other components that are provided with OpenESB include a BPEL Service Engine for service orchestration, complex event processing using the Intelligent Event Processor and the ability to transform messages using the XSLT Service Engine .

It is also possible to use binding components and service engines available from other JBI implementations within OpenESB.

The OpenESB runtime can run in a bare JVM or can be embedded inside a Java EE application server such as GlassFish

Page 23: Open Source Soa

23

SOA – Open Source Approach – January 05, 2009Arun Pareek

Messaging Oriented Middleware MOM’s (EAI)

Page 24: Open Source Soa

24

SOA – Open Source Approach – January 05, 2009Arun Pareek

Purpose of EAI in SOA

Data (information) Integration: Ensuring that information in multiple systems is kept consistent. This is also known as EII (Enterprise Information Integration).

Process Integration: Linking business processes across applications.

Vendor independence: Extracting business policies or rules from applications and implementing them in the EAI system, so that even if one of the business applications is replaced with a different vendor's application, the business rules do not have to be re-implemented.

Common Facade: An EAI system could front-end a cluster of applications, providing a single consistent access interface to these applications and shielding users from having to learn to interact with different software packages.

Page 25: Open Source Soa

25

SOA – Open Source Approach – January 05, 2009Arun Pareek

Open Source EAI Tool Considered – Jitterbit

Key Features and benefits of Jitterbit are:-

Rapid Results– Graphical drag-n-drop mapping without custom code – 100% standards-based communication – Out-of-the-box connections for major enterprise applications, all major databases, flat-files, Web Services,

and messaging systems – Pre-built integrations (Jitterpaks) available at the Trading Post

Robust and Scalable– Multi-threaded architecture – Optimized for Windows, Linux and Solaris – Advanced caching for improved performance

Easy Integration Management– Complete visibility into transactions – Schedule processes and automate success/failure operations – Proactive alerting of data and connectivity errors – Role-based access privileges

Cost Effective– No software licenses – No appliance hardware to buy

Page 26: Open Source Soa

26

SOA – Open Source Approach – January 05, 2009Arun Pareek

DATA SERVICES PLATFORM

Page 27: Open Source Soa

27

SOA – Open Source Approach – January 05, 2009Arun Pareek

Open Source Data Services Platform Considered – WSO2 Data Services 1.0.1

Why Use?– Expose and access data from any source as consumable Web services – Web-enable legacy data for SOAs – Aggregate data from multiple data sources

Key Features– Aggregate data from multiple data sources. – Graphical Web-based wizard or Eclipse plug-in wizard. – XML configuration file format and customizable XML output. – Test data services with a click of a button via the Try-it tool

Page 28: Open Source Soa

28

SOA – Open Source Approach – January 05, 2009Arun Pareek

WSO2 Data Services v 1.0.1 Features

Service enable data Exposes relational data sources, Excel files and CSV files.

Zero code approach A Web based graphical console and an Eclipse plug-in wizard

Easy configuration With a simple XML descriptor file data can be exposed using wizards and tools provided

Connection pooling support Built-in Apache DBCP support, together with the ability to use a pooling manager of developer's choice

Access Throttling Databases are never overloaded

Try-it tool Test services on the fly

Page 29: Open Source Soa

29

SOA – Open Source Approach – January 05, 2009Arun Pareek

Open Source Data Services Platform Considered – jBoss MetaMatrix

Key Components

MetaMatrix Enterprise Designer. Eclipse-based design tool for creating and testing data services.

MetaMatrix Enterprise Server. Server-based runtime environment that executes data services and provides optimization, caching, and security.

MetaMatrix Repository. Multi-user metadata management system that incorporates a rich metadata repository and support for sharing metadata across a project team or across the enterprise.

The MetaMatrix Console. Client application that enables administration of the various components, including configuration of hosts, processes, and services; system monitoring and logging; configuration of security; and other administrative tasks.

Page 30: Open Source Soa

30

SOA – Open Source Approach – January 05, 2009Arun Pareek

Features and Benefits of MetaMatrix

Faster development, better integration.

Quickly create data services to address a range of data requirements for one project, across several projects, or throughout the enterprise.

Decouple applications from physical data sources to ease development and maintenance.

Bridge semantic and vocabulary gaps between existing data sources, new project data requirements, and mandated standards.

Reduce development and maintenance time - implement data access, transformation, integration, and aggregation without programming.

Develop systems that provide consistent, current data in real time - with enterprise performance.

Manage data services and related metadata for easy discovery and reuse.

Page 31: Open Source Soa

31

SOA – Open Source Approach – January 05, 2009Arun Pareek

Other Open Source SOA Technologies

JBoss RulesOpen Source Rules Framework

WSO2 RegistryAllows to store, catalog, index and manage enterprise meta data in a simple, scalable model.

JBoss Enterprise Application PlatformBuilding, deploying, and hosting enterprise Java applications and services

Mule GalaxySingle source of truth for the governance and management of your Service Oriented Architecture.

Eclipse IDE 3.0Normally All the open source tools and frameworks have an eclipse plugin. Eclipse 3.0 stands asthe backbone of rapid code development

Page 32: Open Source Soa

32

SOA – Open Source Approach – January 05, 2009Arun Pareek

What Works Best

The JBoss Open Source SOA Stack

Page 33: Open Source Soa

33

SOA – Open Source Approach – January 05, 2009Arun Pareek

What Works Best

WSO2 Carbon Stack for SOA ImplementationWhen we look at an open source SOA implementation certainly the Carbon stack provided by WSO2 can be ignored.It’s a lightweight open source middleware powered by Apache for SOA. And a very comprehensive Create, Connect,Compose and Govern philosophy for SOA.

Page 34: Open Source Soa

34

SOA – Open Source Approach – January 05, 2009Arun Pareek

Disadvantages of Open Source SOA

Having spoken about the various open source alternatives to implement SOA into anenterprise we must also gauge the various risks and disadvantages associated with the Open source approach. Here are a few of them:-

– Most open source software applications are not reliable

– No support exists for open source software

– No guarantee of updates

– Significant problems connected to intellectual property

Page 35: Open Source Soa

35

SOA – Open Source Approach – January 05, 2009Arun Pareek

Why Not SOA

For a stable or homogeneous enterprise IT environment, SOA may not be important or cost effective to implement.

If an organization is not offering software functionality as services to external parties or not using external services, which require flexibility and standard-based accessibility, SOA may not be useful.

SOA is not desirable in case of real time requirements because SOA relies on loosely coupled asynchronous communication.

Page 36: Open Source Soa

36

SOA – Open Source Approach – January 05, 2009Arun Pareek

SOA Implementation Checklist

Business domain model – allocation of responsibility

Technology standards and development guidelines– Transaction taxonomy– Generic service invocation with back-end routing based on requests– Error and exception handling– Service scoping guidelines, to maximize use by both systems and business processes, and

re-use by developers

Service directory – is UDDI always the right approach?

Service “layering”– On top of COTS or bespoke systems – hide system implementation details– On top of each other – coarse-grained services lead to finer-grained re-usable components– Determine the best way to support multiple instances of a service– Don’t focus so much on “infrastructure” services (e.g., XML parsing, etc.)

Service level agreements

Page 37: Open Source Soa

37

SOA – Open Source Approach – January 05, 2009Arun Pareek

References

http://www.wikipedia.org/ http://servicemix.apache.org/home.html http://mule.mulesource.org/display/MULE/Home http://www.jboss.com/resources/soa http://www.jboss.com/pdf/JESPValueDif http://portals.apache.org/jetspeed-1/ http://www.liferay.com/web/guest/products/portal/features http://wso2.com/ http://www.intalio.com/products/benefits/ http://servicemix.apache.org/home.html https://open-esb.dev.java.net/ http://www.jitterbit.com/Product/enterprise-integration

Page 38: Open Source Soa

38

SOA – Open Source Approach – January 05, 2009Arun Pareek


Recommended