160 likes | 345 Views
GigaSpaces – PaaS for Public & Private Clouds. GigaSpaces: Jim Liddle: Sales & Operations Director for UK, Eire & Scandinavia. What would Organisations really like to do ?. GigaSpaces solution: Middleware as a Service. All resources are shared Machines get virtualized
E N D
GigaSpaces – PaaS for Public & Private Clouds GigaSpaces: Jim Liddle: Sales & Operations Director for UK, Eire & Scandinavia
GigaSpaces solution: Middleware as a Service All resources are shared Machines get virtualized Middleware gets virtualized Auto-balanced, Managed Business Tier Virtualized Application Data Tier Web Tier Load Balancer Virtualized Web Virtualized Data Virtualized Messaging Messaging Tier Virtualized Machines
GigaSpaces Middleware Core Services • Core PaaS Services (Middleware as a Service) • Data as a Services • Messaging as a Services • Parallel Processing as a Service (Map/Reduce) services • Web Support Services • Session high availability • Load balancer integration • Integration with web container • Data Center Support Services • Application cluster automation • Trouble shooting for distributed application • Middleware Security • Middleware real time monitoring
GigaSpaces vSphere integration Multi Tenant Application Provisioning Application Deployment Package 3 - Manage 1- Install 2 - Deploy Provision vSphere - IaaS Application Repository App A App B
Our Approach to IaaS Vendors .Net Java/Spring Middleware Services Platform as a Service Middleware as a Service SQS Elastic MapReduce SimpleDB MapReduce DataGrid Messaging S3 Auto Scaling Virtualization and Infra API EC2 Mgmt & Monitors vSphere Mgmt & Monitors Amazon Data Centers (Public)
Create a Data Grid Min (10G), Max (100G) Create a Data Grid Min (10G), Max (200G) Load data Load data Middleware as a Service • On Demand • Automatic provisioning • Multi-tenant • Use shared resources • Auto-scale • Span across more machines • Down scale when needed • Always on • Handle fail-over automatically Shared Pool of Virtual Machines
Services API • API Façade support data, messaging and parallel processing • All API share the same clustering, high availability, deployment, licensing,.. • Support Java, .Net App • "All problems in computer science can be solved by another level of indirection" (Butler Lampson)
Shared cluster –Services API (Cont) Remoting abstraction on top of the shared cluster Transparent to the application You get: Location transparency Dynamic service discovery Sync. / async. invocations Cluster wide invocations (Map/Reduce) Data affinity Automatic method call failover
Standard Unmodified Stateless Web Application Web Container/App Server Web Container/App Server Database Network Load-Balancer • Typical Architecture • Network load balancer • Web/App containers • DB Server • Challenges in dynamic env. • Static pre-provisioning • Fixed IPs • Reliance and shared physical storage • Requires manual fixed changes • Downtime • Labor intensive
Auto Balancing in action (1/2) Data Grid Database Web Service
Auto Balancing in action (2/2) Auto Rebalancing New Machine
Summary – Best Practices Avoid radical change, enabling a gradual process GigaSpaces supports traditional on-premise and public/private cloud from the same product & application Choose an architecture supporting linear scalability Even if you application does not need to scale today, what about tomorrow ? Minimize vendor lock-in Enable application portability and freedom of choice of: Cloud / Infrastructure provider, web container, programming language, database Minimize API lock in: Use of standards API Abstractions – when standards are not available Future proof your application Don’t make decision today, but be ready to make one without major effort Avoid long-term commitment – choose the right licensing model
The Pet Clinic • Petclinic • Popular example • Standard web application stack. • Demo outline: • 1. Unmodified Pet-Clinic • Dynamic web scaling • HTTP session resiliency • 2. Modified Pet Clinic • Reduce database bottlenecks • Superior performance (100x times) • Dynamic linear scalability – grow and shrink based on application needs • Use Map/Reduce to parallelize the application
About GigaSpaces Technologies Enabling applications to run a distributed cluster as if it was a single machine… 75+ Cloud Customers Among Top 50 Cloud Vendors 300+ Direct Customers 16 16