What are the pros and cons of serverless computing?

What are the pros and cons of serverless computing?

All computing runs on servers, so what exactly does serverless computing mean and why are there pros and cons?

First of all, what is serverless computing?

So, despite what its name might imply, serverless computing is not actually serverless. It simply means that developers don’t need to pay attention to them because users can write and utilize their coding without needing to worry about any of the underlying infrastructure of the server. The back end for a serverless vendor has costs related just to computation rather than the amount of bandwidth or number of servers used. Back end services are basically the stuff users don’t actually see, which typically includes the server where the application and its files are stored and the database behind everything.

So typically cloud services would charge by the amount of server space used. Companies could therefore either use their own servers, which is both expensive and time consuming. The cloud solves some of these problems, but typically there will be a fixed bandwidth or number of servers used, which can also prove costly, particularly if a company doesn’t scale properly and is put into a situation where they are paying for servers during periods of downtime when they’re not even using them.

Another phrase for serverless computing is functions as a service, or FaaS. This comes from the way that payment focuses on functions as opposed to server usage. Developers don’t need to make low level infrastructure decisions, and are not required to scale, change, or implement the server in any way.
.

Pros of serverless computing

1. Cost

So with that outlined, the pros are fairly obvious, with lower cost being the primary benefit. As outlined above, with serverless computing you can tailor your costs specifically to your usage, whereas in traditional computing you may have to pay for the hardware of a server or at least suffer wasted money as you pay for periods of time which are not actually in use.

2. Ease of use 

Along those same lines, basically paying for the specific functions you use rather than having to calculate the scale and implementation of server usage makes everything much easier as well as cheaper. You don’t need to bother with bug fixes and patches because that’s all taken care of by a third party provider.

3. Simplified scalability

Because the serverless vendor handles how to scale user demands themselves, that means that the user doesn’t have to worry about specific ways to scale themselves.

4. Speed 

Developers don’t need to think about a complicated process that includes fixing bugs and a full roll-out, instead they can add and modify code as they go along, saving time as well as everything else.

Cons of serverless computing

1. Dependence on vendors 

There’s always a benefit to doing everything yourself. Even if your own servers and your own costs are difficult in some ways, of course having full control is a benefit in and of itself. Once third parties are in control of your servers, run times & updates are out of your hands as well. It also means that if you pick a certain vendor that you end up being unhappy with, you’re usually locked in for the long haul and switching can be difficult and costly.

2. Speed in the short term, but not as much long term

 Being quick and agile can often mean that for longer term projects serverless computing is not ideal. If functions are actually running all the time, it mind end up actually costing more than paying for reserved instances would. Different vendors operate in different ways, so the costs can vary fairly dramatically based on the vendor for longer and more complex tasks.

3. Speaking of complex tasks

Often times tasks that take more than 5 minutes means more code needs to be written for more functions, and if you have to run multiple functions then it can get immensely complicated and difficult.

Key Takeaways

Serverless computing provides a quicker and cheaper mode of computing in many cases, but there is always a time and place for more old school methods, even if they’re more cumbersome at the outset. What is clear is that the cloud, and different ways of using it are here to stay, and FaaS, or Serverless Computing, represents an exciting option for usage in a number of instances. For more information on whether serverless computing is the best solution for your business you can talk to Cloud experts at Commencis.

29/01/2020

Reading Time: 6 minutes

All computing runs on servers, so what exactly does serverless computing mean and why are there pros and cons?

Don’t miss out the latestCommencis Thoughts and News.

    First of all, what is serverless computing?

    So, despite what its name might imply, serverless computing is not actually serverless. It simply means that developers don’t need to pay attention to them because users can write and utilize their coding without needing to worry about any of the underlying infrastructure of the server. The back end for a serverless vendor has costs related just to computation rather than the amount of bandwidth or number of servers used. Back end services are basically the stuff users don’t actually see, which typically includes the server where the application and its files are stored and the database behind everything.

    So typically cloud services would charge by the amount of server space used. Companies could therefore either use their own servers, which is both expensive and time consuming. The cloud solves some of these problems, but typically there will be a fixed bandwidth or number of servers used, which can also prove costly, particularly if a company doesn’t scale properly and is put into a situation where they are paying for servers during periods of downtime when they’re not even using them.

    Another phrase for serverless computing is functions as a service, or FaaS. This comes from the way that payment focuses on functions as opposed to server usage. Developers don’t need to make low level infrastructure decisions, and are not required to scale, change, or implement the server in any way.
    .

    Pros of serverless computing

    1. Cost: So with that outlined, the pros are fairly obvious, with lower cost being the primary benefit. As outlined above, with serverless computing you can tailor your costs specifically to your usage, whereas in traditional computing you may have to pay for the hardware of a server or at least suffer wasted money as you pay for periods of time which are not actually in use.
    2. Ease of use: Along those same lines, basically paying for the specific functions you use rather than having to calculate the scale and implementation of server usage makes everything much easier as well as cheaper. You don’t need to bother with bug fixes and patches because that’s all taken care of by a third party provider.
    3. Simplified scalability: Because the serverless vendor handles how to scale user demands themselves, that means that the user doesn’t have to worry about specific ways to scale themselves.
    4. Speed: Developers don’t need to think about a complicated process that includes fixing bugs and a full roll-out, instead they can add and modify code as they go along, saving time as well as everything else.

    Cons of serverless computing

    1. Dependence on vendors: There’s always a benefit to doing everything yourself. Even if your own servers and your own costs are difficult in some ways, of course having full control is a benefit in and of itself. Once third parties are in control of your servers, run times & updates are out of your hands as well. It also means that if you pick a certain vendor that you end up being unhappy with, you’re usually locked in for the long haul and switching can be difficult and costly.
    2. Speed in the short term, but not as much long term: Being quick and agile can often mean that for longer term projects serverless computing is not ideal. If functions are actually running all the time, it mind end up actually costing more than paying for reserved instances would. Different vendors operate in different ways, so the costs can vary fairly dramatically based on the vendor for longer and more complex tasks.
    3. Speaking of complex tasks: Often times tasks that take more than 5 minutes means more code needs to be written for more functions, and if you have to run multiple functions then it can get immensely complicated and difficult.

    Key Takeaways

    Serverless computing provides a quicker and cheaper mode of computing in many cases, but there is always a time and place for more old school methods, even if they’re more cumbersome at the outset. What is clear is that the cloud, and different ways of using it are here to stay, and FaaS, or Serverless Computing, represents an exciting option for usage in a number of instances. For more information on whether serverless computing is the best solution for your business you can talk to Cloud experts at Commencis.


    Related Articles