10 to 15yrs ago, ABN begun leveraging internet banking.
Many (thousands) of web-app were written in java-ee style, deploy on IBM Websphere clustered machines. Remote EJB2 and JNDI was the prefered way to create small and flexible applications. Everything was focussed to _prevent_ deployments at all costs. Because of the long deployment cycle. Nowadays, we embrace fast deployments, and minor changes are done with new deployments and dependencies are minimized at all costs (micro-services). Within ABN, the challenge is to migrate these thousands of web-apps in a cost effective and reliable to cloud native solutions. Also, taking into consideration the current dynamics within the java ecosystem, jdk’s, graalvm, native (quarkus/micronaut), cloud, etc.
In this presentation I will outline ABN’s strategy to transform this legacy application landscape to a modern approach, in a cost effective and reliable way.
- First we upgraded from remote EJB2 -> remote EJB3 (from Factory to DI)
- Remote EJB3 -> local EJB3
- EJB3 -> DI
- JNDI -> file property sources (from dynamic to static)
- For property files to property servers (consul, keyvault, etc)
Which result in lean and mean Jakarta EE applications, which can be run as Old Websphere(WAS), Open Liberty, Spring-boot and Quarkus applications.
The process was reliable (no big bang) and results in modern state-of-the-art applications.