It’s important to match the supply of network resources to the demand. In this video, you’ll learn how people, technology, and infrastructure should be evaluated to provide the proper capacity.
Trying to predict how much capacity you might need for any particular service is an ongoing challenge in information technology. We obviously have a demand for a particular service and we need to be sure that we’re able to supply everything we need to meet that demand. If we make the mistake of not providing enough resources, then we have too much demand and you ultimately will have application slowdowns and potentially outages. If you’ve built out an infrastructure with too much supply, then you’ve spent more money than you’ve needed.
The key, of course, is to create just the right amount of supply so that you can handle the demand. This will involve having the right number of people, you want to be sure that you’re using the appropriate technology, and of course, you’ll need to build out an appropriate infrastructure. Although a large scope of what we discuss in this course revolves around technology, there’s obviously an important human component to all of this.
For example, if you have a call center, there will certainly be applications and services that are provided, but you need humans to be able to answer the phones and be able to input information into those services. Humans are also a difficult resource to easily ramp up or ramp down. If you have too few employees, you’re going to need to hire additional people and get them properly trained for this particular job function. This is obviously time consuming and you will need to spend money hiring people to put in those seats.
But of course, employees are a large business expense. And if we have too many employees, we’ll need to either ship them around to other parts of the organization that need additional resources or we may end up downsizing them and having them leave the organization.
We also have to pick a technology that can easily scale based on the supply and the demand. Not all technologies have the ability to grow and shrink as these different demands are presented. So it’s important that we think about that in the very early stages of engineering this design.
For example, if we’re implementing a new series of web servers, we may want to have an implementation that includes load balancers and multiple servers. That way if we have a large demand, we can increase the number of servers behind the scenes invisibly to the users. And if the demand decreases, we can easily remove servers from that particular load balancer to have exactly the number we need for the demand.
If our technology concern is based on database services, we might have multiple SQL servers that we would enable. And in some cases, we can split databases into smaller pieces and distribute those databases across multiple servers. And of course, if you have services running in the cloud, you have the ability to pull in additional cloud services to handle additional demand. There is, of course, a seemingly unlimited number of resources available at these cloud providers, but of course, the difference is, the more resources we use, the more we’ll need to pay.
It’s these cloud-based services that have changed the way that we think about deploying application instances in our infrastructure. Whenever we’re building out a new app, we need to think about all of the storage that we’ll need, application servers, the network connectivity, and anything else required to run that app. If this is in our physical data center, then we’ll probably need to purchase additional equipment that will need to be shipped in, we will need to unbox it, configure it, install it in the rack, test it, and then finally deploy it to production.
In the cloud, the deployment process is much easier. There’s no acquisition of new hardware and you don’t have to install it. You simply click a few buttons on your cloud-based console and you’ve created a new application instance. This allows us to easily ramp up in the cloud when we have times where there is a higher demand. And as the demand goes away, we can easily rightsize our cloud-based infrastructure so that it meets the needs of our customers.