FaaS, PaaS, SaaS, and IaaS Cloud Models — Choose the Best One for Your Digital Commerce Business
When your IT team deploys an ecommerce software solution, you have a choice of four cloud hosting models. Let's clarify - in fact, this is a choice of three options, since the FaaS model is experimental for online trading as of yet.
In recent years, a lot of articles have been published in corporate blogs explaining why the cloud model is better than using servers in your own office, and here we will not repeat this again. To host your ecommerce applications, there are many national-level cloud service providers (CSPs), or you may prefer to run your software on public clouds (AWS, MS Azure, Google Cloud, IBM Cloud, etc.).
- IAAS: DO-IT-YOURSELF IN CLOUD DEPLOYMENT
- PAAS MODEL: MAX FLEXIBILITY AND PRODUCTIVITY FOR YOUR MONEY
- SAAS: ALL-IN-ONE FEATURES BUT LOW CUSTOMIZATION
- FAAS: NEXT LEVEL OF ABSTRACTION
- IMPORTANT CLOUD MODEL FACTORS FOR BUSINESS OWNERS
- CLOUD PAAS MODEL AS OPTIMUM FOR B2B
- MAKE YOUR CHOICE OF ECOMMERCE CLOUD MODEL
- VIRTO COMMERCE PAAS SOLUTION
Image source: Microsoft (with FaaS added by the author)
A visual representation of what components are included in the FaaS-Serverless, PaaS, SaaS, and IaaS models can be viewed on the Microsoft website. You can also read there about the advantages and disadvantages of each model, but it seemed to us that this text contains too general wording and does not give specific answers about which cloud service model to choose for your ecommerce project. Therefore, let's talk about what recommendations we can give at Virto Commerce.
IaaS: Do-It-Yourself in Cloud Deployment
If you got your ecommerce system from a vendor in the form of a download directory or even an old-fashioned CD/DVD distribution kit, you could use IaaS as the most basic (but not the simplest) cloud model and an alternative to deploying servers and software on-premises.
What is IaaS? For Infrastructure as a Service (IaaS), the data center provides servers, as well as disk storage and multigigabit network connectivity, to the Internet backbone.
In Iaas, your organization pays for the provider's services on an operating cost basis (OpEx), or in other words, as a pay-as-you-go subscription. This payment method applies to any of the FaaS, PaaS, SaaS, or IaaS cloud models. Pay-as-you-go frees up the company's budget from capital expenditures (CapEx) for purchasing its own servers and other IT equipment.
In today's data centers, the IaaS service model allows the rented IT resources to be scaled up and down according to the progress of projects, as well as increasing or decreasing workload. You will be offered services that help prepare new applications to install – analytic dashboards that show server load and network traffic. A very important advantage of IaaS is the high availability of infrastructure in Tier III or Tier IV data centers with the redundancy of all engineering systems. The implementation of IT infrastructure on-premises with such high reliability is either impossible or would be extremely expensive.
A feature of IaaS, in contrast to the other 3 models of cloud services – FaaS, PaaS, and SaaS – is only the rental of hardware and a network connection to the Internet. The software, including the OS, according to the IaaS service model, is installed by your company, and the data center is not responsible for the valid operation of these applications.
However, if your IT team does not have people to set up servers in the provider's IaaS cloud, this is not a problem. The operating system, virtualization, and other basic software can be purchased from the data center and you can order the services of a system administrator or a network engineer to install and configure all required software.
If you ask in what case the cloud-based IaaS model can be recommended, this is when a platform purchased from a vendor offers an ecommerce solution as a cloud-ready, do-it-yourself installation. The possibilities for customizing the solution with the IaaS model are high, especially if the solution has open-source code. The vendor can often recommend an implementation partner who will carry out a customization project for the purchased ecommerce platform.
The advantage of the IaaS model is that you retain full control over hardware and applications, especially if your company has a professional IT team. This is also a disadvantage, since your company will bear the cost of wages for programmers, DevOps, network engineers, and administrators. There could also be losses from downtime and denial of service due to incorrect configuration of the servers, storage, network stacks, software installation, or updates made by your team.
“ To summarize about IaaS for ecommerce, this cloud model is the most suitable for online stores and marketplaces, where owners want to have high-grade control over the IT infrastructure, website, and other types of touchpoints, but do not want to invest a lot of money in building their own data center. ”
A few more words about protecting physical access to servers: although data centers are always well guarded from unauthorized access, companies looking to add another layer of physical security to equipment are provided with a separate server room or enclosed by a protective grill. The key to the lock is only with the client's admin and one representative of the data center, and video cameras are installed above the entrance and inside, streaming to your office.
PaaS Model: Max Flexibility and Productivity for Your Money
In the PaaS (Platform as a Service) model, your CSP provides IT hardware with preinstalled operating systems of your choice, with tools for creating, testing, and launching applications.
The convenience of the PaaS model is that you do not need to administer the system software. It is up to your team which application programs and development tools to deploy on the rented infrastructure. You can create and download your own code and install and administer databases.
If we talk about the typical features of an ecommerce solution as a PaaS, then in this case, the vendor provides the platform applications and the services for their installation in the data center. To provide it all for you, the vendor rents the IaaS in a third-party data center with excess capacity, and creates a script helping automatically install ecommerce solutions on a virtual machine or a dedicated server, depending on your subscription plan.
When you, as a customer, purchase an ecommerce solution from that vendor using a PaaS model, the vendor resells the hosting service to you and adds their application deployment service. For you, as a client, this looks like a significant convenience compared to the IaaS deployment, since there is no need to deal with hardware, operating systems, network settings, and installing applications from the ecommerce delivery package (aka installation kit).
The PaaS model retains the customer's ability to significantly customize the installed ecommerce solution. If it is necessary to implement unique functions without waiting for a vendor, then a PaaS is an excellent choice. You have no restrictions on customization of applications, including the availability of front-end APIs. Use the experience and knowledge of your IT team to create exactly what business processes you need based on a purchased ecommerce solution.
SaaS: All-In-One Features, but Low Customization
SaaS (Software as a Service) is a cloud model in which the vendor takes over all the tasks of deploying and maintaining applications. This includes cloud hosting of servers, operating system installation, virtualization and backup tools, middleware, and applications.
An SaaS ecommerce solution is developed, hosted, and maintained entirely by the vendor. This is a huge convenience for small and medium-sized businesses that want to go to market faster with their products and services and cannot afford to hire a large IT team of developers, network engineers, and admins.
Business users can buy access to SaaS ecommerce applications directly from a web browser (or mobile device) and then start working with the store and product catalog and conduct marketing campaigns from the admin panel, etc. The webstore is deployed for the customer literally right away, just after the initial payment, and is immediately ready to go.
The downside of an SaaS model is the limited customization options for the ecommerce solution. Clients have access only to those customization options that are provided by the vendor. Why is that? This can be easily explained using typical SaaS applications like Microsoft Office 365 or Google Workspace. Yes, there are many settings in these apps, but you cannot create your own function that was not provided by the vendor.
FaaS: Next Level of Abstraction
FaaS (Functions as a Service) introduces a new level of abstraction, in which the physical infrastructure and software architecture completely disappear, except for separate "functions" that are called to execute when the need for them arises. A function in FaaS has the highest level of abstraction as the smallest granulation unit of a large software application.
Although FaaS is often completely associated with serverless computing, it would be correct to name FaaS as a software component of serverless computing from the user's side. We will not dive in to explain here what serverless computing is and how it works. It's best if you learn the basic ideas of Serverless Computing, the advantages and disadvantages, from our article Everything You Ever Wanted to Know About Serverless eCommerce Platforms but Were Afraid to Ask.
With FaaS, a development team can split their application into individual functions and load them onto the FaaS programming platform. FaaS platforms are offered by global cloud service providers such as Microsoft Azure Functions, AWS Lambda, IBM Cloud Functions and Google Cloud Functions.
FaaS is considered to be very cost effective because you only pay for the server time when it is required to execute functions. But in reality, this is only true for very simple computational tasks. For complex applications such as ecommerce platforms, in addition to computing, you will have to buy many additional services from the cloud provider, which will downgrade the savings in launching functions.
In 2021, there is not a single commerce platform on the market that is using the FaaS cloud model, so we will not talk about it further. However, this technology looks promising, and future reviews will certainly include FaaS.
Important Cloud Model Factors for Business Owners
When a business owner discusses a cloud model for their ecommerce with the CTO, many options are being evaluated, many factors are involved, and the choice made will always be a compromise.
The smaller a company is and the shorter its story in the market, the more hope they place on online trading. Therefore, it is important for small companies to open their online store very quickly and inexpensively.
Medium-sized businesses and enterprises usually have a well-established offline sales channel, and it is more important for them to create an online webstore and a mobile application that will work for several years, albeit with updates, but within the same platform. In such large organizations, migrating software from one platform to another is always a very complex and time-consuming task.
Time to market, total cost of ownership (TCO) of the solution, and the cost of customizing the platform are the three main factors to consider first.
– Time to Market vs TCO
Today, time to market is the most important parameter that leading marketers consider to be the highest priority. Buyers choose the platform that delivers the fastest time to market, even if the cost of ownership is higher than with other cloud models.
As an example, you can find discussions on auto forums that premium car manufacturers like Mercedes, since the early 2000s, have been forced to release new cars in a rush that the old-school designers couldn't even imagine. The legendary "German quality" meant that every car model was developed and tested for several years before it went on sale. But today, several years of development is a path to project failure. In the current 2020s, it doesn't matter at all what products your company sells — cars, shoes, or something else, but it has become imperative to stay ahead of competitors in bringing products to market, or at least keep up with them.
– Customization Cost
You are lucky if the ecommerce solution offered by your SaaS vendor can cover the needs of your business right now and for some time beyond. Be sure to choose an SaaS platform that fits this criteria, i.e., it will provide the fastest way for your products to go online.
In other cases, when the basic functionality of the SaaS solution does not suit you, and even applications that extend the functionality (add-ons) will not help, you should prefer the B2B platform offered by the cloud PaaS model. This is especially true for the B2B market, where there may be special contract conditions and unique customization of the platform — choose the PaaS model or even the IaaS in such a case.
Cloud PaaS Model as Optimum for B2B
Although no one cloud model is a universal choice for a certain market niche, PaaS looks like the optimum for midsize companies, small businesses, and startups in B2B commerce. Let's take a look at these niches, at least a few of them.
– PaaS for Complex Products in Machinery and Engineering
Suppliers need to develop product configurators that take into account the design and configuration of machines. At the same time, there is a need to create a spare parts and consumables configurator, ideally with replacement tips if some consumables are temporarily unavailable.
– PaaS for International and Regional Expansion
In addition to the simplest UI options, like interface language and the currency of the country, there may be different catalogs and even different trade names for identical products (to get the product names, look in the local language).
– PaaS for Omnichannel Platform
Deeper development and customization should concern the architecture so that one platform can support stores in different sales channels (supporting omnichannel sales). Moreover, as stated above, the same platform should serve online trading in different countries and in different languages, currencies, and with different product catalogs.
– Choose SaaS for Quick Launch
Use SaaS when you want to launch a webstore as quickly as possible and you don't have the resources to customize the solution at the code level. Also, if you do not know anything about virtual machine and server configuring on CSP hosting, then SaaS will hide these things from you under the hood of the solution. And finally, if ranked by a business size, SaaS is most often the optimal cloud model for small businesses and startups, especially in the B2C field.
– PaaS as a “Golden Mean” Solution for Medium-Sized Businesses
With PaaS, your IT team gets a great balance between ease of platform administration and access to code, virtualization, server configurations, and databases. For small companies, PaaS can be too complex to use, while for enterprises it may have insufficient platform control.
– IaaS as Full Control Over the Platform Software
With IaaS, you can control operating systems, virtualization, development tools, and application software. The cloud provider retains the engineering infrastructure and premises, servers, storage systems, network devices, and firewalls. An IaaS cloud model is usually chosen by large and medium-sized companies. In small business niches, IaaS is chosen deliberately, with the full understanding that all the software will have to be deployed and maintained in-house. Often, IaaS is chosen by IT startups that develop complex software products.
It should be noted that the boundaries between the available resources in IaaS, PaaS, and SaaS models may differ slightly from one cloud provider to another. In efforts to maximize customer coverage, CSP providers are blurring the lines between cloud hosting models by adding more and more services for a better customer experience.
For example, in the IaaS model, a company can buy an operating system layer management service that brings it closer to the PaaS model, but retains control over the middleware layers, compilers, data, and applications. Even in the on-premises model, companies often host non-critical applications with a CSP provider, offloading their own IT infrastructure.
Virto Commerce PaaS Solution
We've said so much about SaaS, PaaS, or IaaS as a good choice for moving from on-premises systems to the cloud, so it's time to talk about what Virto Commerce offers. We have all three cloud models for the best possible ecommerce set of customization options on the market.
- Virto Commerce version 3.x for classic ecommerce installation in the cloud
- Virto Commerce Cloud SaaS was released in 2021 summer
- Virto Commerce Cloud PaaS solution preview announced in autumn 2021 (Let's talk about it right now.)
Before the latest PaaS solution, Virto Commerce Cloud launched its SaaS solution next to its cloud product. The SaaS product eliminates the need for initial Virto Commerce installation and setup. It also makes it easier to update, maintain, and support, as everything is managed by the Virto Commerce team. But as mentioned above, such a solution cannot provide you with complete flexibility, since the extension is due to configuration and API.
Therefore, the next step was the launch of Virto Commerce Cloud PaaS version, which is in preview mode at the time this post is being published.
Virto Commerce provides the development team with its PaaS solution for building, testing, and launching their own cloud ecommerce solutions, on top of a fully managed cloud cluster infrastructure. The Virto Commerce platform provides access to high-performance ecommerce application suites.
So, what is Virto Commerce Cloud PaaS? Let's take a closer look. Unlike other PaaS projects, the Virto Commerce team shares their best practices and provides access to ready-made ecommerce packages that can be used as is, expanded, or completely rebuilt, taking into account the specifics of the client project.
Virto Commerce Cloud PaaS provides everything you need to develop a modern ecommerce project, including cloud infrastructure, ecommerce platform software, smart scaling and monitoring services, access to high-performance applications, development and testing, and delivery environment.
What remains for developers to focus on is building packages, building extensions, custom business logic on top of a fully-managed core. You also have access to a self-service portal to manage infrastructure, deploy code, and monitor application performance.
High-performance PaaS apps allow companies to outsource services and support for ecommerce products to the Virto Commerce team. The list of applications is constantly growing and includes both basic services such as database (MS SQL), full-text search (elastic-search), file storage, CDN, cache (Redis), and specialized apps, such as a highly accessible ordering system capable of accepting up to several hundred orders per second.
Virto Commerce Cloud PaaS enables developers to focus on developing business scenarios without worrying about the architecture and maintenance of cloud ecommerce solutions. For more info and a Virto Commerce Cloud PaaS preview, please contact our team.
We've said a lot about the high availability, productivity, flexibility, and customization that cloud hosting models provide ecommerce solutions. The final advice is that you, too, be flexible in your thinking and even know how to abandon the wrong cloud model in the early stages of a project, so as not to fall under a cloud model’s limitations and successfully reach the desired online business marginality.
Find a good compromise to buy additional services from your CSP provider and ecommerce solution vendor that will give you a head start when it comes to bringing your online store to the market.