Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to arrange the priority of services in RSA #776

Open
xuzhenbao opened this issue Oct 17, 2024 · 1 comment
Open

How to arrange the priority of services in RSA #776

xuzhenbao opened this issue Oct 17, 2024 · 1 comment

Comments

@xuzhenbao
Copy link
Contributor

This issue is used to discuss the following issues:
If there are multiple remote service instances and local service instances that match the requirements, how to arrange these service instances so that users can select the best service instance.

Currently, I plan to solve this problem based on the following two points:

  1. If there are multiple Remote Service Admin Service instances, how to facilitate users to select the best remote service?

    If there are multiple Remote Service Admin Service instances in the same framework instance, the topology manager selects the best Remote Service Admin Service for importing services based on the Service Ranking Order, the same service (with the same endpoint.service.id and endpoint.framework.uuid property values) is only imported by the best Remote Service Admin Service.

  2. If there are local service instances and remote service instances that match the requirements at the same time in the same framework instance, how to facilitate users to prefer to use local services or remote services?

    To solve this problem, I plan to add a conan option remote_service_ranking_weight to specify the priority weight of remote services. When importing services, the topology manager sets the 'service.ranking' property of the remote service to remote service ranking weight + service.ranking. If remote service ranking weight is a negative number, the priority of local services is higher, otherwise the priority of remote services is higher.

@pnoltes
Copy link
Contributor

pnoltes commented Oct 22, 2024

Hi,

For 1. I agree with the approach; Use the RSA service ranking.

For 2. I would prefer a small adjustment: Instead of a conan option, use a config property based on the RSA name. Something like CELIX_RSA_MYRSA_IMPORT_SERVICE_RANKING_OFFSET and use the (negative or positive) value to adjust the provided export service ranking. I prefer something like offset of weight, because weight for me implies multiplication not addition/subtraction.

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

No branches or pull requests

2 participants