What is Serverless Computing?

What is Serverless Computing?

Introduction

Innovation in the world of computing occurs at a startling pace in each and every area, generating important progress in the processes related to “Serverless Computing”, also known as “Serverless Architecture”.

In this context, an increasing number of companies are turning to the “Cloud” as a way to optimize the creation and execution of applications and processes, minimizing the use of servers. This is where Serverless Computing comes in as a key element for the proper development of internal software architecture.

Although Serverless Computing reduces the use of a server, the server does not disappear in its entirety; it is simply optimized and reassigned by the cloud provider, who will ultimately be responsible for all the routine activities associated with the servers’ maintenance.

Background

In the beginning, creating a web application required the use of hardware that would allow the execution of a server, sometimes resulting in a complicated and expensive process. Later on, when the cloud came along, companies and developers had the possibility to rent spaces on remote servers to carry out their activities.

However, this process was not entirely efficient either, since companies ended up buying more space than necessary in order to ensure the system would remain stable in case of very high demand peaks, thus incurring in additional expenses. This is why developers began to see the need for a platform that would allow them to pay only for the space used.

In this sense, the story of Serverless Computing is recent, the first reports of this technology being found in an article by the specialist in decentralized applications and serverless development, Ken Fromm, published in October 2012, titled “Why the Future of Software and Apps is Serverless.”

By November 2014, the Amazon company launched its “AWS Lambda” service, which allows developers to execute code and automatically organize resources without the need to manage the underlying infrastructure during.

A year later, in July 2015, Amazon created “API Gateway”, a service for the creation and maintenance of API REST, HTTP and WebSocket, where developers can generate Application Programming Interfaces that access Amazon or other Web Services, as well as data stored in the cloud. Finally, in October 2015, “Serverless Framework” was born as the first framework developed for creating applications on AWS Lambda.

Serverless architecture overview

Serverless Computing, or serverless architecture, does not imply the total absence of a server as such; what this system actually seeks is for the cloud provider to adequately and efficiently manage all processes related to the server.

In this sense, one of the outstanding features of Serverless Computing is the ability to let go of the traditional way of managing servers in a company, replacing it with automated management by the cloud provider.

This means that the cloud provider is responsible for managing all organizational resources during the execution of a particular activity, leaving behind the old administrative action carried out by users within the organization.

Under this new scheme, a company’s IT activities are billed according to the need for resources for each particular task, thus creating a clear contrast with the old model where often unused spaces were hired: this allows for major capital savings, since the company only pays for what is actually used.

In addition to the above, the Serverless Computing model eliminates the need to make server reservations. As a result, developers no longer need to access the server through an Application Programming Interface (API) to add resources, since the cloud provider is now responsible for doing this automatically.

Advantages

Serverless Computing has a number of advantages when compared to the traditional model, including the following:

  • It significantly reduces developer operating costs by allowing developers to pay only for used space.
  • Higher productivity for companies, with the possibility to assign tasks related to the administration of servers to third parties, and thus focus directly on application development.
  • Serverless Computing platforms reduce the time associated with marketing, since developers will have the option of gradually modifying or adding code.
  • Providers of this new service can manage everything related to code scaling under real demand.
  • Ability to focus on unifying software development and its operational capacities, that is, adopting “DevOps” system engineering practices.
  • Optimized application development incorporating essential components of the BaaS model offered by other providers.

 

Disadvantages

Regarding the disadvantages or downsides of Serverless Computing, the following may be mentioned:

  • Significant restriction on the interactive capacity of cloud providers, directly affecting system customization and flexibility.
  • Dependence on service providers.
  • It could cause some problems associated with the lack of control of the company’s own servers.
  • Access to virtual machines and operating systems is limited.
  • Implementing a serverless architecture implies an economic effort, since it typically requires updating the systems to meet the provider’s demands.

What role does the cloud provider play in Serverless Computing?

Cloud providers play a fundamental role in serverless architecture, since they are in charge of running the servers and allocating resources for developers at the same time.

In this sense, cloud providers offer two main methods within the Serverless Computing scheme, called “Function as a Services” (FaaS) and “Backend as a Services” (BaaS).

The first method, “Function as a Services” (FaaS), allows developers to apply micro services when writing and updating different codes to be implemented in the cloud, thereby simplifying the incorporation of data, reducing execution times, as well as ensuring a timely management of the supplier.

On the other hand, the “Backend as a Services” (BaaS) method is based on the provision of services to third parties based on the Application Programming Interface (API) established by the provider, such as databases, authentication services, and encryption processes.

Finally, it is worth noting that large cloud providers work under the “Function as a Services” (FaaS) mode, such as AWS Lambda from Amazon, Azure Functions from Microsoft, IBM Cloud Functions and Google Cloud.

Conclusion

Serverless Computing has certainly had a significant impact in the world of computing, allowing developers to focus on creating software without having to worry about the application management or production code, since the cloud provider is in charge of efficiently managing the resources necessary for this important activity.

Would you like to learn more about this subject? Please visit our IT Continuity page to learn more about the services we offer related to infrastructure and custom Software Development.

Enterprise Blockchain Use Cases

Enterprise Blockchain Use Cases

In previous articles, we went through an “Introduction to Business Blockchain” and summarized the “Technical Characteristics of Blockchain“. In this latest installment of the series, we will focus on the most widespread usage patterns and analyze a flagship case of Supply Chain, aside from Decentralized Finance (DeFi).

Use cases
When analyzing the use that is being given to Blockchain in the corporate sphere, it is possible to detect some common and recurring usage patterns:

Banking and Finance
DeFi includes digital assets, protocols, smart contracts, and Distributed Applications (dApps). It is the original use case and it involves everything related to cryptocurrencies and the financial world in general. We can mention Ripple, a global network of electronic payments, with the support of institutions such as Santander, Itaú, American Express, among others. Another example is Santander One Pay FX, a Blockchain network to streamline international transfers.

Supply Chains
After DeFi, it is the most popular use case. Blockchain allows the complete traceability of any good, from the producer to the final consumer, be it raw materials, food or medicine, in the case of Pharmacovigilance. IoT (Internet-of-Things) devices are also commonly used for automated registration in different stages of a workflow. There are already numerous success stories in several industries, such as food (Walmart and later IBM Food Trust is the most emblematic cases that we will analyze), pharmaceuticals (Novartis), automotive (Ford, BMW, Tesla), among others.

Audit
Leveraging immutability, one of the distinctive characteristics of Blockchain, stored transactions cannot be modified at a later stage, which allows a complete audit of critical information. This is used in Fraud Prevention, Claims Management, Insurance (BBVA), Health (EHR, Medical Records Management with projects such as MedicalChain & MedRec) and Pharmacovigilance (for example, the Pharmaledger project).

Public Administration
Currently, many governments around the world are conducting research on how to take advantage of the benefits of Blockchain in Citizen Identity systems, voting, budgets, and public tenders to increase the efficiency and transparency of the State. Latin America strives not to be left behind, and many developments are already underway. Argentina has several projects on the Argentine Federal Blockchain network (BFA), such as sessions of Deputies in Congress, Central Bank Complaints Registry, Citizen Files in the City of Buenos Aires, among others. Brazil, Peru, and Uruguay are also making strides. Globally, the United Arab Emirates, especially Dubai, plans to become a fully Blockchain-governed, paperless city by 2021 through the Smart Dubai project.

Certified Information
Many institutions use Blockchain for the certification and validation of all types of workforce, personal and educational records (Citizen Files in Buenos Aires).

Data Sharing
In a new human-centered model, people take control of their information, centralize it to decide who can access their data. For example, patients own their complete Medical Records and can give access to them to the professional who needs them (EHR MedicalChain & MedRec), citizens can share their credentials (Sovereign Digital Identity projects in Argentina, Data Sharing Toolkit in UAE, etc.)

Asset Tokenization
Blockchain is used for the management of digital assets, in the exchange of all kinds of goods between individuals or entities, such as tickets to shows (UEFA & Ticketmaster), loyalty program points (American Express), real estate (UK Land Registry in England), etc.

Copyright
This technology is used to create records with date, time and authorship, to optimize the management of Intellectual Property. Used by Kodak with Photo Tracking and Spotify Mediachain to accurately attribute songs to creators.

Use Case: Food Supply Chain
Among the many use cases of Blockchain, its application in a supply chain is one of the most emblematic, and developments can be seen in all industries.

In a food supply chain, multiple actors have involved: farmers, ranchers, suppliers, cooperatives, packers, transporters, exporters, importers, wholesalers, retailers, and, lastly, the final consumer. Health safety is one of the biggest concerns in the food industry. Like the pharmaceutical industry, the food sector faces increased regulatory pressure from government agencies.

Walmart is a pioneer in this field, having tried several times to create a system that allows for transparency and complete traceability in the food system, which was finally accomplished in 2016. Blockchain, with its decentralized and shared ledger, seemed tailor-made for the Company’s needs. Walmart began working with its technology partner IBM on a food traceability system based on Hyperledger Fabric. For the Chinese pork industry, it allowed uploading certificates of authenticity, which gives more confidence to a system where certificates used to be a serious problem. For mangoes in the United States, the time needed to trace their origin went from 7 days… to 2 seconds!

The newly developed system allows users to know the exact origin of each item (to control disease outbreaks) in seconds, discarding only products from the affected farms. For example, it allows customers to scan a jar of baby food to see where it was made, tracing all the ingredients back to the farms.

As a result, the IBM Food Trust was launched, involving multiple companies such as Nestlé and Unilever. This platform allows access to the following information in real-time:

  • Inventory at each location.
  • The freshness of each product.
  • Average time on the shelf.

Blockchain allows a product to be traced through the different industrial, logistical, and administrative operations, from the beginning of the process to the end, and vice versa. In this way, a secure and distributed record can be consolidated with the history of every actor in the chain, their exchanges during the production and distribution processes of the product, managing information in a reliable and tamper-proof manner. As automatic transactions have no intermediaries (such as banks), they allow for faster settlements under conditions set forth in smart contracts.

IoT and Blockchain combined offer great benefits. Sensors can capture a variety of data in manufacturing facilities or transportation, transmitting all the information to a centralized repository in real-time. In turn, Managers can gain a multitude of new insights into material usage, transport conditions, etc., and apply them in planning/optimization efforts. Producers can use IoT to register the entire growth process of the product (food, pesticides, humidity, storage, location). Carriers can automatically ensure that products are moved under the right conditions of temperature, humidity, etc., thus achieving better visibility into overall logistics.

Conclusions
Throughout this 3-articles series, we learned about Blockchain technology and its application in the business environment. We were able to understand its basic operation, the most prominent platforms and its current application in many industries.

How can Huenei help your business with Blockchain?

  • Consultancy: We help you choose the technology that best suits your needs.
  • Architecture: Definition, deployment, and start-up.
  • Development: Smart contracts and complete systems based on Blockchain.

We work with you from the planning and definition of requirements to the start-up of the final project.