Hosting Services

Home sweet homepage

Hosting services

Your software needs a home. It doesn't need windows, doors and carpets but it does need somewhere secure, reliable and suitably equipped to keep it up and running. Hosting providers offer that home...but not all homes are equal!

What is hosting?

Hosting - or more specifically - web hosting, is the infrastructure and associated services used to make your software application(s) available to your user base. It gives you the necessary computing resources to run your application, store it's data and files, process requests and ultimately ensure it remains connected and available for use.

The requirements of your software will dictate which solutions are available to you. 

Traditional hosting

Traditional hosting involves running your software on physical or virtual servers, usually housed in a data centre and managed by a hosting provider. You essentially rent the server space along with the resources your software needs. You might share the server space with other businesses using a virtual private server (VPS) or have the server all to yourself - this will depend again on your requirements, your provider's packages and the level of control and performance you need.

Best suited to stable and predictable software, you'll need an idea on user volume, performance requirements and the resources your software will need if you're to avoid some common but risky pitfalls...

Advantages of traditional hosting

Predictable costs - Traditional hosting packages are usually billed on a fixed, monthly or annual cost basis so you know exactly what to budget.

More control - If you'd rather have more control over the environment your software is running in, you can opt for a dedicated server. This gives you a much wider remit over how the server is configured and the resources available to your software. Particularly useful if it has specific technical or performance requirements.

Easy set up (usually) - For applications with straightforward hosting requirements, the set-up is generally quite straightforward too. You (or your hosting provider) choose the resources you need, configure the environment and off you go.

Stable workload friendly - Traditional hosting is best if you have a steady amount of users and stable(ish) resource requirements that don't need immediate or extreme flexibility.

Disadvantages of traditional hosting

Single point of failure - This ultimately depends on the configuration, but relying on a single server can result in a single point of failure. That is to say, if your servers having a bad day, so is your software.

You may be paying for something you don't use - Because you're paying a set fee based on a predetermined amount of server capacity, you might end up paying for resources your software doesn't actually need. This is particularly prevalent if your software has 'quieter periods'.

Less flexibility & scalability - With traditional hosting, the likelihood is that you'll have access to a set amount of processing power, memory and storage. If your software starts demanding more, you'll need to upgrade your package which isn't always quick. Similarly, if you have notable or inconsistent fluctuations with demand, traditional hosting needs more planning to accommodate this.

Cloud hosting

A more modern and flexible approach to hosting, cloud based offerings use a network of connected servers and computing resources rather than relying on a specific, physical server. One of the key differentiators between cloud and traditional hosting is that your software has access to pretty much infinite resources and it will use what it needs, when it needs it without you having to procure more server space, processing power or bandwidth in advance.

Major cloud service providers include Microsoft Azure, Amazon Web Services (AWS) and Google Cloud Platform (GCP) and they offer everything from basic application hosting and databases to backups, monitoring, security and frankly, a ridiculous number of other services.

Advantages of cloud based hosting

Scale with ease - One of, if not, the biggest benefits of cloud based hosting is the ease at which your resources can scale. They can be increased or decreased based on demand without you having to anticipate such changes in advance. 

Pay only for what you use - Not only can you scale up and down without having to worry about it in advance, cloud hosting providers also tend to operate on a pay for what you use basis. Use more, pay more. Use less, pay less. Great in principle but not always particularly helpful if you need accurate budgets.

High availability - Not relying on a single server tucked away in a dark room somewhere also has it's perks. Cloud hosting can distribute your software across multiple servers, locations or availability zones meaning your software stays available, even if one server doesn't.

Access to additional services - Any plenty of them to boot. Databases, storage, backups, monitoring, security and analytics are just are few things on offer from cloud hosting providers. All things which you'd probably need to purchase separately if hosting on your own server (or through a third party hosting provider).

Disadvantages of cloud based hosting

Not so predictable costs - Paying only for what you use sounds fair and logical but can you do so at a risk of not knowing what you need to budget for hosting each month? Many can, but if you can't afford any surprises, cloud hosting might be problematic for your business.

More complex - Yes...cloud hosting can be as complicated as it sounds due to the sheer amount of services and options on offer. You'll definitely need to have yourself, or have access to someone, with the right sort of cloud expertise to get you set up and configured properly. Without that, you risk unnecessary costs, performance issues and more importantly, security vulnerabilities. 

Internet reliance - Cloud based hosting is well...in the Cloud. If you happen to loose your internet connection, accessing your cloud based systems is a no go. For most businesses with reliable connectivity, this isn't going to be a major concern but it is something to be aware of and perhaps factored into any continuity plans.

Your infrastructure is in someone else's hands - Most major cloud providers are incredibly reliable but outages inevitably do happen. When this is the case, there's probably very little you can do other than wait for them to resolve it. 

It still needs to be managed - Whether by you or a third party company, your infrastructure needs to be managed. Your environments still need configuring, monitoring, securing and generally keeping an eye on. The cloud provider is responsible for the underlying infrastructure but they're not responsible for everything you build on top of it.

Other types of hosting

Traditional and cloud based hosting cover most of the market at a high level but there are  few other options that are worth knowing about:

On-premise/self hosted

If you're self hosting, your software runs on infrastructure that you own and operate yourself usually at your own premises or a private data centre. You might choose this option if you have specific security or control requirements or where you have legacy systems that might be difficult to host elsewhere.

Hybrid hosting

A combination of cloud and on-prem or private infrastructure, this option is popular for companies that need to have control over some aspects of their hosting whilst others can run in the cloud. Sensitive data might be hosted on-premise for example, whilst the rest of the application runs in the cloud. Helpful if you have to abide by certain security or compliance protocols. 

How to choose the right hosting option for your business

There isn't a universally 'best' hosting option, this section would be a lot shorter if there was. The best solution depends on your software, how it's used, what it needs to do and what you expect from it in the future. An internal documentation system used by 10 employees is going to have a different 'ideal hosting solution' to a customer facing platform with thousands of users every day.

Now, let's take a look at some of the things you should consider before deciding on a home for your software:

How many people will use it?

Your hosting must be capable of comfortably supporting the number of people using your software - ideally with wiggle room. You should also consider whether all users will be using the software at the same time or whether usage will be spread throughout the day.

Is usage predictable?

If your software has a pretty consistent number of users and a predictable workload then your hosting requirements are by all accounts much easier to plan for. However, if demand might suddenly shoot through the roof because of seasonal events, promotions or just rapid growth, your hosting environment will need to respond accordingly.

What are your expectations in terms of growth?

You don't necessarily need to build your hosting infrastructure today for a scenario you expect to have in five years time but it shouldn't be completely ignored either. It's wise to consider how easily your chosen setup can accommodate more users, more data and more demand as your business grows.

What does your software need?

Different applications place very different demands on infrastructure. The amount of processing power, storage, memory and bandwidth required will depend on what the software actually does. If you're processing huge amounts of data or transactions from thousands of users, you are going to need a very different set up to hosting a small scale internal application that requires a weekly PDF upload.

Just how important is availability?

How disastrous would it be if your software disappeared for five minutes? An hour? A day?! For some systems, a short period of downtime is inconvenient. For others, every single minute of downtime is costing money. The more critical your software is, the more you'll need to explore options that include redundancy, resilience, monitoring and recovery. Plus some really impressive SLAs. 

What are your security requirements?

As well as keeping your software online, you also need to consider what information it holds, who needs access to it and how that information needs to be protected. Applications processing personal, confidential or commercially sensitive data may require additional security controls or specific hosting arrangements. This is especially true for software used in regulated industries.

What's your budget?

We know, we know - everything comes back to cost. But don't just look at the headline monthly price. Consider the wider cost of storage, databases, backups, monitoring, data transfer, additional services and the people required to manage it all as well.

Who is responsible for what?

A common misconception with hosting - particularly cloud based hosting - is that once your software is sitting in Microsoft Azure for example, there's no further involvement needed from you (or your team).

This ain't true.

The vast majority of hosting arrangements operate on some form of shared responsibility, which means your hosting provider is responsible for certain things and you (or whoever manages your hosting) are responsible for the rest. Exactly where the dividing line is depends on the type of hosting and services you are utilising. 

With cloud hosting for example, your provider will usually take responsibility for the physical data centre(s), servers, networking equipment and underlying infrastructure that make their services possible. The more managed services you use, the more responsibility they will likely have. 

On your side of the fence and depending on your setup, responsibility might sit with you, your internal IT team, your software developers or another third party provider for the application itself, how services are configured, user access and permissions, databases, monitoring and other elements sitting above the infrastructure provided to you.

How can we help?

We aren't hosting providers, let's get that out of the way first. However, should you decide to go ahead and build some bespoke software with us, we do have our own servers which we will always provide as an option to our customers. However, there may be occasions where we strongly advise you to take another option. For example, if your software is absolutely critical and your business would go under if the software was down for any length of time, we'd be advising you to choose a legitimate cloud hosting provider.

We'll help you weigh up the options and recommend the hosting solution that makes sense for your software, your business and your budget.

Prefer to Call or Email Us?

If you dont like filling in these forms, or you would prefer to speak on the phone or via email then please use one of the below:

0115 772 2751
[email protected]

Follow us on Social Media

Follow us on Twitter, Facebook or LinkedIn to be kept up-to-date with Cool Code Company news and goings-on, or just to have a conversation with us.