May 4, 2016 | Written by: Bobby Woolf
Categorized: Community | Compute Services
Share this post:
WebSphere Liberty is not your father’s application server. It is a fully compliant Java Enterprise Edition (Java EE) application server, yet it provides a low-overhead Java runtime environment that is well suited for hosting cloud applications and microservices.
In this excerpt from “Java EE, the next inception: A primer to WebSphere Liberty for Java EE developers,” we’ll explore the advantages of the Liberty architecture and the new uses Liberty makes possible. Next in this series, we’ll look at how Liberty compares to traditional WebSphere Application Server.
Following the series introduction of Liberty, we continue with two more sets of topics:
- Install a Java EE development environment using Liberty and Eclipse (coming soon!)
- Developing and deploying Java EE applications to Bluemix (coming soon!)
To start at the beginning of this series, see WebSphere Liberty: Developing Java EE applications for the cloud.
WebSphere Liberty: The next generation application server
Simply put, WebSphere Liberty has a reimagined architecture that provides many significant advantages over other, older Java EE application servers. In a nutshell, these advantages include:
- Kernel architecture – A kernel architecture means the runtime starts very small and very quickly, then grows as needed. Typically, a Liberty server requires ~50 MB of memory and starts in less than 3 seconds.
- Feature manager – Application server functionality is implemented as features that a manager loads only as needed, keeping the server size as small as possible.
- WebSphere Liberty Repository – Features are downloaded as needed, directly from IBM.
- Dynamic updates – New features are installed without restarting the server.
- Java EE 7 support – Liberty supports full Java EE 7 applications.
- Simple to install – To install a runtime, just unpack an archive file. The complete Java EE 7 download is only 94 MB (JRE not included).
- Simple deployment – Drop in an application and the server runs it.
- Simple to configure – Each server is configured primarily via one simple XML file.
- Highly scalable – Administrative model scales to thousands of servers. A cluster can contain hundreds of members.
- Server packaging – Compact application archives are created that include the server configuration for deploying to production.
Liberty’s advantages now make production-ready Java practical for many new uses, such as:
- Continuous updates – IBM delivers new versions of features individually.
- Development environment – Simple to install, configure, and update, multiple Liberty test servers run easily on a laptop with other applications.
- Single-board computers – Liberty applications can run on the new generation of tiny computers, such as Raspberry Pi.
- Internet of Things – Liberty applications can run on small, distributed devices (such as single-board computers).
- Server per application – Deploy each application to its own server for better isolation and manageability without significant overhead.
- Microservices – Run each instance of each microservice in its own server.
- Containers – Run a full application server in a small, lightweight container.
- Cloud – Quickly, easily, and efficiently run large numbers of servers on virtualized hardware resources.
- Elasticity – Auto-scaling clusters grow and shrink based on load.
- Massive throughput – Topologies can process billions of API calls per day.
Can your application server do this? Liberty can!
—Bobby Woolf (@bobby_woolf)