Multiple choice technology testing

A telecom industry application is to be deployed on a 24 CPU, 24 GB RAM server in Production. There was no test environment equivalent of this capacity. Out of due diligence, developers tested the application on development server with 1 CPU, 1 GB RAM with 24 times reduced data volumes. The application crashed in Production while crunching billing data for millions of customers. Which amongst the following was a bigger mistake?

  1. Project team should have gone for a failover architecture like 2 servers of 12 CPU, 12 GB RAM instead of single server

  2. Project team trusted server vendor who guaranteed excellent performance and scalability

  3. Project team overlooked the fact that results derived on a single CPU machine cannot be extrapolated to 24 CPU servers

  4. It's sheer bad luck that the application crashed; there's no mistake, at least they tried

Reveal answer Fill a bubble to check yourself
C Correct answer
Explanation

Concurrency issues, memory leaks, and CPU resource contention on multi-core systems cannot be predicted by scaling down data on a single-CPU machine. Results from a single-core environment do not extrapolate linearly to highly parallel 24-CPU systems under heavy production load.