The first document provides a summary of the history of containers and Java application servers from 1995 to the present. It discusses how technologies like PHP, Ruby on Rails, and Node.js have proliferated and how programming models are shifting towards event-driven and in-memory computing. The document raises questions about polyglot/multi-container strategies and platform-as-a-service.
The second document discusses in-memory computing as a solution to improve response times over traditional database-driven architectures. It presents in-memory data grids as a way to cache frequently accessed data and improve performance by orders of magnitude.
The third document provides an overview of platform-as-a-service (PaaS)
3. A Short History
●
1995 – Jetty (originally IssueTracker/MBServler)
●
1997 – Java Servlet Spec
●
●
●
1998 – Weblogic and Websphere Java Application
Servers
1999 – Tomcat Servlet Container
1999 – JEE Spec (then J2EE 1.2), JBoss AS (now
called Wildfly)
●
●
2009 – JEE 6 Released (EJB fixed)
●
3
2004 – Spring Framework 1.0
2013 – JEE 7 (HTML5, Websockets etc.)
4. Meanwhile...
●
PHP - Zend
●
Ruby on Rails
●
Python – Django
●
Scala – Akka/Play Framework
●
●
Node.js – game changer - non-blocking I/O and a
single-threaded event loop
Vert.x – polyglot, JVM based, non-blocking I/O,
aschronous programming model, distributed event bus
●
●
4
In Memory Computing
Platform as a Service - PaaS
5. Thoughts
●
●
●
●
●
5
The JEE Container has been commoditised!
JEE is here to stay, continue to evolve and support
“new stuff”
Event Driven/In Memory Computing – I Need to
consider new programming models – are they relevant
or a better solution for my use case
Polyglot/Multi-container is proliferating – Can I
leverage this?
What is my PaaS strategy?
9. Cost of memory since 1957
copyright 2001, 2013, John C. McCallum
4
10. Problem: How to fix the response time problem?
Design for more...
●
●
●
Pile on complex code, servers,
databases, DBAs
Cost-prohibitive
Quick fix until you need to scale
again
Start from scratch...
●
Completely re-architect
●
Sharding? Denormalization?
●
Complicated
Time- and resource-intensive
●
5
●
Risky
11. “By 2014, at least 40%
of large organizations
will have deployed one
or more in-memory
data grids.”
SOURCE: Predicts 2012 – Cloud and In Memory
Drive Innovations in Application Platforms
Gartner 2012
6
12. Solution: Introduce a Data Grid
●
●
Insert a Grid between the
App and the overloaded
DB
Small application
changes esp. With e.g.
●
●
●
7
Memcached
Hibernate OGM
Orders of magnitude
response time speed up
13. Resources
Datasheet:
Red Hat JBoss Data Grid: Perfect solution for big data and application performance
Whitepaper: Comparison of JDG and Oracle Coherence
https://engage.redhat.com/forms/data-grid-v-coherence-grid
JBoss Data Grid documentation:
https://access.redhat.com/knowledge/docs/JBoss_Data_Grid/
Video: Monitor JBoss Data Grid using JBoss Operations Network: Monitoring Red Hat
JBoss Data Grid with JBoss Operations Network video
http://www.redhat.com/resourcelibrary/videos/monitoring-data-grid-with-jon
8
15. What is PaaS?
IaaS
PaaS
SaaS
APPLICATION
APPLICATION PLATFORM
(JBOSS, PHP, RUBY, ETC)
OPERATING SYSTEM
VIRTUALISATION
HARDWARE
STORAGE
Managed and Controlled by
Customer (IT, Dev, or User)
2
Automated and Managed by
the Public or Private Cloud
Offering
Increased Control
Increased Automation
19. Driving PaaS adoption
Faster to market
Faster to market
Lower
Lower
innovation
innovation
barriers
barriers
Avoid
lock-in
Security
&
Compliance
Enable developers and get out of the way
Enable developers and get out of the way
Photo credit: William Warby, http://www.flickr.com/photos/wwarby
6
20. OpenShift ideally suited
On premise
and runs on
No
lock-in
Secure
Secure
Portable
Open Source
Photo credit: Mitch Barrie, http://www.flickr.com/photos/simonov/
7
21. OpenShift, a production line for your apps
Code
Code
Deploy
Deploy
Enjoy
Enjoy
Photo credit: Steve Jurvetson, http://www.flickr.com/photos/jurvetson
8
23. OpenShift is a PaaS on top of…
Infrastructure
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
10
24. The Foundation of OpenShift
is Red Hat Enterprise Linux
OpenShift is Built on Instances of
Red Hat Enterprise Linux (RHEL)
RHEL
RHEL
RHEL
RHEL
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
11
25. An OpenShift Broker Manages
Multiple OpenShift Nodes
Nodes are where User Applications live.
Brokers keep OpenShift running.
RHEL
Brokers
RHEL
RHEL
RHEL
Node
Node
Node
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
12
26. Unique SELinux Approach Enables
Security and Multi-tenancy
SELinux Policies securely subdivide
the Node instances.
RHEL
Broker
RHEL
Node
RHEL
Node
Node
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
13
27. OpenShift User Applications
Run in OpenShift Gears
OpenShift GEARS represent secure
containers in RHEL
RHEL
Broker
RHEL
Node
RHEL
Node
Node
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
14
28. Developer
Workflow
Web Console
Eclipse IDE
Cmd Line
OpenShift
Gear
RHEL
Broker
A Developer creates a
new application
OpenShift creates a
GEAR
RHEL
Node
RHEL
Node
Node
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
15
29. OpenShift Automates
Gear Configuration
via Cartridges
JBoss
RHEL
Broker
MySQL
Web Console
Eclipse IDE
Cmd Line
CARTRIDGES are how
OpenShift installs
Languages & Middleware
RHEL
Node
RHEL
Node
Node
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
16
30. OpenShift Cartridge System
Enables User-Built Cartridges
Java
PHP
Python
MySQL
Postgres
CUSTOM
Etc.
Ruby
Etc.
OpenShift Default
Cartridges
Developers can add custom
language, data-store, or
middleware with with a custom
Cartridge.
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
17
31. Now, Code and Push
Git Protocol / ssh
Code
Git
Repo
MySQL
JBoss
Developer pushes
application code via
GIT source code
management system
RHEL
RHEL
Broker
Push
Node
RHEL
Node
Node
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
18
34. OpenShift Automates the
IT Assembly Line
POWERED BY
OPENSHIFT
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
21
35. Why OpenShift?
• It’s Trusted. OpenShift is built on proven Red Hat
technologies.
• It’s Freedom. In OpenShift, work the way you want.
•
•
•
•
22
Choice of Interface: Web Console, Command-line, or IDE
Choice of Middleware: Java(EE6), Ruby, Node.js, PHP, Python, and Perl
Choice of Cloud: Public, Private, or Hybrid Cloud
Automatically Scaling: Eliminates the worry of handling load
It’s Open. OpenShift’s open source software stack
ensures application portability and No Lock-In.
36. How Can I Consume OpenShift?
On-Premise or
Private Cloud
Software
Public Cloud
Service
(in Developer
Preview)
Operated
by Red
Hat at
Scale for
18
Months
APPLICATION
Developer
Controls
APPLICATION PLATFORM
(JBOSS, PHP, RUBY, ETC)
Developer
Controls
OpenShift
Automates
OPERATING SYSTEM
(RHEL)
VIRTUALISATION
HARDWARE
STORAGE
23
IT Ops
Controls
IT Ops
Provides