This topic describes how to make an High-speed Service Framework (HSF) call.
In one HSF call process, the HSF consumer initiates a request to the HSF provider, and returns the result returned by the HSF provider to the user. This process involves multi-thread interaction and different domain objects in HSF.
The following figure shows the HSF call process:
|1||In the client thread, parameters of the user request, that is, the request object,
are serialized and then stored in the request communication object.
Note The request communication object uses the HSF protocol and contains multiple items, such as the request ID, that are irrelevant to the request object.
|2||The system submits the request communication object to the I/O thread and encodes the object in the I/O thread.|
|3||After the encoding is complete, the content is delivered to the HSF provider. The client thread waits for the result.|
|4||The I/O thread of the HSF provider receives the binary content, decodes the binary content into the communication request object, and submits it to the HSF server thread.|
|5||The HSF server thread deserializes the communication request object and restores it to the request object.|
|6||The HSF server thread initiates a reflection call and gets the result, which is the response object.|
|7||The HSF server thread serializes the response object and stores the result in the communication response object.|
|8||The HSF server thread submits the communication response object to the I/O thread and encodes the object in the I/O thread.|
|9||After encoding the object in the I/O thread, the HSF provider returns the object to the HSF consumer.|
|10||The HSF consumer receives the binary content, decodes the binary content into the communication request object in the I/O thread, and wakes up the client thread.|
|11||The client thread deserializes the response communication object. When the user receives the response object, a remote call ends.|