Details
-
Task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
Description
1.when deploy or upgrade, microservice instance will start with status: TESTING, all consumers will not invoke this instance
2.test tool will invoke the instance with special ip, after test finished successfully, test tool will change the instance status to UP, all consumers can invoke this instance now.
3.this instance will publish a event with old instance and new instance, to let business logic know: my instance changed.
tasks:
- SC add a status: TESTING (already finished)
- SC add batch pull instances api, and supoort pull special instance in this api (already finished)
- SDK allow control status from configuration
- SDK change loop pull all target microservice instance to batch pull, and pull self instance, when self instance changed, publish a new event
incompatible:
RegistryUtils.getServiceRegistry() .getAppManager() .getOrCreateMicroserviceVersionRule(......) .getVersionedCache()
old version: only return instances which status is UP
new version: return all instances