- unibo.it · pdf file oracle middleware elastic cloud: ... oracle weblogic server grid ......
TRANSCRIPT
<Insert Picture Here>
Oracle Middleware Elastic Cloud: Modernizzare i Datacenters tramite
strategie di Application Consolidation e tecnologie per Extreme Java
Performance
Paolo RamassoMaster Principal Sales Consultant @ Oracle Italy
The following is intended to outline our general product
direction. It is intended for information purposes only,
and may not be incorporated into any contract. It is not
a commitment to deliver any material, code, or
functionality, and should not be relied upon in making
purchasing decisions.
The development, release, and timing of any features
or functionality described for Oracle‟s products remains
at the sole discretion of Oracle.
Important Challenges Facing IT Today
Deploy and run
apps with agility
Do it all
efficiently
Scale with growth
while preserving
quality of service
BUT MOST OF ALL SAVE MONEY
What Is Cloud Computing?Setting up and running software over a network
Traditional Software
Deployment
OS
Middleware
Application
Cloud Computing
Deployment
Deployment
PortalSpecify and procure
hardware
Configure hardware
Deploy hardware
Configure and
deploy supporting
software
Configure and
deploy application
Add hardware and
reconfigure stack as
demand grows
Set up software
through Web
interface
Capacity
adjusts as
demand
changes
Enabled by:
SOA/Shared ServicesGrid/Dynamic Resourcing
VirtualizationManagement Automation
Service
Cloud Can Be Provided at Different LevelsThe more cloud provides, the less to build per app (but the less
flexibility!)
Application(SaaS) e.g. Oracle
On DemandBuilt by Cloud
Customer
Providedby CloudPlatform
(PaaS) e.g. Google App Engine
Infrastructure(IaaS) e.g. Amazon EC2
Cloud Computing Can Be Public or Private
Oracle On-DemandSalesforce.com
Google App EngineAmazon EC2
Corporate Cloud
Services
Internet Corporate Network
Public Cloud:
• No infrastructure setup
• Minimal management
• Lower upfront costs
Private Cloud:
• Greater control
• Easier to integrate
• Lower total costs
• None of the disadvantages
of public cloud
Both offer:
• High efficiency
• High performance
• High availability
• Elastic capacity
Private PaaS is a Natural Strategy for Enterprises
• Cloud because
- Agility
- Quality of service
- Efficiency
• Private because
- Security
- Control (particularly over QoS)
- Cost structure
- Easiest evolution of existing
expertise and practices
• Platform (PaaS) because
- Best balance between minimizing
what users build and maximizing
their flexibility and control
Private Cloud
PaaS
Private PaaS Lifecycle
Self-Service InterfaceShared Components
• Set up PaaS
• Set up shared
components
• Set up self-
service portal
IT
App Developer
App Users
1. Set Up Cloud
2. Build App
3. Use App
4. Scale up/down
App
• Assemble app
using shared
components
• Deploy through
self-service
• Adjust capacity
based on policies
• Monitor via self-
service
App Owner 5. Chargeback• Meter usage
and charge
back to app
owners or
departments
Oracle VM
Oracle Enterprise Linux
Oracle Database
Oracle Fusion Middleware
Oracle Enterprise Manager
Enter Cloud Computing(You may have heard of it…)
Cloud Technology Enabler Runtimes
Consolidation
Acceleration
Elasticity
Oracle Delivers Integrated Systems
Exadata: World’s Fastest Database MachineSoftware and hardware engineered together for business data
Introducing: Oracle Exalogic Elastic CloudSoftware and hardware engineered together for business logic
Oracle Exalogic Elastic CloudWorld’s Best Foundation for Cloud
• Fastest Java Performance
- Application performance improved up to 10x
• Foundation for Mission Critical Cloud
- Best for application consolidation
- Best for elastic capacity on demand
• Engineered System
- Lowest cost to deploy and operate
- Fastest path to production
Exalogic: Unbeatable Hardware
Oracle WebLogic Server Grid
• 30 compute servers
• 360 cores
• 2.8 TB DRAM
• 960 GB solid-state disk
InfiniBand Network
• 40 Gb/sec InfiniBand fabric
• 1.2 microsecond latency
• 10 Gigabit Ethernet to
datacenter
Integrated Storage
• System images
• Application files
• Patch centrally
• Clustered for HA
• 40 TB SAS disk
• 4 TB read cache
• 72 GB write cache
Oracle Exalogic Delivery and Support ModelAssembled, Tested and Delivered
CustomerPremises
Software and Support
Oracle Hardware and Services
http://www.oracle.com/...
• System Installation Service
• Customer Data andDevice Retention
• Operations Managementand Solution Support Center
• Technology Services
• Deploy Oracle softwareas needed
• My Oracle Support
• Enterprise Managerautomated services
Scale from Single Application to
Enterprise Cloud
Quarter Rack
Half RackFull Rack
Multi-rack
• Field Upgradable
Mission-Critical Cloud
• Ideal for application consolidation
Ideal for complex workloads
Built-in application isolation
and security with
WebLogic domains
Built-in application isolation
and security with
InfiniBand partitions
and virtual lanes
Runs any standard application
with elastic capacity
on demand
Fully HA - fault tolerant
Custom
3rd PartyCICS/
COBOL
Logs
CRM
BatchJobs
ERP
SOA
IDM
E20
Custom
E20Content
3rd Party
Oracle Exalogic Elastic Cloud
JRockit GC Latency Management
0
15
30
45
60
75
90
105
120
0 2000 4000 6000 8000 10000 12000 14000 16000 18000
During Low Load: GC spikes
and occasional timeouts visible
During High Load: GC pauses can
result in unacceptable response times
0
15
30
45
60
75
90
105
120
0 2000 4000 6000 8000 10000 12000 14000 16000 18000
Traditional Java
JRRT Makes garbage collection deterministic.
Allowing for the guarantee of SLAs.
JRockit Real Time
State of the JVM
• As of the Sun acquisition, Oracle has two mainstream JVMs
- HotSpot
• Versatile, Market share leader, High quality and performance
- JRockit
• Specialized - Focus on Servicability, server-side performance and the Oracle stack
• Basis of value-adds like JRMC, JRRT and JRVE
• Both are highly strategic to Oracle
• Both are based on the Sun JDK (class libraries etc) the only difference is the JVM
Future DirectionConvergence
• Project “Fusion VM”
- Merge into one codebase with the best of both worlds
- Continue to offer JRMC/JRRT/JRVE value-adds separately on
top of the converged JVM
• HotSpot was selected as the base because of the broad
developer mindshare
• It‟s an Oracle Strong Commitment!!!
WebLogic Architectural View
• What is it?- Central configuration controller for the entire
domain
• What else does it do?- Hosts the Administration Console
- Enables you to start and stop servers from a central location
- Enables you to migrate servers and services within the domain
- Enables you to deploy applications within the domain
• Guidelines:- There must be exactly one* Administration
Server in domain
- An Administration Server controls only one domain.
- For production use, we recommend not hosting application logic or resources on the Administration Server
*The Administration Server does not need to run at all times, but is required for making
configuration and deployment changes to a running domain.
Admin Server
Managed Servers
config.xml
Admin Console
Fastest Java Performance - 1
• Network I/O optimized for
InfiniBand 3x throughput over 10Gb/sec Ethernet;
50% latency
Up to 10x increase in network
performance
• Buffer copies eliminated From more than four to zero
• Larger packet size used to
reduce network overhead 64K instead of 4K packets
Host Channel Adapter (Driver)
InfiniBand Core
IPoIB
TCP/IPSockets Direct
Protocol
Exalogic Software
Fastest Java Performance - 2
Fastest Java Performance - 2
• WebLogic Workload Scalability Parallel processing of cluster communication via multiplexed
connections
Parallel dispatch of incoming messages
New thread scheduling algorithm optimized for Exalogic
• 50% Higher Throughput and Half the Latency
Fastest Java Performance - 3
• GridLink for Exadata Integrated Exalogic and Exadata
clusters
Dynamic load balancing of requests, to
appropriate RAC node
SQLNet over native InfiniBand protocol
(SDP) maximizes JDBC performance
Transaction affinity to appropriate RAC
node to maximize locality
Instant failover in case of RAC
changes
3x increase in OLTP performanceAcross-the-Board
Engineered Improvements
Fastest Java Performance – The Numbers
On Single Exalogic Rack
Alternative
Alternative
Alternative
• Internet Applications- 12x improvement
- Over 1 Million HTTP
requests/sec.
• Messaging Applications- 4.5x improvement
- Over 1.5 Million messages/sec.
• Database Applications- 1.4x improvement
- Almost 2 million JPA
operations/sec.
Exalogic
Exalogic
Exalogic
Self-Tuning and Work ManagersWebLogic's Self-Tuning Thread Pool
Network Socket Handlers
(“Muxers”)
Asynchronously dispatched work
from WebLogic kernel, subsystem,
or application
Request Queue
Self TuningThread Pool
1. Monitor rate of
request processing
2. Adjust thread pool
size accordingly
• Active• Standby• Stuck• Hogging
Side By Side DeploymentZero Down Time Application Deployment
• Application versions
run side-by-side in
same JVM
• Controlled test mode
and automated
rollback
• Automatic retirement:
graceful quiescence or
timeout
• Ensures continuity of
in-flight transactions
Managed WebLogic Server
Single Java VM
Existing External Client Connections
New External Client Connections
New Application
VersionRetiring Application
Version
Administrative Test Client Connections
Test First inAdministrative
Mode
Traditional Scale-Out Approaches…
#1. Avoid the challenge of maintaining consensus
- Opt for the “single point of knowledge”
#2. Have crude consensus mechanisms, that typically
fail and result in data integrity issues (including loss)
Client + Server Model(Hub + Spoke)
Master + Worker Model(Grid Agents)
Active + Passive(High Availability)
The Coherence Approach…
• Traditional scale-out approaches limit
- Scalability, Availability, Reliability and Performance
• In Coherence…
- Servers share responsibilities (health, services, data…)
- No SPoB
- No SPoF
- Massively scalable by design
• Logically servers form a “mesh”
- No Masters / Slaves etc.
- Members work together as a team
WebLogic Server with Coherence*WebSeparate traffic processing, session management
Engine Tier State Tier
Coherence
Sessions and Cache
RDBMS
Coherence
Sessions and Cache
Coherence
Sessions and Cache
Coherence
Sessions and Cache
WebLogic Server
Servlet EJB JDBC
WebLogic Server
Servlet EJB JDBCLoad Balancer
Oracle Web Tier
– Web Cache
HTML
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
The Distributed Scheme
• Sophisticated approach for Clustered Caching
• Why:
- Designed for extreme scalability
• How:
- Transparently partition, distribute and backup cache entries
across Members
- Often referred to as „Partitioned Topology‟
• Configurable Expiration Policies:
- LFU, LRU, Hybrid (LFU+LRU), Time-based, Never,
Pluggable
The Distributed Scheme
The Distributed Scheme
The Near Scheme
• A composition of pluggable Front and Back schemes
- Provides L1 and L2 caching (cache of a cache)
• Why:
- Partitioned Topology may always go across the wire
- Need a local cache (L1) over the distributed scheme (L2)
- Best option for scalable performance!
• How:
- Configure „front‟ and „back‟ topologies
• Configurable Expiration Policies:
- LFU, LRU, Hybrid (LFU+LRU), Time-based, Never,
Pluggable
The Near Scheme
The Near Scheme
What is Coherence*Extend?
• Allows applications to harness the power of the
Coherence data grid without taking on the
responsibilities of being a “good citizen” of the grid
• No in-process transport
• No cluster and service membership
• No data ownership
PIF/POF
• POF (Portable Object Format) is the language
independent serialization format used by
Coherence*Extend
• PIF (Portable Invocation Format) is a language
independent remote method invocation. All
Coherence*Extend protocol messages are PIFs (e.g.
GetRequest) which are nothing more than a POF
preceeded by a conversation identifier (a POF integer
value)
Credit for the name belongs to Gene Gleyzer: The phonetic origin of PIF-POF is from
Russian language comic strips, in which “piff-paff” (pronounced “peef-puff”) is the equivalent
of the English “bang-bang” – the sound of a gun.
QueryMap Interface
Features : Observable Interface
Features : InvocableMap Interface
Eclipse Persistence Services Project (EclipseLink)
DBWSSDOEISMOXyJPA
XML Data Legacy SystemsDatabases
Java SE Java EE OSGi Spring ADF
EclipseLink RI for Java EE 6
TopLink Grid & Coherence Cache
Application
EntityManager
EntityManagerFactory
L1 Cache
Application
EntityManager
EntityManagerFactory
L1 Cache
Coherence
Grid Cache—Reading Objects
1. Queries are performed using
JPA em.find(..) or JPQL.
2. A find() will result in a get()
on the appropriate
Coherence cache. If found,
Entity is returned.
3. If get() returns null or query is
JPQL, the database is
queried with SQL.
4. The queried Entities are put()
into Coherence and returned
to the application.
Grid Cache—Writing Objects
1. Applications persist Entities
using standard JPA and
commit a transaction.
2. The new and/or updated
Entities are inserted/updated
in the database and the
database transaction
committed.
3. If the database transaction is
successful the Entities are
put() into Coherence which
makes them available to all
cluster members.
Grid Read—Reading Objects
1. Queries are performed using JPA em.find(..) or JPQL.
2. JQPL will be translated to a Coherence Filter and used to query results from Coherence. A find() will result in a get() on the appropriate Coherence cache.
• The database is not queried by EclipseLink.
• If Coherence is configured with a CacheLoader then a find() may result in a SELECT, but JQPL will not.
Grid Read—Writing Objects
1. An application commits a
transaction with new Entities
or modifications to existing
Entities.
2. EclipseLink issues the
appropriate SQL to update
the database and commits
the database transaction.
3. Upon successful commit, the
new and updated Entities are
put() into Coherence.
Grid Entity—Reading Objects (Same as Grid
Read)
1. Queries are performed using JPA em.find(..) or JPQL.
2. JQPL will be translated to a Coherence Filter and used to query results from Coherence. A find() will result in a get() on the appropriate Coherence cache.
• The database is not queried by EclipseLink.
• If Coherence is configured with a CacheLoader then a find() may result in a SELECT, but JQPL will not.
Grid Entity—Writing Objects
1. An application commits a
transaction with new Entities
or modifications to existing
Entities.
2. EclipseLink put()s all new
and updated Entities into
Coherence.
3. If a CacheStore is
configured, Coherence will
synchronously or
asynchronously write the
changes to the database,
depending on configuration.
Coherence 3.7 What’s New!
Theme Features
Ease Of Use • Automatic Proxy Discovery for Clients (WKA for *Extend).
• Client Connection Information now available via JMX.
• Clients Automatically Attempt to Reconnect
• Dynamic Load Balancing of Client Connections (*Extend).
• XML Schemas (XSD) for Configuration.
Integration • Load Balancer Integration (F5).
• Native Coherence*Web Glassfish Integration.
RASP • Query Monitoring (via JMX).
• Partition-Level Transactions.
Innovation • Elastic Data (Storage with Flash Support).
© 2011 Oracle Corporation
Coherence 3.7
Elastic Data
Overview
- New Storage implementation for Server-Side Caches.
- Seamless and efficient bridging between memory and disk.
- Transparent Storage (with massive capacity)
© 2011 Oracle Corporation
Innovation
RAM Disk
Elastic Data
Coherence 3.7
Elastic Data
Benefits
- Dramatic increase in data capacity
(4x more objects in ram)
- Greater cache capacity with significantly less servers.
(100GB of external data per Cluster node)
- Very high performance, low latency.
(pure memory-based performs on same or better than legacy
default implementation = garbage collector friendly)
- Massively concurrent reads and writes (to external storage).
(compared with legacy Coherence)
© 2011 Oracle Corporation
Innovation
Coherence 3.7
Elastic Data
How to Configure:
<distributed-scheme>
<scheme-name>elastic-data</scheme-name>
<service-name>DistributedCacheElasticData</service-name>
<backing-map-scheme>
<ramjournal-scheme/>
</backing-map-scheme>
</distributed-scheme>
© 2011 Oracle Corporation
Innovation
Coherence 3.7
Elastic Data
Configuring Ram Journal Size
- Percentage of Heap:
-Dtangosol.coherence.ramjournal.size=25%
- Specific Size:
-Dtangosol.coherence.ramjournal.size=12GB
© 2011 Oracle Corporation
Innovation
Cloud Technology Enablers Management
Comprehensive Mgmt. of Oracle EcosystemOpen and Extensible
Middleware
Oracle Enterprise Manager
Databases
• Oracle Database• Oracle Exadata• Oracle TimesTen• IBM DB2 • MS SQL Server• MySQL• Sybase
Storage
• Check Point Firewall
• Juniper Netscreen
Firewall
• F5 BIG-IP
• Nortel Alteon Switch
• NetApp Filer
• EMC Celerra,
Clariion, Symmetrix
• Pillar Axiom
• Onaro SANScreen
OperatingSystems
Servers
• Dell PowerEdge
• Dell Change Auto.
• Oracle EnterpriseLinux
• All Unix
• Microsoft
• MVS
Virtual Servers
• Oracle VM
• VMWare
• Oracle Fusion Mware.
• Oracle WebLogic
• IBM WebSphere
• MS .NET
• MS BizTalk Server
• MS IIS
• MS Commerce Server
• MS ISA Server
• MS Active Directory
• JBoss AS
• IBM MQ Series
• Citrix Pres. Server
• Blue Lane PatchPoint
• Apache Tomcat
NetworkApplications
• Oracle Applications
• Oracle Beehive
• Oracle Comm & BRM
• Microsoft Exchange
Serv
ice D
esk C
on
necto
rsR
em
ed
y, HP, S
ieb
el, P
eo
ple
So
ftE
ven
t C
on
necto
rsM
icro
so
ft,
HP, IB
M
Enterprise Manager Grid Control
Portals
HTTP/S
Application ServerHTTP/S
Collaboration Suite/Ebus suite
/Application Server
HTTP/S
HTTP/S
Html Console
Management Repository
HTTP/S
HTTP/S
Fir
ew
all
Mobile Device
Management Service
Thin JDBC
Oracle 8i
Oracle9i
Oracle 10g
What’s New in WebLogic Server
Management
• Enhanced User Experience for Discovering WebLogic
- Remote Management Agents no longer require local WebLogic jar files
- Monitor each managed server independently
- Perform WebLogic discovery via EMCLI
- Continuous rediscovery of WebLogic Domain via predefined job
• Enhanced Interface for Managing Fusion Middleware
- ADF-based interface
- Navigation tree on left controls details displayed on right
- Customize home page views via drag and drop of regions
- Context sensitive menus
- In-context drilldowns to Fusion Middleware Control and WebLogic Server
Administration Console
JVM DiagnosticsIntegrated Java Thread/Method Diagnostics
• Contextual drill-down directly
from Request Monitoring
Pages, Application
Dependency Pages and
Performance pages into JVM
Diagnostics provides true end-
to-end root cause analysis
• Deep JVM diagnostics with metrics related to the heap stack and allowing for traces
• CPU and memory can be inspected and correlated with the active threads and locks (DB, thread, etc)
Coherence Cluster Monitoring
• Simple Discovery and monitor Coherence Cluster as single
target
• Complete visibility of the cluster
• Identify Hotspots in the cluster
Problem areas : weak nodes, node with max queue size and memory
Coherence Node Monitoring
• Top and weak Nodes based
on performance
• Search nodes
• Key performance metrics
• Stop node, reset statistics
Define Metric Thresholds
Define Warning threshold
Define Critical threshold
Metric alert
May automatically send an email or SMS or SNMP trap
Real time configuration changes
Node configuration
Change for a single or all
nodes
Provision Coherence
• Automate manual tasks
- Create new cluster
- Extend existing cluster by adding nodes
• Store Coherence binaries, configuration files, scripts in software library
• Create multiple nodes simultaneously
• Auto discovery of newly added nodes and clusters
Conclusion
Exalogic: World’s Best Foundation for CloudHardware and Software Engineered to Work Together
Building the 21st Century Datacenter
For More Information
search.oracle.com
exalogic
or
www.oracle.com / exalogic