On Premises
Building a system to self-host is an option, whether as bare metal or virtualization within your own corporate cloud. Just like any cloud solution there needs to be a balance between just enough computing power without overcommitting processors or memory that would not be used.
Cloud Computing
Cloud providers like AWS and Azure offer various virtualization options tailored to specific purposes, from general-purpose to compute-, memory-, or storage-optimized machines. In addition to the varied machine families, there are differences in pricing, which are constantly updated. Finding the right combination of machine specs is crucial for supporting your application adequately, considering factors like CPU cores, memory, disk speed, and network throughput, to handle both typical operations and unexpected spikes.
Platform Modernization
With a new target architecture, you can consider additional goals for modernizing your application. Common application modernizations include:
- High Availability - Uptime considerations
- Redundancy - Failover or DR options
- Scalability - Cluster or scale for load balancing
- User Identity - SSO or federated identity provider
- Database - Move from self-service (shared memory) to networked (client-server)