Introduction
Our implementations are based on Java Spring Boot stand-alone applications. This allows deployments on a wide variety of infrastructure for which a Java runtime environment is avaliable (as of time of writing Java 19 or more recent). Our prefered relational database is PostGreSQL, but we can access other databases considering the required JDBC drivers are available.
Virtual private server
We exclsuively use Hetzner.com with a Linux software for virtual server infrasturcture, because we are familiar with the environment and consider it a cost-effective solution with European server locations. The servers can be set up flexibly with the required software environments, i.e. databases, message queues, web caches, domain services, firewalls, and backup.
You are free to deploy the application on your own servers if you have the necessary software and hardware support. You will take responsibility for peripheral software and server security.
Managed environments
We can develop applications for Google Cloud Services (GCS) and Amazon Web Services (AWS). These platforms rely on proprietary infrastructure to provide global access. Globally replicated data require a novel approach and complex synchronisation. Data management is more straightforward and simpler. Application development will need to carefully consider the platform’s opportunities and constraints. Software solutions can be initially more cost-effective and highly scalable if required. Short-term and automatic scaling is not possible on a fixed infrastructure. Data security and management are provided and maintained to a high standard.
Both, GCS and AWS provide access to sophisticated and powerful computing tools.
An application developed for a specific platform may not be easily re-deployed onto a different platform or your own infrastructure. Consequently, development for a managed platform is a commitment for the project’s lifetime.