Cloud computing does offer enterprises and organizations a mixed bag of goodies. For one it provides for a utility style computing, the ability to grow and shrink with changing loads, zero upfront costs etc. The benefits of cloud computing are many but does it all add up to profit for an enterprise? That is the critical question that needs to be answered.
This post will take a look on what it takes for a cloud deployment to be profitable for an organization.
The critical parameters for any web application are latency and throughput. A well designed web application whether it is an e-retail site or an ad serving application will try to minimize the latency or response time while at the same time maximizing the throughput of the application. For any application while the latency can be kept within specified limits the throughput will tend to plateau at a certain level and will not increase with increasing traffic. Utilizing a larger instance can improve the throughput plateau slightly. In any case the reality is that throughput tends to flatten as the traffic is increased.
A typical cloud application will be made of several compute instances, database instances, DNS services etc. Cloud usage is billed by the hour. Hence we can represent the cost of a cloud deployment as follows
Cost (cloud deployment) = m * compute instance + n * database instance + o * network bytes + P
Where P = cost of DNS + Elastic IPs + other costs.
This can be represented by the formula
C = a * D * t
where C = cost of cloud deployment
D = costs per hour of the deployment
and ‘a’ is some arbitrary constant and ‘t’ is the time
Let us assume that for the cloud deployment we get a throughput of T.
The revenue for a web application whether it is an e-commerce site, an e-ticketing site or an ad serving engine will all depend on the throughput i.e. larger the throughput, larger the revenue and hence profit. We can then say that ‘R’ the revenue is
R (revenue) α k * T * t
In others words the revenue is proportional to the throughput.
Hence to determine the profitability of a particular cloud deployment we need to compare the cost of the deployment for a given throughput versus a projected profit margin. As long the cost of the deployment is less than the revenue arising from the throughput, the deployment will be profitable. This can be represented pictorially as below.
The graph clearly shows that for a profitable deployment
d/dt (k * T *t) > d/dt (a * D * t) or
k * T > a * D
Hence as can seen from the picture as long as the slope of the cumulative deployment costs are less that the slope of the revenue the deployment will be profitable.