Home Blog Talks

Why doesn’t the complexity of FaaS systems increase exponentially with scale?

2021-06-26

The back-end of Baobaoshe is completely based on FaaS architecture, supporting the entire enterprise’s business from front-end to back-end.

In the next few articles, I will talk to you about the benefits that Baobaoshe has gained from the FaaS architecture, and provide some ideas for discussion.

Today, let’s talk about the benefits of FaaS in terms of system complexity: Why does the complexity of FaaS systems not increase exponentially as the scale increases?

As most enterprises grow in scale, they need to go through a process of reconstruction from monolithic applications to microservices.

By splitting complex business modules, a large and complex system can be turned into relatively simple and easy-to-maintain small systems. But with further growth in scale, these initial small systems will gradually turn into behemoths, and then face another split.

FaaS is a system based on functions. Each function only processes a single business process. If the business process becomes complex, one function can be atomically expanded into multiple functions. Each function still only processes a single function. Business Process.

As the scale grows, a large number of cloud functions (that is, functions deployed to the cloud environment) will be deposited. However, because cloud functions will lock the dependencies and other information at the time when they are deployed, these cloud functions can work normally permanently without any need. Operation and maintenance.

In other words, FaaS developers only need to focus on the incremental development and do not need to pay attention to the maintenance of the inventory.

Assume further that when the growth is stable, the development workload is also stable.

Therefore, the same development investment can produce sustained and stable output under the FaaS architecture, while under the microservice architecture, the output will gradually decrease over time.

On the other hand, in order to obtain sustained and stable output, the FaaS architecture only requires continuous and stable investment, while microservices require continuous and increasing investment.

What’s more, as development investment increases, the cost and difficulty of technical management and personnel management will increase exponentially.

In the past, enterprises had to bear this additional risk, but in the cloud era, FaaS has become a feasible infrastructure. Are you following?

Back to all posts