Serverless architecture does not mean that a server is not required, but rather that third-party cloud computing providers provide developers with required functionality, such as databases, messaging, and authentication, as a service. The core idea is to let developers focus on building and running applications without having to manage servers. Therefore, there is a great impact on the general programmer development, only need to stay in the business point of view although accelerate the pace of business, for the future business uncertainty greatly reduce the risk of investment, Solomon_ Xiao Ge bullet architecture hope we can master Serverless core architecture, I’ll talk about the principles of Serverless architecture design later.

Serverless

In the past decade, cloud computing has grown dramatically, enabling users to easily access almost unlimited computing power via apis and virtual machines. This model has many advantages. It is compatible with the original application development and running environment. This pattern enables a very smooth migration of legacy applications to the cloud.

The first phase of the cloud is the cloud of infrastructure, in this case the cloud hosting model. Based on cloud storage, network and other infrastructure to build applications, the core value of this model is resource flexibility and cost. In the next phase, cloud architecture will go far beyond infrastructure and see cloud services emerging in all areas. So how do you take advantage of the capabilities of cloud services today to build applications more quickly in a building block fashion, rather than reinventing the wheel, which is the cloud native model

The public cloud system is rapidly Serverless

Currently, mainstream cloud computing vendors are rapidly Serverless in their product systems, which is not a prediction of the future, but a fact that is actually happening. The data in the figure below is based on the statistics of new functions or forms of new services released by AWS, Microsoft and Alicloud. It can be seen that the vast majority of new services are Serverless.

Public cloud programming model

Cloud computing generates a large number of services that, from a performance point of view, are in the higher-level abstraction of Serverless form, which makes sense. If you re-examine the cloud product architecture from the perspective of the cloud programming model, you can see that the lowest layer is the infrastructure layer, which consists of two parts, IaaS and containers. On top of the infrastructure is the cloud native application operating system, and K8s is the de facto standard for managing the underlying IaaS infrastructure. There are very rich apis on top of the operating system, which is a fully hosted cloud service system. If we look at the product system of cloud manufacturers, we will find that cloud manufacturers provide rich product system, including database, big data, middleware, all of which provide services in Serverless fully hosted mode.

With so many cloud apis, the question today is how to design a common computing framework that makes very tight connections with these Serverless cloud services and cloud apis to help customers quickly build resilient, highly available applications. Therefore, Serverless computing appears in the framework layer. The main reason is that it needs to have a close chemical reaction with cloud API to help users improve the efficiency of application construction and operation and maintenance, and to help customers build a new generation of distributed, data-oriented and intelligent cloud native applications.

Differences between cloud hosting and Serverless applications

Serverless calculation

Serverless computing has four characteristics: first, there is no need to maintain cloud computing infrastructure, and application construction is more abstract and efficient; Second, it can achieve real-time elastic scaling, so that the future data-driven load sensing algorithm can achieve not only meet the very low latency, but also achieve high resource utilization; Third, the metering mode provides a very fine-grained on-demand mode, which can be measured by seconds and can be fully paid on demand. For users, the resource utilization is 100%; Finally, the ability to achieve high availability is built into the platform layer.

Serverless Product system

As a caveat, Serverless computing is just one part of cloud vendors’ Serverless offerings, which also include storage, apis, analytics, middleware, and more. Therefore, from this perspective, Serverless is not a very new concept. The earliest OSS object storage is a Serverless product. It can be seen that the cloud product system is being Serverless. It is only in recent years that a general-purpose Serverless computing platform such as functional computing has emerged, enabling the Serverless architecture products to be linked together to build a Serverless application.

In the past, if you wanted to bring an application online, you had to know in advance how many servers it would need, how much storage, how many databases, etc. You also need to install other software that your application depends on. But with Serverless, you don’t have to worry about setting up and managing it all

Serverless several features:

  • event-driven
  • Automatic expansion and expansion
  • stateless
  • No need to manage the server yourself
  • Low cost, charge on demand, do not run no charge

🏆 issue 7 | all things can be Serverless technology projects