Sizing Consideration
When you consider the architecture of your Application you should ask the following questions.
Which environment are you considering? Production, Disaster Recovery or Testing Environment.
Is the Application a critical system? If your application is a critical system such that it needs to be online 24/7, like a payment processing or important transaction, you may need to consider Active-Active or Cluster Environment to make sure your operation can run continuously.
Can this system have some downtime for maintenance? What is the SLA? If your application can have downtime and has enough SLA for maintenance or some failure you can use the Standalone Architecture.
Do you need Disaster Recovery? What is your RPO (Recovery Point Objective) and RTO (Recovery Time Objective)? If you need DR (Disaster Recovery) for backup plan in case you cannot operate Production Environment. You need to consider RPO (Recovery Point Objective) and RTO (Recovery Time Objective) to choose the right solution for your DR.
How many Active User? The number of Active Users is one of the important things to consider for deciding the capacity of your architecture. You can choose Standalone Architecture with a high volume of CPU and Memory or you can choose to separate your server as Active-Active Architecture with a load balancer to spray your workload to multiple servers.
How many transactions (Per year or Per Month)? The number of transactions is as important as the number of active users. The number of transactions need to be considered as well to decide the capacity of your architecture because it impacts directly on your server capacity.
How many transactions at peak time or peak event? When you consider your architecture and server capacity your also need to consider number of transactions at peak time or peak event because your server needs to support that situation as well.
How many and how long your data will be kept in the system? (in term of record and size) Size of your data in the system is one of key factors that impact the performance of your system. You should consider this factor when you design the architecture.
Last updated