25
1 Gigapaces PAAS For Cloud Based Java Applications Karan Nangru Xebia IT Architects

GigaSpaces PAAS For Cloud Based Java Applications

Embed Size (px)

DESCRIPTION

Session presented at the 2nd IndicThreads.com Conference on Cloud Computing held in Pune, India on 3-4 June 2011.http://CloudComputing.IndicThreads.com

Citation preview

Page 1: GigaSpaces PAAS For Cloud Based Java Applications

1

Gigapaces PAAS For Cloud Based Java Applications

Karan Nangru

Xebia IT Architects

Page 2: GigaSpaces PAAS For Cloud Based Java Applications

2

What is GigaSpaces XAP?A software platform enabling IT organizations to address all mission-critical web server,

application server, messaging and data grid requirements with a single product!!!

• Single model and process for IT• Application Deployment

• Replication & failover

• Scaling

• Ongoing monitoring and management

• Virtual deployment environment

Page 3: GigaSpaces PAAS For Cloud Based Java Applications

3

The Tier Based Architecture

Page 4: GigaSpaces PAAS For Cloud Based Java Applications

4

Cache

A Typical Tier Scenario

Page 5: GigaSpaces PAAS For Cloud Based Java Applications

5

The Tier Based Architecture

Tier integration impacts scalability, performance, and reliability

Page 6: GigaSpaces PAAS For Cloud Based Java Applications

6

The Gigaspaces Architecture

A single model for full life cycle enterprise systems

Page 7: GigaSpaces PAAS For Cloud Based Java Applications

7

From J2EE to XAPComponent J2EE XAP

Persistency JPA Hibernate, JPA

Messaging JMS,MDB JMS, Polling/Notify Container , Native Messaging API

Security JAAS, SSL Spring Security, SSL

Web Session Management HttpSession HttpSession (via Jetty)

Transaction Management JTA Spring Transaction via Jini Transaction Manager

Data Access JDBC , Session Bean, Entity Bean

JDBC, Space, JPA

Remoting EJB, IIOP, RMI Spring remoting over LRMI

Web Servlet, JSP Servlet, JSP (via Jetty)

Packaging and deployment ear , war jar , war

Contexts and Dependency Injection

JSR 299 Spring IOC

System Management JMX JMX , SNMP, Native Admin API

Java Naming and Directory Service

JNDI Jini Lookup Service

Page 8: GigaSpaces PAAS For Cloud Based Java Applications

8

What Else….• Elastic

Scale every tier up/down , in/out

SLA based

• Distributed Service Executors

Native map-reduce API

• Native Document Store

XML , JSON data type support

• Interoperability

Native .Net and C++ API

• Scripting

Groovy ,Jruby

• Developer Tools

Maven, Hibernate , ant , eclipse , logging , support

Page 9: GigaSpaces PAAS For Cloud Based Java Applications

9

Scope of this session…..

• Space Based Architecture

• Scaling

• Web Application Deployment

• HTTP Session Management

• Remoting

• Implicit Map Reduce

• Messaging and Processing

• Polling and Notify Containers

9

Page 10: GigaSpaces PAAS For Cloud Based Java Applications

10

Space Based Architecture – Scaling

Diagram 1. Car wash, the tier based way: a different warehouse for each step in the process.

Page 11: GigaSpaces PAAS For Cloud Based Java Applications

11

Space Based Architecture – The Unit System

Diagram 2. An all-in-one "washing unit" containing soaping, watering and drying services.

Page 12: GigaSpaces PAAS For Cloud Based Java Applications

12

Space Based Architecture – Multiple Units

Diagram 3. Scaling the system by adding more "car washing units"

Page 13: GigaSpaces PAAS For Cloud Based Java Applications

13

Space Based Architecture – A GigaSpaces Processing Unit

Diagram 4. A Processing Unit with 3 services collocated with a space.

Page 14: GigaSpaces PAAS For Cloud Based Java Applications

14

Example Set 1

Page 15: GigaSpaces PAAS For Cloud Based Java Applications

15

Web application Deployment• GigaSpaces support WAR files deployment natively.

- JSP , servlet

• WAR files instantiate Jetty transparently.

- Popular open source web engine used with large scale systems

• Port management handled transparently.

• Web application scaling handled transparently.

• HTTP session replication handled transparently.

Page 16: GigaSpaces PAAS For Cloud Based Java Applications

16

HTTP Session Management

Page 17: GigaSpaces PAAS For Cloud Based Java Applications

17

Example Set 2

Page 18: GigaSpaces PAAS For Cloud Based Java Applications

18

Remoting

• GigaSpaces Remoting allows direct invocation of remote services in synchronous and asynchronous manner.

Page 19: GigaSpaces PAAS For Cloud Based Java Applications

19

Remoting• GigaSpaces Remoting supports parallel invocation of

multiple service instances.

- Implicit map-reduce

The First phase involves the Service invocation The Second phase involves reducing the results retrieved from the Services

Page 20: GigaSpaces PAAS For Cloud Based Java Applications

20

Example Set 3

Page 21: GigaSpaces PAAS For Cloud Based Java Applications

21

Messaging and Processing - Polling Container

• A JMS Queue equivalent consumer• Support One to One messaging model

Write

Page 22: GigaSpaces PAAS For Cloud Based Java Applications

22

Example Set 4

Page 23: GigaSpaces PAAS For Cloud Based Java Applications

23

Messaging and Processing – Notify Container

• A JMS Topic equivalent consumer• Support One to Many messaging model

Write

Page 24: GigaSpaces PAAS For Cloud Based Java Applications

24

Example Set 5

Page 25: GigaSpaces PAAS For Cloud Based Java Applications

25

@references - Gigaspaces