September 4, 2013
Back in June 2013 IBM has shipped an update to the WebSphere Application Server and along with it new Liberty Profile. I am very impressed with the small footprint of the product and the incredible speed of its startup and deployment time. Today I recorded this simple demo and you can see on my ThinkPad W530 laptop it takes less than a second to start and stop Liberty. Granted, this is very simple demo and a smallest HelloWorld app deployed on it, but nevertheless it is very impressive! In this demo you can see the following:
- Install new Liberty Profile from within Eclipse Juno (only 64 MB disk footprint);
- Create / start/stop new Liberty test server in Eclipse (only 110MB RAM footprint by default, but could be less);
- Create simple Web Project and servlet using Eclipse wizards (takes about 1 minute);
- Deploy and test/recompile/redeploy test app to Liberty (takes 0.2 seconds);
- Edit Liberty server.xml configuration file to add and remove features (with code assist and QuickFix);
- Liberty directory structure overview;
- Additional resources – blogs and demos on http://wasdev.net;
- Total demo time is <15 min.
One thing I forgot to show in the demo is the installation of the IBM WebSphere Developer Tools (Eclipse plugin). To add WDT to your Eclipse, simply start your version of Eclipse, go to Help -> Eclipse Marketplace -> type “WebSphere” -> click “Go”. When you get search results, scroll down to the “WebSphere Application Server V8.5.5 Liberty Profile Developer Tools and click “Install”. Restart your Eclipse. That’s all.
Here is the demo (make sure to click on *HD* to view in good resolution):
If you have a problem watching the video above, try this alternative link (right from my Dropbox folder).
August 6, 2013
When IBM shipped WebSphere Application Server v8.5.5 in June this year there were a couple of new license options made available: (1) Liberty Profile Core and (2) Liberty Profile Core for ISVs. I am very excited for these new members of the product family. This time IBM has done something unusual. ISVs are now able to use Liberty Core to develop applications at no charge and customers of those ISVs can deploy such applications without having to buy license and support for Liberty Core. I believe this move was made by IBM to address competitive pressure from Tomcat, Jetty and other free software.
You might ask, why do I like this change? It would seem that being IBM employee I would want IBM customers to pay for software, not give it away for free. The truth is that there are many small applications that do not require high quality of services and increasingly companies have been using Tomcat, JBoss Community and Jetty for those non-critical applications. I often hear that JEE Application Servers have been turned into commodity. Well, yes and no:
- Yes, because there is a class of applications where Tomcat or Jetty are good enough. Key word here being “good enough”. In other words the scale of deployment is small, security is not a big requirement, failover and availability are not a big concern, programming model is limited, etc. This is where WAS Liberty Core comes into play.
- No, because there are still many applications that are large in scale, require advanced user and administrative security, auditing, transaction management, automation, high performance, etc. For these applications Tomcat, Jetty and JBoss are not appropriate as they lack some of those capabilities (as discussed in other articles of this blog).
IBM has posted FAQ for the Liberty Core Profile for ISVs, but let me explain it in plain English. What this really means is that an ISV can develop an application on Liberty Core Profile and not have to pay license or support cost to IBM. When said ISV sells their application to a customer, ISV can chose to charge whatever they want for their software (or give it away for free). Customer can run the application without having to buy licenses for Liberty Core Profile from IBM. However if customer decides, he/she can sure buy license and support from IBM for the Liberty Core Profile – in other words paid license and support are optional with ISV applications.
It is beyond me why this “no-cost” option is only available via ISV applications, as it would seem that IBM could provide this option directly to its customers – (1) ability to run WebSphere Liberty Core with no support at no cost or (2) buy license and support – similar to what is available with WebSphere Community Edition today (Geronimo based product – not to be confused with Liberty Core).
PS. I have described new programming model capabilities of this new version in the previous article.
May 9, 2013
IBM WebSphere Application Migration Toolkit has a new feature – it can migrate Tomcat applications and Tomcat configuration to the WebSphere Application Server Liberty profile. The tool is free to download and use for all.
In addition to Tomcat, the tool supports migration of applications from JBoss, WebLogic, OAS, and older versions of WAS into WAS v7 and v8.x.
Read more about the Tomcat migration tool on wasdev.net.
February 28, 2013
A couple of weeks ago IBM released a beta of IBM WebSphere Application Server Liberty profile. This is exciting news and brings a robust set of new features. Highlights of this beta update include:
- Complete support for the Java EE Web Profile, including CDI and EJB Lite, JSP, Servlet, etc.
- Support for JMS, MDB, JAX-WS web services and MongoDB
- New Liberty server based administration infrastructure (including multi-server environments)
- Admin UI and new capabilities for monitoring and log viewing
- Improved performance
- Security enhancements, such as encryption of passwords in server configuration, etc.
- Support for custom user registries
- Ability for third parties to add Liberty features through a new System Programming Interface
- New High Performance Extensible Logging (HPEL) for Liberty servers
- Developer tools: updated Liberty support, including Web Services, updated Maven integration, and new Health Center integration
A full list of changes can be found on the New and Noteworthy page of the wasdev.net site.
What I like about Liberty is that the server is so dynamic and lightweight, yet it has significant additional features that you wont find in other lightweight servers (Tomcat or VMware tc Server). Things like JMS, EJB Lite, MDB, JPA, web services, etc. And not only that, but also the ability to do profiling of the server, etc. See examples of such advanced tooling at the link above.
The other nice thing is that Liberty now has clustering and ability to manage multiple servers. All of this without the heavy add-ons, such as full RDBMS and Hyperic required by JBoss JON or tc Server. It is interesting that tc Server download size is 19 MB, yet the admin “console”, which is vFabric Hyperic is 418 MB download and is such a drag to install. Ever worse, in full production you would need to buy licenses of Oracle DB or Postgres to keep all of your admin data. None of those extra megabytes nor costs with Liberty!
I will post detailed comparison of capabilities of Liberty and JBoss and tc Server in near future.
November 9, 2011
Java Web application developers now have new option with the newly published beta of the WebSphere Application Server Liberty profile. The nicest thing about this is that unit testing your Java applications is now just as quick and easy with WebSphere as it is with Tomcat. This new Liberty profile has the disk and memory footprint similar to Apache Tomcat. And it starts and stops in about the same time – between 1 and 5 seconds – depending on the number of applications deployed.This new Liberty profile has OSGi support, JPA, JDBC, Web applications (JSP, Servlets, JSF), and few other things not found in Tomcat.
The other good news is that you now have a choice between the full featured Rational Application Developer and vanilla Eclipse + IBM WAS plugin. Considering that the license cost for the developer setup of Eclipse + IBM WAS plugin + WAS for Developers is $Zero, and deployment into production version of WAS or WAS ND is transparent, this really leaves no reasons to use Tomcat on your development machine.