High-speed Service Framework (HSF) is a distributed Remote Procedure Call (RPC) framework widely used in Alibaba Group. HSF decouples distributed applications through a unified service publishing and invocation model. It handles remote communication, serialization, performance loss, and synchronous and asynchronous invocation so that application code stays focused on business logic.
Dubbo 3.0 integrates open-source Dubbo and HSF. To upgrade an existing HSF application, see Update an HSF application to a Dubbo 3.0 application. You perform the upgrade through the Enterprise Distributed Application Service (EDAS) console. You can develop the upgraded application by using the original method or the microservice governance feature provided by EDAS for Dubbo applications.
Architecture
HSF runs entirely on the client side -- no central cluster processes requests. All service calls are point-to-point between providers and consumers. HSF depends on several external systems for service discovery, governance, and operational visibility.
Data plane
The data plane consists of the service providers and consumers that exchange data directly through RPC calls.
| Component | Role |
|---|---|
| Service provider | Listens on port 12200, processes incoming requests, and publishes its address to the address registry. |
| Service consumer | Subscribes to service addresses through the registry and initiates point-to-point calls based on the retrieved address information. The address registry is not involved in calls. |
Control plane
The control plane manages service discovery, configuration, and operational visibility.
| Component | Role | Required |
|---|---|---|
| Address registry | Stores provider addresses for service registration and discovery. Without it, only direct point-to-point calls are possible. | Yes |
| Persistent configuration center | Stores governance rules such as routing, grouping, and weighting rules. Consumers subscribe to these rules at startup to determine address selection logic. | Not explicitly stated |
| Metadata storage center | Stores service metadata such as method signatures and parameter structures. Does not affect service calls. When HSF starts up, the consumer reports metadata to the metadata storage center to facilitate service O&M. | No |
| EDAS console | Connects the registry, configuration center, and metadata storage center. Provides service query, governance rule management, and other operational features. | No |
Supported call methods
HSF supports the following call methods:
| Method | Description |
|---|---|
| Synchronous | Default method. The consumer blocks until the provider returns a result. |
| Asynchronous (Future) | The consumer continues execution and retrieves results later through HSFResponseFuture.getResponse(int timeout). |
| Asynchronous (Callback) | The consumer registers an HSFResponseCallback handler. HSF invokes the handler when results are available. |
| Generic | The consumer calls services without importing provider API interfaces. Useful for building lightweight, platform-level integrations that do not depend on provider SDKs. |
Trace filter extension
HSF includes a built-in call filter mechanism. You can implement custom filter extension points that integrate into the HSF call trace. These extensions process HSF requests.
Application development
HSF supports two development and deployment models:
| Model | Runtime dependency | Supported features | Deployment format |
|---|---|---|---|
| Ali-Tomcat | Ali-Tomcat + Pandora | Service registration and discovery, implicit parameter passing, asynchronous calls, generic calls, trace filter extension | WAR package |
| Pandora Boot | Pandora | Service registration, service discovery, asynchronous calls | Executable JAR package |