Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop March 2012
Upcoming SlideShare
Loading in...5
×
 

Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop March 2012

on

  • 2,374 views

OSGi DevCon 2012 - OSGi Cloud Workshop. Presentation by Gunnar Wagenknecht (Ageto) - "Eclipse Gyrex OSGi based PaaS-Like Programming Stack"

OSGi DevCon 2012 - OSGi Cloud Workshop. Presentation by Gunnar Wagenknecht (Ageto) - "Eclipse Gyrex OSGi based PaaS-Like Programming Stack"

Statistics

Views

Total Views
2,374
Views on SlideShare
2,374
Embed Views
0

Actions

Likes
1
Downloads
46
Comments
0

0 Embeds 0

No embeds

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop March 2012 Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop March 2012 Presentation Transcript

  • Eclipse GyrexOSGi based PaaS-like programming stack PHP InternetOfThings Native iPad App WebApp Device App Mobile Apps LoadBalancer REST REST REST REST REST REST REST REST API API API API API API API API Gyrex Gyrex Gyrex Gyrex Gyrex Gyrex Gyrex Gyrex Node Node Node Node Node Node Node Node ZK ZK ZK • coordinates the cluster Node Node Node • Holds the complete application- and cluster configuration ZK Cluster data repositories
  • GYREXlightweight application stack for building server applications using EclipseRT technologies.o built-in clusteringo built-in web-based administration UIo built-in multi tenancyo enhancements for professional maintenance - centralized logging - cluster provisioning UI
  • Stacko Equinoxo Jettyo p2o ZooKeepero Solro Logback,o Cassandrao Memcached
  • GYREX Components Logging Metrics RAP Repositories(JDBC, EclipseLink, NoSQL) Debug/Trace Console Monitoring Admin HTTP Applications (Jetty, OSGi HttpService) Clustering & Coord. Configuration (ZooKeeper) (Eclipse Preferences API) Provisioning Processing (p2) (Eclipse Jobs API) Contextual Runtime Cloud Equinox
  • GYREX Infrastructure Setup For a High Traffic Application with different frontends PHP InternetOfThings Native iPad App WebApp Device App Mobile Apps LoadBalancer REST REST REST REST REST REST REST REST API API API API API API API API Gyrex Gyrex Gyrex Gyrex Gyrex Gyrex Gyrex Gyrex Node Node Node Node Node Node Node Node p2 ZK ZK ZK • coordinates the clusterrepo Node Node Node • Holds the complete application- and cluster configuration data repositories ZK Cluster
  • GYREX Featureso light weight application stack PHP InternetOfThings Native iPad App WebApp Device App Mobile Appso fast 100% OSGi runtime LoadBalancer REST REST REST REST REST REST REST RESTo central cluster configuration API Gyrex API Gyrex API Gyrex API Gyrex API Gyrex API Gyrex Gyrex API Gyrex API Node Node Node Node Node Node Node Node through zookeeper ZK ZK ZK • coordinates the cluster Node Node Node • Holds the complete application- ando cluster aware job scheduling cluster configuration ZK Cluster data repositorieso multi tenant application supporto automated deployment through p2o support for cluster node roles, e.g. „job worker node“ and „api node“
  • ZooKeepero group/membership o tag nodes (“webserver”, “worker”) o associate bundle states and/or applications with tagso configuration (using OSGi Preferences)o distributed coordination o automatic failover of singleton services o node UP/DOWN events (EventAdmin)
  • HTTP & OSGiRequirements:o Grouping (“application”)o Multi-tenancy o Run multiple instances of an “application” on different URLs
  • HTTP & OSGipublic class MyWebApp extends Application { @Override protected void doInit() throws CoreException { getApplicationContext().registerServlet(…); getApplicationContext().registerResources(…); getApplicationContext().registerFilter(…); }}
  • HTTP & OSGiosgi> http <cmd> [args] ls … lists registered applications or providers defineApp … defines an application removeApp … removes an application definition setAppProperty … sets/removes an application property mount … mounts an application at the specified URL unmount … unmounts the specified URL start … starts an application stop … stops an application
  • Queue ServiceIQueueService { IQueue getQueue(..)}IQueue { void sendMessage(byte[] messageBody) List<IMessage> receiveMessages(..) IMessage consumeMessage(..) boolean deleteMessage(..)}
  • Thank Youfor your attention