Application Integration with Red Hat middleware Giovanni Pirola Senior Solution Architect Red Hat, Inc. Pontedera, June 27th 2014 JBOSS MIDDLEWARE Unified Interaction Management Tools JBoss Operations Network Developer Tools JBoss Developer Studio JBoss Portal Platform Business Process Management JBoss Business Rules Management System Service Virtualization/Integration JBoss Fuse, JBoss A-MQ , JBoss SOA Platform Data Virtualization/Integration JBoss Data Services Platform Application Server & Data Grid JBoss Enterprise Application Platform, JBoss Enterprise Web Server, JBoss Data Grid Private Cloud Red Hat Enterprise Linux Red Hat Enterprise Virtualization Accelerate: Application development, deployment, and performance across physical, virtual, and cloud environments to boost agility. Public Cloud Red Hat OpenShift Enterprise Integrate: Disparate data, services, applications, and devices to enable productivity and reduce complexity. 2 Automate: Decisions, processes and user interactions to streamline business flows and optimize efficiency. Business Model 100,000+ PARTICIPATE PROJECTS (upstream projects) INTEGRATE (community platforms) STABILIZE (supported products platforms, & solutions) 3 TARGETING DIFFERENT USE CASES COMMUNITY l l ENTERPRISE Community for developing open source middleware; focus on “release early, release often” 100+ projects with different release schedules, dependencies, versions etc. l Community focuses on current release only (e.g. no patches) l Ideal for experimental starter projects & early proof of concepts; not recommended for production use 4 l Use case driven platforms that integrate multiple projects into a single distribution l Product focus on long- term stability & application application compatibility l Up to 24x7 enterprise support for mission critical applications & backed by a global network of Red Hat partners l Ideally suited for long-term enterprise production use JBoss Community & Enterprise Releases Enterprise versions provide long-term support, regular releases including fixes, new features, and new platforms certifications. JBoss Community AS 5 5.1 JBoss EAP 5 Full Support (4yrs) Transition (1yr) Maintenance (2yr) 6 7 7.1 7.1.2 Community project releases are not maintained and never productized JBoss EAP 6 Full Support (4yrs) Transition (1yr) New community features may be backported to Enterprise versions 8 9 JBoss AS renamed to Wildfly Community projects == innovation, release early, release often Enterprise products == long term stability. 5 RED HAT & YOUR BUSINESS: SUBSCRIPTION MODEL UPDATES PATCHES MISSIONCRITICAL UPGRADES MULTILINGUAL UNLIMITED INCIDENTS MULTI-VENDOR CASE OWNERSHIP 24/7 SECURITY RESPONSE TEAM STABILITY WITH A PRODUCT LIFECYCLE OF UP TO 10 YEARS GLOBAL SUPPORT SERVICES CUSTOMER PORTAL & FORUMS HARDWARE CERTIFICATION SOFTWARE CERTIFICATION SOFTWARE ASSURANCE AWARD-WINNING SUPPORT OPTIONAL TRAINING CURRICULA AVAILABLE KNOWLEDGEBASE YEARS AWARDED: 2011 2012 2013 6 Example : JBoss EAP support lifecycle Source : https://access.redhat.com/site/support/policy/updates/jboss_notes/ 7 JBOSS PaaS SERVICES FOR OPENSHIFT Moving into the future... JBoss Fuse iPaaS JBoss BPM bpmPaaS JBoss EAP aPaaS JBoss A-MQ mPaaS JBoss BRMS rulesPaaS 8 JBoss Integration Platform The need for connectivity today 10 JBoss Fuse Integration Product line Additive capabilities to fit different use cases A-MQ Messaging Fuse Fuse Service Works Fuse ESB Service Governance Service Orchestration Service Development Fuse ESB Messaging Messaging Platform Integration Platform Integrate applications, devices by notification or exchange of data using multiple protocols in any runtime Mediate, transform, route and connect between loosely coupled components, services and applications using enterprise integration patterns 11 Business Services Platform Develop and choreograph business services, manage lifecycle, define and enforce service policy and monitor service activity Leader in Forrester Wave: Hybrid Integration 2014 Red Hat leader in 3 categories: Deep Integration Cloud Integration Internet of things (IOT) 12 Complexity in application integration ▶ ▶ ▶ ▶ ▶ ▶ ▶ ▶ ▶ Applications developed in different languages Different Data Formats Different Wire protocols (e.g . Http vs proprietary) Different processing speeds Complexity grows exponentially with application # Support mobile ..... and social Manage component usage Change component implementation Support Business Process Management 13 JBoss A-MQ Messaging Applications developed in different languages • Based on Apache ActiveMQ – – – – – – Reliable Different Data Formats Multi-protocol Support Different Wire protocols (e.g . Http vs proprietary) Native language clients Different processing speeds Multiple O/S support Complexity grows exponentially with application # Small footprint Support mobile ..... and social Pluggable architecture allows Managetocomponent usage protocols and features be added or customized Change component implementation Support Business Process Management 14 Flexibility • JBoss A-MQ supports multiple transport protocols. – OpenWire, Stomp, REST, XMPP, VM, MQTT • JBoss A-MQ supports AMQP – Standard protocol – Provides interoperability with open wire level protocol • JBoss A-MQ supports multiple languages. – OpenWire : Java, C++ – Stomp - C, C++, C#, .NET, Delphi, Flash, Perl, PHP, Pike, and Python – REST : any language with HTTP capabilities 15 MQTT support : "Internet of Things" • MQTT (telemetry transport) is a machine-to-machine connectivity protocol – Extremely lightweight – Rapidly gaining adoption in mobile computing • Out of the box support with JBoss A-MQ • JBoss Fuse support via MQTT camel component • OASIS MQTT technical committee producing a standard compatible with MQTT V3.1 16 JBoss Fuse ESB A small footprint, flexible enterprise class open source standards-based ESB Applications developed in different languages architecture Different processing speeds Complexity grows exponentially with application Provides rich set of components A-MQ # for FAST development Support mobile .....exponentially and social with application # Complexity grows Apache Camel Excellent integration Manage component usage Support development platform andmobile ..... and social Change component implementationApache CXF tooling Manage component usage Lower total cost of ownership Change component implementation Support Business Process Management 17 Fabric Karaf Different Wire protocols (e.g . Http vs proprietary) Elastic footprint and flexible Different Wire protocols (e.g . Http vs ESB proprietary) Core Different processing speeds JBoss ON Different Data Formats Value Proposition Different Data Formats Camel Enterprise Integration Patterns 18 150+ Endpoint Components! http://camel.apache.org/components.html 19 Fuse Fabric Management of large scale deployments ● Provisioning and deployment ● Create Containers anywhere (Local – Remote – Cloud ) ● Upgrade & patching ● 20 Integrated JMX Console (Hawtio) 21 21 JBoss Fuse Service Works An open source service design, development and integration platform Different Data Formats development and integration platform Different Data Formats Core ESB Different Wire protocols● (e.g . Http vs proprietary) Builds on Fuse ESB and EAP Different Wire protocols (e.g . Http vs proprietary) Different processing speeds ● Structured, service-oriented development Different processing speeds model with application # Complexity grows exponentially SwitchYard Operational Management Eclipse Visual Development Applications developed● inAn different languages open source service design, Support mobile .....exponentially and● social Serviceswith as application a first-order#concept Complexity grows ● Simplified Service Lifecycle Manage component usage Support&mobile ..... and social Design Repository Change component implementation ● Visibility and Governance Automatable Lifecycle Manage component usage ● Support for distributed, cross-functional teams Service Activity Change component implementation Monitoring ● Code and model driven tooling Support Business Process Management 22 Fuse Service Works Layers Services Services Framework (SCA) lightweight service delivery framework providing full life cycle support for developing, deploying, and managing service-oriented applications Design Time Governance Design time lifecycle management Runtime Governance SLA enforcement, Activity Monitoring - DTGov Service Orchestration WS-BPEL 2.0 Orchestrate service calls - RTGov Web Services Standards: SOAP, XML/HTTP, RESTful HTTP Governance DT: Manage the lifecycle of systems from inception through deployment through subsequent change management. RT: Capture service activity information and then correlate, analyse and finally present the information in a form that can be used by to enforce SLAs, and optimize their business. Orchestration Business Rules Declarative, inference rule execution (BPEL) Web Services Framework SCA – Expose business logic as a series of services, which assembled together create solutions that serve a particular business need. These composite applications can be composed of newly developed services and business logic from existing systems, reused as part of a composition. SCA provides a model both for the composition of services and for the creation of service components Integration Framework Transformation, Mediation, Enterprise Integration Patterns Reliable Messaging JMS/STOMP/NMS/MQTT, publish-subscribe/point-2-point, store and forward 23 Riftsaw utilises the WS-BPEL 2.0 standard, which is an XML-based language for defining business processes that orchestrate web services. Drools is a business rule management system (BRMS) with an inference based rules engine, using an enhanced implementation of the Rete algorithm. JBoss Fuse ESB Camel is a versatile integration CXF helps you build and develop framework based on known Enterprise services using frontend programming Integration Patterns.. Camel allows APIs, like JAX-WS and JAX-RS. These you to define routing and mediation services can speak a variety of protocols rules in a variety of domain-specific such as SOAP, XML/HTTP, RESTful languages, including a Java-based HTTP, or CORBA and work over a Fluent API, Spring or Blueprint XML variety of transports such as HTTP, JMS Configuration files, and a Scala DSL. or JBI. ActiveMQ fast, lightweight messaging broker that supports a variety of cross language clients and Protocols from Java, C, C++, C#, Ruby, Perl, Python, PHP Services Framework (SCA) Composites & Components • • • • The basic artifact is the Composite, which is the unit of deployment for SCA and holds Services, which can be accessed remotely. A composite contains one or more Components, Components contain a business function. Components offer their function as services, which can either be used by other components within the same module or which can be made available for use outside the module through Entry Points. Components may also depend on services provided by other components — these dependencies are called References. Services and references allow a component to interact with other components, while the implementation provides the actual logic for providing and/or consuming services. 24 Macro-composition with SCA • Component based Implementation • Independent of languages, interfaces and communication protocols • Higher level architectural view • Easily supports heterogeneuos services 25 JBoss Data Virtualization JBoss Data Virtualization – Use Cases 27 Data Virtualization: Turn Fragmented Data into Actionable Information DATA CONSUMERS BI Reports Data Virtualization software virtually unifies data spread across various disparate sources; and makes it available to applications as a single consolidated data source. The data virtualization software implements 3 steps process to bridge data sources and data consumers: Easy, Real-time Information Access Virtual Consolidated Data Source • Connect: Fast access to data from diverse data sources Virtualize Abstract Federate Data Virtualization Software • Compose: Easily create unified virtual data models and views by combining and transforming data from multiple sources. • Consume: Expose consistent information to data consumers in the right form thru standard data access methods. SOA Applications • Consume • Compose • Connect Oracle DW SAP XML, CSV & Excel files DATA SOURCES 28 Salesforce.com Siloed & Complex Turn Siloed Data into Actionable Information Mobile Applications ESB, ETL BI Reports & Analytics SOA Applications & Portals Design Tools Standard based Data Provisioning JDBC, ODBC, SOAP, REST, OData Consume Easy, Real-time Information Access Dashboard Optimization Compose Unified Virtual Database / Common Data Model Data Transformations Caching Virtualize Abstract Federate Security Connect Native Data Connectivity Metadata Siloed & Complex Hadoop NoSQL Cloud Apps Data Warehouse & Databases 29 Mainframe XML, CSV & Excel Files Enterprise Apps Users create data models based on metadata: • • • • Imported from data sources Supplied via DDL Provided by Engine Specified by user Models are packaged in a Virtual Database (VDB) 30 Virtual Databases (VDBs) are deployment archives similar to .WAR. Source Models View Models VDBs contain VDB Internals • • Connector Binding Properties • Manifesto Info • Source metadata and models View metadata and models System metadata Connection information, which is bound to sources at deployment time VDBs are deployed to the query engine 31 Data Consumer Apps Query Engine is core data virtualization functionality: Federating relational query engine. Rule and cost based optimizer, advanced query planner, caching, hint processing. JDBC API C1 VDB C2 Connector Binding (1) Connector Binding (2) Query Engine hosts VDBs, binds to data sources, performs query execution and results processing. Query Engine DB Oracle DB SQL Server 32 JBoss EAP Applications DSDS Security JAAS The server runtime environment is JBoss EAP. The Query engine is hosted in JBoss EAP and uses key container-provided services: Transaction Manager Embedded DS xxx-ds.xml • • • JDV Runtime Engine Admin / AdminShell Admin Socket Transport JDBC JDBC Socket Transport ODBC ODBC Socket Transport VDB VDBs yyy-ds.xml • • DS BufferMgr Threading Local Caches etc. JCA Profile Service Translators RHQ DS 33 zzz-ds.xml Transaction manager JAAS security framework Container managed data sources EAP management infrastructure EAP deployment The Server exposes views /services to consumers and managed connections and connection pools for data sources. Business Dashboard Quickly Visualize your Data 34 35 Vi aspetto al JBoss User Group http://tech.groups.yahoo.com/group/JBUG-milano/ Giovanni Pirola [email protected] 36
© Copyright 2024 ExpyDoc