The next big thing: Serverless
Latest posts by Nande Konst (see all)
- How to create an Ionic App with Jexia Part 2: Local Notification / Real time events - July 19, 2016
- The next big thing: Serverless - June 17, 2016
- How to create an Ionic App with Jexia Part 1 - April 8, 2016
Serverless computing, what problems does it solve?
These days we are starting to hear more and more about the term "Serverless" and it's popularity is increasing rapidly. More and more developers adopt the approach of using API Serverless architectures build entirely in the cloud. API Serverless architectures enable developers to store their data in the cloud and build and manage their API’s on top of it. Most of the API Serverless products offer a Serverless environment that manages authentication, API design, hosting and usage tools.
When developing an app depending on an API, you will need to think about authentication and API design, API architecture and API management. These activities are time-consuming and hold you back from focussing on the features of the app itself. When you use Serverless products these activities have already been taken out of your hands so you can focus fully on your application.
Over time your product will mature, traffic increases and scalability problems will start to arise. This means you will need to invest in material and people to stay ahead of these kind of problems. By using Serverless products the costs to produce and maintain your applications significantly drops. You don't need your own servers and no network engineers are needed to maintain them.
Besides this, developers don't need to worry anymore about authentication systems themselves, which will save an incredible amount of time. Serverless environments come with easy to use and very sophisticated authentication systems.
In the sector, roughly we can discern three types of Serverless products:
Products that generate API’s for you that offer the same quality as building an API from an internal environment but with all the data and functionality accommodated in cloud servers. Next to that they offer API management tools and API usage monitoring tools.
Products that help to create an abstraction layer that funnel data and services into one API. Developers need to be able to combine data coming from different sources into a single API.
API CRUD Makers:
Products that help developers create, read, update and delete data through an API
Why Serverless application development became so popular
Over the years user experience became more important and led to a continuous conversation between businesses and their customers, resellers and partners. Developers were confronted with the management of their backend structures and were forced to solve complex architectural problems when an application became popular and started to consume a lot of resources. This stops the developer from focussing on the application itself which ceases innovation.
Yet, this is not the only reason why Serverless infrastructures became so popular. Enterprises wanting to prototype a new product, governments making their data available through digital services and startups testing a new idea. They are all looking for ways to create their services fast without having to contemplate about managing servers.
What do we use Serverless products for?
Serverless products are used to speed up development time and create uniformity in the development process. The most common use cases include:
Serverless environments give an opportunity to convert an idea into a working piece of software that can be maintained in production. Companies can easily create API’s that simulate existing data and put a REST interface on top of their application. This way proof of concepts can be built with little effort.
Mobilizing legacy databases:
Whenever a mobile or a web application is built, the existing database will be copied to a cloud based version where APIs can be created on top of it. These API’s now can look after the data exchange between the application and the database.
As companies grows and with them their mobile application portfolio, they look for ways to standardize their API’s so multiple applications can be built on top of it. This approach speeds up time and efficiency.
Factors that hold back API adaptation:
One of the biggest fears among users of Serverless architecture products is the fear of vendor lock in. Some products prevent their customers from migrating their data and API’s when the customer decides to an alternative service or wants to host them in-house. Other products have an open source model to gain more trust when it comes to migrating data and API’s.
The fear of becoming dependent on a Serverless products provider is big. Next to vender lock ins a Serverless products provider can decide to cease their services. Imagine if your Serverless products provider runs out of business and you are hosting over 100 applications on top of their services? To migrate all these data will definitely hurt. Yet, these disadvantages do not counterbalance the advantages Serverless products have to offer. If your Serverless products provider is transparent about its business activities and offers good migration tools there shouldn't be too much of a problem. For us at Jexia, transparency is one of the key factors of our mission statement. We want you to have access to your data whatever happens. That is why we decided to make all our tools open source so you can always be in control.
Serverless is here to stay
In a fast developing software market we see an increasing demand among companies for Serverless products. This is caused by the importance to speed up development time and connected to this the decrease of development costs. Also, Serverless products help to easily create API’s on top of your existing data, which will save a lot of time. It’s expected that Serverless products will soon become core components of application development.