As of WebSphere Application Server v18.104.22.168 (released 13th March, 2015), there’ll be a change to the license of the WAS Liberty download from WASdev. In addition to the free, unlimited use of Liberty in development (on developer machines), you’ll be able to use the Liberty runtime in small scale test or production for free.
The download from WASdev will no longer just be “for developers” – it will be for everyone.
Key points of the license
- As licensee, you’ll be entitled to¬†use up to 2GB of JVM heap space for running Liberty in test or production. You can share this across as many instances of Liberty as you like¬†as long as the total JVM heap space across the instances does not exceed 2GB.
- As with the current download, this is offered without support (but if you have questions/problems you can ask on Stack Overflow).
- You’ll be able to use all the Liberty capabilities that are offered in the WebSphere Application Server offering. That is, all of the Java EE features that are supported in the runtime, and a few extra features as well. You can see the list in the knowledge center¬†(this license’s features are¬†in the same column as WAS express).
- As with the current download you are only able to get WAS Liberty from WASdev. The full profile is not available as part of this free production entitlement, but remains free for development use from IBM.com
- You can deploy Liberty for test/production both on-premise or in the cloud (and on whichever cloud service you prefer).
Who is a “licensee”?
A licensee differs depending on why you’re downloading the runtime:
- If you’re downloading Liberty for using at home (for a hobby or personal website) and not as part of work for a business or organisation then you’re the licensee.
- If you’re downloading Liberty for your job or for a business or enterprise organisation, or a charity, etc then that whole organisation is the licensee.
This means that the 2GB limit on using Liberty in production applies across an entire business or organisation and not per developer in that organisation.
How to stay within the memory¬†limit
It’s easy to make sure your runtimes stick within the 2GB limit:
- Create a file called
jvm.optionsin your server’s directory (
- Inside the
jvm.optionsfile add the line:
This sets the upper limit for the JVM heap space for this server (change 2048m as appropriate to set different limits). Make sure that if you’re running multiple instances of Liberty in test or production that the
xmx values you set add up to 2GB or less.
What functionality¬†is allowed in test or production?
When using the Liberty download for development you can use any of the functionality available in the runtime and from the Liberty repository.
When using Liberty for test or production as part of the free license entitlement, you’re restricted to using functionality available in WAS (base). This covers all of the Java EE functionality plus some extras, but does not include some of the advanced deployment functionality and other features in WAS ND. All of the functionality included in the runtime download is allowed under the license, as are the majority of features on the Liberty repository. If you’re looking to download a feature from the repository and, on the downloads page for the feature, if
base is listed as an edition that the feature can be used on, you’re fine to use it in test or production. Or you could just check the license for the feature download – if it’s not allowed to be used in test or production as part of the free entitlement, the license will indicate this.
Where to buy more capacity beyond the 2GB limit?
You can visit the WebSphere Application Server family page¬†to view¬†the various levels of capability offered, and contact IBM to buy the level you want. As a starting point this download¬†is part of the¬†“WebSphere Application Server” offering.
Does this change also include the Liberty beta downloads?
No. We don’t support or encourage the use of Liberty beta downloads for production environments, so this change only applies to the GA (stable) downloads.
Does the 2GB limit apply to my development environment?
No. We’re not changing the licensing around the use of Liberty in development. So you can continue to use the whole of Liberty in development (as is defined in the license).
Do I need to register to be able to use Liberty in production?
No. As with the current “for developers” download we are offering this registration free.
A different development team in my company is already using the¬†free¬†production entitlement, as we are different teams can we both use up to 2GB?
No. The 2GB limit is organisation-wide.
I’m currently using the Liberty buildpack in IBM Bluemix, does that count towards usage of this 2GB production entitlement?
No. The Liberty buildpack in IBM Bluemix does not count towards your 2GB entitlement in this download.
2GB doesn’t sound like much. Is that enough memory for running Liberty in production?
Liberty’s dynamic runtime architecture means that it only loads into memory the functionality you ask for, making it very¬†memory efficient. The memory requirements for your environment vary by the size of, and functionality used by, your web application,¬†in addition to¬†the traffic the runtime is receiving. 2GB should be sufficient to allow small businesses, hobbyist developers, and small organizations to run their web applications without issues, as well as allowing larger businesses to evaluate a small scale deployment of the runtime.
If you have more questions please ask on our Stack Overflow tag.