Web Oriented Architecture at Oracle Emiliano Pecis Technology Business Unit
Agenda
What is WOA
WOA and the “Network effects” People is: the “Network effects” Tags: facebook blogger wikipedia digg twitter fickr networkeffects
People is: the “Network effects”
<Insert Picture Here> “ In other words, the Web model provides a single, open, and unified information architecture that is consistent, easily consumed, extremely scalable, securable, very reusable, resilient, and highly federated.” Dion Hinchcliffe Founder, Hinchcliffe & Co. Dion Hinchcliffe’s Blog
WOA – Web Oriented Architecture Tags: URI WOA REST web markup resources
WOA – All About Resources Tags: WOA REST resources URI SOA HTTP
WOA vs SOA Tags: WOA REST resources ws-* rich reach pox json HTT
WOA is a substyle of SOA but… Tags: WOA REST SOA top-down bottom-up ws rich reach
WOA and low case semantic web Tags: browser rest ajax microformats web3.0 semantic lowcase
WOA and (server side) scalability Tags: WOA REST datagrid database scalability
WOA and (server side) scalability Client side Server side Tags: WOA REST datagrid database scalability
Client side
Server side
WOA at Oracle
Oracle Software involved in WOA Tags: ensemble webcenter portal weblogic framework REST disc portlet dvt coherence datagrid
WebCenter Ensemble Portal Portlet Portlet Portlet Portlet Oracle WebCenter Ensemble Consumer Widgets Java App WSRP REST .NET App .NET Control .NET Control .NET Control .NET Control Static HTML Other App: Cold Fusion, PHP, Perl, Ruby on Rails, REST Tags: ALUI Ensemble rest woa php perl ruby on rails wsrp
Portal Framework REST Services & Disc Tags: Portal REST DISC Weblogic Portlet ajax dvt
HTTP Portlet Publishing Tags: http portlet publishing webloigc portal igoogle widget
Dynamic Visitor Tool Tags: dynamic visitor tool svt ajax portlet customization web20 portal
Data Grid
Oracle Coherence Data Grid Provides a reliable data tier with a single, consistent view of data Enables dynamic data capacity including fault tolerance and load balancing Ensures that data capacity scales with processing capacity Data Services Mainframes Databases Enterprise Applications Real Time Clients Distributed in Memory Data Management Oracle Coherence Data Grid Tags: http portlet publishing webloigc portal igoogle widget Web services Web services
Provides a reliable data tier with a single, consistent view of data
Enables dynamic data capacity including fault tolerance and load balancing
Ensures that data capacity scales with processing capacity
Data Grid Uses Caching Applications request data from the Data Grid rather than backend data sources Analytics Applications ask the Data Grid questions from simple queries to advanced scenario modeling Transactions Data Grid acts as a transactional System of Record, hosting data and business logic Events Automated processing based on event Tags: datagrid caching analytics transactions events
Coherence: A Unique Approach Members share responsibilities (health, services, data…) Completely Peer-to-Peer No Single Points of Bottleneck (SPOBs) No Single Points of Failure (SPOFs) Linearly scalable to hundreds of servers by design No Masters / Slaves etc. Data Grid members work together as a team Tags: datagrid coherence members nomasters noslaves spf spb peer-to-peer
Members share responsibilities (health, services, data…)
Completely Peer-to-Peer
No Single Points of Bottleneck (SPOBs)
No Single Points of Failure (SPOFs)
Linearly scalable to hundreds of servers by design
No Masters / Slaves etc.
Data Grid members work together as a team
Partitioned Topology : Data Access Data spread and backed up across Members Transparent to developer Members have access to all Data All Data locations are known – no lookup & no registry! Tags: datagrid coherence members data access
Data spread and backed up across Members
Transparent to developer
Members have access to all Data
All Data locations are known – no lookup & no registry!
Partitioned Topology : Data Update Synchronous Update Avoids potential Data Loss & Corruption Predictable Performance Backup Partitions are partitioned away from Primaries for resilience No engineering requirement to setup Primaries or Backups Automatically and Dynamically Managed Write-behind Tags: datagrid coherence membersdata update
Synchronous Update
Avoids potential Data Loss & Corruption
Predictable Performance
Backup Partitions are partitioned away from Primaries for resilience
No engineering requirement to setup Primaries or Backups
Automatically and Dynamically Managed
Write-behind
Partitioned Topology : Recovery Membership changes (new members added or members leaving) Other members, using consensus , recover and repartition automatically No in-flight operations lost, no availability gap! Some latencies (due to higher priority of asynchronous recovery) Information Reliability & Continuous Availability are the priorities Tags: datagrid coherence recovery data
Membership changes (new members added or members leaving)
Other members, using consensus , recover and repartition automatically
No in-flight operations lost, no availability gap!
Some latencies (due to higher priority of asynchronous recovery)
Information Reliability & Continuous Availability are the priorities
Features : Traditional Implements Map interface Drop in replacement. Full concurrency control. Multi-threaded. Scalable and resilient! get, put, putAll, size, clear, lock, unlock… Implements JCache interface Extensive support for a multitude of expiration policies, including none ! More than “just a Cache”. More than “just a Map” Tags: datagrid coherence jcache get put
Implements Map interface
Drop in replacement. Full concurrency control. Multi-threaded. Scalable and resilient!
get, put, putAll, size, clear, lock, unlock…
Implements JCache interface
Extensive support for a multitude of expiration policies, including none !
More than “just a Cache”. More than “just a Map”
Features : Observable Interface Real-time filterable (bean) events for entry insert, update, delete Filters applied in parallel (in the Grid) Filters completely extensible A large range of filters out-of-the-box: All, Always, And, Any, Array, Between, Class, Comparison, ContainsAll, ContainsAny, Contains, Equals, GreaterEquals, Greater, In, InKeySet, IsNotNull, IsNull, LessEquals, Less, Like, Limit, Never, NotEquals, Not, Or, Present, Xor… Events may be synchronous* trades.addMapListener( new StockEventFilter(“ORCL”), new MyMapListener(…)); Tags: datagrid coherence observable interface
Real-time filterable (bean) events for entry insert, update, delete
Filters applied in parallel (in the Grid)
Filters completely extensible
A large range of filters out-of-the-box:
All, Always, And, Any, Array, Between, Class, Comparison, ContainsAll, ContainsAny, Contains, Equals, GreaterEquals, Greater, In, InKeySet, IsNotNull, IsNull, LessEquals, Less, Like, Limit, Never, NotEquals, Not, Or, Present, Xor…
Events may be synchronous*
trades.addMapListener( new StockEventFilter(“ORCL”), new MyMapListener(…));
Features : InvocableMap Interface Execute processors against an Entry, a Collection or a Filter Executions occur in parallel (aka: Grid-style) No “workers” to manage! Processors may return any value trades.invoke( new EqualsFilter(“getSecurity”,“ORCL”), new StockSplit(2.0)); Aggregate Entries based on a Filter positions.aggregate( new EqualsFilter(“getSecurity”,“ORCL”), new SumFilter(“amount”)); Tags: datagrid coherence processors collection filter
Execute processors against an Entry, a Collection or a Filter
Executions occur in parallel (aka: Grid-style)
No “workers” to manage!
Processors may return any value
trades.invoke( new EqualsFilter(“getSecurity”,“ORCL”), new StockSplit(2.0));
Aggregate Entries based on a Filter
positions.aggregate( new EqualsFilter(“getSecurity”,“ORCL”), new SumFilter(“amount”));
What is the Business Impact? Reduce infrastructure & dev cost Leverage IT investment, Grid Computing Build vs. Buy Scale as you grow Dynamic, predictable application scalability aligned with business needs Increase customer satisfaction Better application performance Faster access to data, shorter response times Enable business continuity Continuous data availability and reliability Meet / exceed service level agreements Tags: datagrid coherence customers references
Reduce infrastructure & dev cost
Leverage IT investment, Grid Computing
Build vs. Buy
Scale as you grow
Dynamic, predictable application scalability aligned with business needs
Increase customer satisfaction
Better application performance
Faster access to data, shorter response times
Enable business continuity
Continuous data availability and reliability
Meet / exceed service level agreements
Typical Scenario & collaterals
Typical Scenario
About Software
Collaterals About WOA Gartner’s definition Dion Hinchcliffe’s blog Oracle WOA enablers Weblogic Portal REST API Weblogic Portal Disc Framework Weblogic Portal “Portlet Publishing” Weblogic Server support for Rest Weblogic Server support for pub-sub server Ensemble for WebCenter Interaction Oracle Datagrid Oracle Coherence Others Microformats for lowcase Semantic Web
About WOA
Gartner’s definition
Dion Hinchcliffe’s blog
Oracle WOA enablers
Weblogic Portal REST API
Weblogic Portal Disc Framework
Weblogic Portal “Portlet Publishing”
Weblogic Server support for Rest
Weblogic Server support for pub-sub server
Ensemble for WebCenter Interaction
Oracle Datagrid
Oracle Coherence
Others
Microformats for lowcase Semantic Web
Q & A
Presentación que realice en el Evento Nacional de Gobierno Abierto, realizado los ...
In this presentation we will describe our experience developing with a highly dyna...
Presentation to the LITA Forum 7th November 2014 Albuquerque, NM
Un recorrido por los cambios que nos generará el wearabletech en el futuro
Um paralelo entre as novidades & mercado em Wearable Computing e Tecnologias Assis...
Microsoft finally joins the smartwatch and fitness tracker game by introducing the...
Web Oriented Architecture using Oracle software ... It describes the Web Oriented Architecture and explains why it needs a datagrid at the backend ...
Read more
Oracle SOA Suite vereinfacht die Konnektivität durch die Bereitstellung einer einheitlichen ... Service-Oriented Architecture Technology Center . Oracle ...
Read more
about Web Oriented Architecture principles and Oracle Webcenter Sites ... Web Oriented Architecture for Oracle UCM By epecis on Jan 27, 2009.
Read more
... all within a single platform, Oracle SOA Suite 12c delivers ... Oracle Web Services Manager: Oracle SOA Suite for ... Oriented Architecture: 12 ...
Read more
Service-Oriented Architecture in Oracle E-Business ... SOA Gateway continues to support the Release 12.0 based Web Service Provider service enablement, ...
Read more
External links. Web Oriented Architecture at Oracle; Web Oriented Architecture at Gluecon 2010; WOA: Putting the Web Back in Web Services; Lean Development ...
Read more
1 Introduction to the Oracle Database. ... Service oriented architecture has ... is the standard way to identify and describe data on the Web. Oracle XML ...
Read more
Serviceorientierte Architektur (SOA, englisch service-oriented architecture), ... Service-orientierte Architekturen mit Web Services. 3. Auflage, ...
Read more
Add a comment