Software as a service, or SaaS, is a form of subscription-based business model which is rising rapidly across many parts of the world. The idea is simple: Users are able to access software as and when needed through either a set contract or rolling contract, depending on the options offered by the provider. This is very different to how software was accessed in the past: through an outright purchase. Perhaps one of the most famous examples of SaaS is the hugely popular entertainment service Netflix.
The reason that SaaS business models are experiencing such a high degree of success is because of the benefits they bring not only to businesses, but also to users. The advantage for users is that they can avoid the expense of purchasing software that’s only required for a single task, or for a short period of time. For businesses, the overhead costs can be massively reduced by making use of cloud hosting. (To learn about different cloud services, see The Four Major Cloud Players: Pros and Cons.)
SaaS Benefits… and Challenges
In addition to reduced overheads – the result of utilizing cloud hosting rather than maintaining servers on-site – there are many more benefits to utilizing this way of working. SaaS advantages include:
- Greater attraction due to minimized risk for users who are unsure about paying upfront costs
- More appeal to a wider, global audience as software can be accessed from anywhere, anytime
- Software is easier to use and maintain with automatic updates, rather than manual installation
- Ability to provide users with flexibility over which device they use to access the software
- Opportunity to predict monthly recurring revenue (MRR) from rolling subscriptions
- Reduced risk of piracy due to the safety and security of cloud hosting
- Automation of service delivery, giving SaaS businesses the appearance of being "always on"
However, despite these numerous advantages, there are also some challenges associated with a SaaS business model. The greatest challenge is arguably the need to scale up – or scale down – instantaneously to manage changing subscriptions adequately without affecting usability of the software, without creating downtime of the service, or without paying for more servers than needed.
Any good SaaS business model needs to be scalable, and yet scaling efficiently is a major concern within the industry. This scalability concern is where ephemeral computing, or autoscaling, comes into play.
Something that is described as being "ephemeral" is something that only lasts for a short period of time; it’s temporary. In terms of computing, this means that a particular set service will not be used "as is" in the long term. Instead, it will experience ephemeral bursts to enhance the service or, in some cases, reduce the service as needed. Ephemeral computing has become a standardized solution in situations where requirements and the need for resources cannot always be accurately predicted in advance.
The idea of having too many servers, or not enough servers, simply does not exist with ephemeral computing; there is no such thing. Ephemeral computing services adapt to meet needs, with under-provisioning or over-provisioning no longer applying. Therefore, it seems reasonable to assume that the ability to autoscale, or auto shrink, has the potential to completely eradicate the SaaS scalability issue. (For more on SaaS, check out 11 Essential Steps for Implementing SaaS.)
SaaS and Autoscaling
One of the primary problems with a SaaS business model is that, despite best efforts, it can sometimes be pretty much impossible to predict the demand for a specific piece of software at any given time. Of course, with rolling contracts and trend analysis, it is possible to determine a typical monthly churn rate, but accuracy is still somewhat of a gray area. This is especially true for SaaS platforms which enable penalty-free exits during a contract, and in cases where new "fashions" create an influx of new users.
Generally speaking, things will typically go in one of two ways:
- In cases of a mass exodus, the business will be paying for resources they’re not using.
- In cases with an influx of new users, the servers may not be able to handle the demand.
Ephemeral computing and autoscaling is the answer, keeping a close eye on user data and adding or removing resources when needed, without the need for manual input. Essentially, to put it in its most basic terms, if a business has more subscribers one month, more resources (in most cases, servers) will be added to meet demand. With fewer subscribers, resources will be removed to minimize cost.
In many cases, autoscaling is customizable, allowing SaaS businesses to tailor the feature to ensure they’re seeing the most benefit. Generally, an autoscaling feature can be customized in three ways:
- To ensure optimal performance, boosting user experience and brand loyalty
- To take full advantage of the cost-saving benefits for budget purposes
- To find a happy middle ground between performance and cost
Autoscaling is a prime example of "real time," and demonstrates exactly why real-time features are becoming increasingly important for growing businesses. Just consider the rise in automated customer service chat boxes on websites, or the ability to communicate 24/7 with brands using social networks.
Traditional software escrow usually involves program source code and documentation relating to your service being held by an independent third party. This provides reassurance to a customer that, in the event of bankruptcy or, in SaaS cases, breach of contract regarding maintenance and updates, they could obtain the held data and be able to run their own instance of your service. However, for an autoscaling, cloud-based application, configuration settings, access keys, and infrastructure diagrams detailing deployments into the cloud would also need to be included for a comprehensive escrow service.
The concept of autoscaling isn’t just used within the SaaS industry. In fact, the idea is widely used, and has been for quite some time. For example, many home appliances feature built-in timers which can be set to instruct the machine to start during off-peak energy periods, making the appliances more cost effective to use. More recently, e-commerce retailers have used autoscaling features to ensure their apps are capable of handling the number of transactions expected during the busiest parts of the year (major holidays, for example), without needing to pay for such a service during the quieter periods.
What Does Autoscaling Bring to the SaaS Industry?
Autoscaling and ephemeral computing bring SaaS to the forefront of sustainable business models. They bring a sense of predictability to what is largely a very unpredictable world. However, above all else, they bring opportunity for SaaS business owners. Autoscaling allows businesses to ensure great performance while simultaneously utilizing the most cost-effective options, enabling businesses to boost their reputation, enhance customer experience, save money and grab new development opportunities.