My company develops technology for visitor management. We currently have 2 solutions, one that is in the field, running on on-site hardware. The other is cloud, running on the cloud and processing all visitor related thing remotely.
Management wants us now to build a 3rd product to retire the two previous products and roll them into one. A web service to handle all the data either on site (for robustness) or in the cloud (for simplicity).
In my mind, what I need is a web service to handle the data processing, and it just just be spun up on a local machine or in the cloud, depending on need.
Could anyone suggest some architectures to learn or read more about?
Obviously, you’d need at least an application service layer to encapsulate and expose the API corresponding to the domain logic of your visitor management API. This will structure your architecture using a coarse granularity tha is appropriate for remote services (be it a local webserver or a cloud server).
It’s difficult to advise you further, because you let no clue if the visitor management is a very complex functionality, or if it’s just some basic features.
Eventually, you could be tempted to package your application as a microservice if it is very focused. In this case, it could help to also using a general API gateway to give you further flexibility for interoperating the service with presentation logic (e.g. server based, client based, etc…) or local services o fthe customer.