Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

A Scalable Stack for Modular Web Applications

1,122 views

Published on

Slides of talk given at Spark Conference:

Modularity reduces software complexity. In this session we’ll present an OSGi based technology stack that can be used for building scalable and modular web applications in Java with standards such as JAX-RS, dependency injection and websockets. We’ll also show you how HTML5 and JavaScript based frontends can be developed and deployment alongside the backend supporting its modularity.

Published in: Software
  • Be the first to comment

  • Be the first to like this

A Scalable Stack for Modular Web Applications

  1. 1. A Scalable Stack for Modular Web Applications Gunnar Wagenknecht (@guw)
  2. 2. InThis Session • LEARN what modern server applications need to feature • UNDERSTAND Eclipse Gyrex and selected technologies of this stack • EXPLORE a web application based on Eclipse Gyrex
  3. 3. Modern Server Application
  4. 4. HighTraffic https://www.flickr.com/photos/davidedamico/
  5. 5. Frontends web, apps & devices https://www.flickr.com/photos/raffaespo/
  6. 6. Modular development & deployment https://www.flickr.com/photos/russellstreet/
  7. 7. Simple deployment & operation https://www.flickr.com/photos/jar0d/
  8. 8. Open technologies & architectures https://www.flickr.com/photos/roborodent/
  9. 9. Eclipse Gyrex
  10. 10. A lightweight application stack for building server applications using EclipseRT technologies.
  11. 11. EclipseRT „EclipseRT is the collection of OSGi-based runtimes and frameworks built by the Eclipse open source projects.“ RunTime
  12. 12. Equinox • OSGi reference implementation • Foundation of EclipseRT • Component Oriented Development and Assembly
  13. 13. Jetty • Asynchronous HTTP Server and Client • Standards based Servlet Container • Web Sockets server • OSGi, JNDI, JMX, JASPI,AJP support • Small foot print • Excellent scalability • Runs in • Apache Hadoop and many, many more software • Google AppEngine
  14. 14. Gyrex • Clustering • Web-based administration • Multi-tenancy • Operational enhancements
  15. 15. Gyrex Features • lightweight application stack • fast 100% OSGi runtime • central cluster configuration
 through Apache ZooKeeper • cluster aware job scheduling • automated deployment through p2 • support for cluster node roles, e.g.“job worker node” and “api node”
  16. 16. Gyrex Components Equinox Multi-tenant Runtime Cloud Monitoring Admin Logging Metrics Debug/Trace Web SSH Repositories
 (JDBC, JPA, NoSQL) HTTP Applications
 (Jetty, OSGi HttpService) Configuration Provisioning Clustering & Coord. Batch Processing
  17. 17. Sample Production Deployment Load Balancer Web App IoT Device Native App iPad App Mobile Apps Web Node Web Node Web Node Web Node Web Node Web Node ZooKeeper Cluster REST API REST API REST API REST API REST API Batch Node Batch Node Batch Node Batch Node RedisAnsible KibanaLogstash Elastic Search Jenkins
  18. 18. Example Application https://github.com/eclipseguru/gyrex-timezones-example
  19. 19. Q & A • Gyrex Newsgroup / Forum at
 http://www.eclipse.org/forums/ • Information hub at
 http://www.eclipse.org/gyrex/ • Session feedback / questions
 @guw
  20. 20. –Gunnar Wagenknecht „Thank you!“

×