As part of an Airline Application I am building - I am developing a set of (RESTful) API's each for Flights, Lounges, Loyalty etc. There are some common methods which should be accessible from all the API's.
At present, we have deployed these as separate war files on our Tomcat servers. We have developed them using Java\Spring - and we are using a common ApplicationConfiguration and a WebInitializer file's from which others inherit. Basically it is split into the packages Common, Flights, Lounges and Loyalty and each of them has 1 or more API's within itself. Is this the right approach?
During the course of last one year - we have added multiple versions to each of the API's, all of which are deployed on a single tomcat instance. Is this advisable?
More importantly, is this the right approach? From the very little I have heard about Micro-services - is this the right approach in scenarios like this? How else would you suggest implementing them. I am developing a similar set of API's for a different application and would like to have the right approach for it.