How Alibaba is using Dapr

submited by
Style Pass
2021-07-29 09:00:13

The Distributed Application Runtime (Dapr) is an open-source, portable, and event-driven runtime. It enables developers to build elastic, stateless/stateful applications running on cloud platforms and edge devices. Dapr can lower the threshold for building modern cloud-native applications based on the microservice architecture.

At Alibaba, Java is widely used for business applications, various middleware servers, and basic capabilities. Over the past decade, Alibaba has built a solid Java based technology stack in various of battle tested scenarios.

However, as Alibaba’s business growing rapidly and its adoption of cloud-native technology, multi-language requirement, including Node.js, Golang, C, C++, and Rust, etc soon becomes a need. As a result, an efficient solution to develop microservices without language restriction is highly demanded.

Today, more of our business applications, especially frontend services, have begun to adopt FaaS and serverless as application hosting and resource scheduling solutions. However, FaaS and serverless scenarios require a more lightweight solution to meet fast start-up and scaling needs. In the conventional class library mode, a business application becomes bloated because a large number of SDKs must be integrated. It is more inconsistent for applications in the function form. Take Node.js as an example - Hundreds of lines of Node.js function code still need to depend on tens of MB of node modules. FaaS and serverless also pose higher requirements for multi-language support. Therefore, in FaaS and serverless scenarios, it is necessary to provide a more lightweight and multi-language solution different from the conventional class library approach.

Leave a Comment