Skip to content

Add remote service ranking#839

Open
xuzhenbao wants to merge 4 commits intoapache:masterfrom
xuzhenbao:add_remote_service_ranking
Open

Add remote service ranking#839
xuzhenbao wants to merge 4 commits intoapache:masterfrom
xuzhenbao:add_remote_service_ranking

Conversation

@xuzhenbao
Copy link
Contributor

The PR is used to resolve the issue #776. However, there are some adjustments to the implementation.

I have defined a configuration property CELIX_RSA_IMPORTED_SERVICE_RANKING_OFFSETS. This property is used to specify the offset values for the imported service ranking. The value of this property is a comma-separated list of <config type>=<ranking offset>. It allows user to configure the ranking of imported services based on the configuration type of service. For example, if the user wants to set a higher ranking for imported services with the configuration type "celix.remote.admin.shm" than the imported services with the configuration type "celix.remote.admin.http", and the imported services rankings are lower than the local services(The default ranking of local service is 0.), you can set the property as follows:"celix.remote.admin.shm=-1,celix.remote.admin.http=-2".

In addition, in order to ensure that the imported services that are being called can complete their operations before they are removed, when the import registration is closed, I used the synchronous method to unregister the imported service. The relevant modification can be found in rsa_json_rpc_proxy_impl.c.

@PengZheng PengZheng requested a review from pnoltes March 18, 2026 06:52
@xuzhenbao
Copy link
Contributor Author

In the current implementation, if the same service is imported by multiple Remote Service Admins (RSA), I will remove the imported service with the lower ranking. Is this redundant? Because the ranking is a property of the service, and the service consumer can get the service with the higher ranking as needed.
I think I should remove this part of the logic.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant