As I mentioned in my previous post Evolving Java EE applications to microservices – “Rules of Engagement”, I’m working through the process of evolving from a monolithic application into one based on microservices in a practical manner. In other words, I’m as interested in what doesn’t work and what doesn’t make sense as I am in best practices and recommended approaches.
I’m using the Plants By WebSphere sample application (code available soon) as a representative monolithic Java EE application and examining what is involved in evolving it to use microservices. I’ve been looking at this application for a while now and it suddenly struck me that this is actually closer to ‘real life’ than I first realised in that …
- I’ve never seen the source code before
- It was written by people who have since left the company
- It has undergone several re-writes and updates as technologies have changed (e.g. using CMP to JPA)
- There is some documentation available, covering various incarnations of the application, but nothing that gives me the complete picture from a technical/architectural perspective.
In case you’re wondering how I went from here, take a look at my new article, Starting the evolution to microservices (using the Plants By WebSphere sample).