One of the most discussed topic of recent time is serverless. Like many trends in software engineering and web services, serverless is still confusing to many of the potential customers. We believe that we have clarified what is serverless, what is FaaS, what are the differences between serverless and FaaS, why serverless is different from the other cloud services. On a serverless platform, the applications depend on third-party services (read Backend as a Service and MBaaS) or on custom code which runs on the ephemeral containers (that is the FaaS). In the previous articles, we have explained in lucid langugage with little example of present use-cases.
We believe that Serverless architectures are the future of web development. If we look at the history of web development and the way the landscape has changed over the decades since the web came to be, one pattern is abstraction from the underlying hardware. Developers have become more and more abstracted away from having to deal with the actual hardware of the machine their code runs on. To the point now with Serverless where we could have our code running across multiple machines across multiple data centres across multiple regions at the same time, at scale and cost-effectively and we don’t need to know or care about the exact details. What also helps in justifying this belief is the amount of effort the various cloud vendors are putting into getting their Serverless services up to speed and improved to make things better.
The Foundation of Serverless and FaaS Not Yet Completed
We are seeing the beginning of a new style of infrastructure delivery model with the name of serverless. The future of this serverless is bright if you only think of the increasing number of LTE smartwatches. We give the example of a static webpage to talk about use-case of serverless but that is only for making all of the readers understand the matter. The real potential usage of serverless is in the enterprise-grade software and the wearables or rather, whatever related to the Internet of Things.
Serverless Has Too Many Opportunities
Human will invent new ways, not all of them will ever be usable. It is impractical to blame a thing without understanding the probable use case. As we pointed in our one article before – serverless is not suitable to run our this website. If we forcefully convert our website to run on a serverless platform, there will be performance degradation, the bill will be more than we pay now! Converting any kind of website for serverless is not an ideal example use-case of serverless.
Previously, we could not make an HTML webpage with real-time toggle buttons with Arduino/ESP32. Still now we show bash command via IBM Watson IoT to control a remote ESP32 or need to use some mobile app for the developers. It is an example use-case of serverless at makers’ level – we have to deliver the things as easy, fail-proof, easy to follow, low-cost steps. Work of the makers is to omit many things of engineering. We gave just a unique example. Obviously, there are tons of enterprise-grade examples.
Oddly, many customers like vendor lock-in. Microsoft Windows is more known to a layman than GNU/Linux. The vendor lock-in probably adds a positive point to push serverless. The professional engineers often want a known thing which works and bugs are regularly fixed. Open-source is a great word to us, often not to the professional engineers managing an infrastructure.
Image credit : https://serverless.github.io
There will be peoples to criticize instead of sharing codes as examples of what can be done. The same peoples once used to criticize IaaS. WordPress runs best on a dedicated server. But OpenStack like IaaS is the best for backing up a live WordPress website. Cloud computing is helping us to get an enterprise-grade backup strategy at very low cost avoiding to use the shared web hosts. It is mental torture only to manage one MySQL instance of a high-load server. Serverless has a hype part, but after considering how technology evolves, it has a bright future.