[ 
https://issues.apache.org/jira/browse/SCB-1529?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

zhouzhongyuan updated SCB-1529:
-------------------------------
    Description: 
The service-center client provides the following APIs:

1. Get service-center instances message 
 based open api: GET /registry/health
 function:getServiceCenterInstances()
 param:null
 return:MicroserviceInstancesResponse (a data model of microservice instances 
list )

2. Register microservice to service-center
 based open api: POST /registry/microservices + body(Microservice)
 function:registerMicroservice(Microservice microservice)
 param:Microservice (a data model of microservice)
 return: serviceId (microservice ID)

3. Find all registerd microservice of service-center
 based open api: GET /registry/microservices
 function:getAllMicroservices()
 param:null
 return:MicroservicesResponse (a data model of microservice list)

4. Get one microservice message of service-center
 based open api: GET /registry/microservices/\{serviceId}
 function:getMicroserviceByServiceId(String serviceId)
 param: serviceId (microservice ID)
 return:Microservice (a data model of microservice)
 
 5. Register microservice instances to service-center
 based open api:

     POST 
/registry/microservices/\{serviceId}/instances+body(MicroserviceInstance)
 function:registerMicroserviceInstances(MicroserviceInstance instance, String 
serviceId)
 param:MicroserviceInstance (a data model of microservice instance) ;
 serviceId (microservice ID)
 return:instanceId (microservice instance ID)

6. Find microservice instances of service-center
 based open api: GET /registry/microservices/\{serviceId}/instances
 function:getMicroserviceInstancesByServiceId(String serviceId)
 param:serviceId (microservice ID)
 return:MicroserviceInstancesResponse (a data model of microservice instances 
list)
 
 7. Get microservice instance message of service-center
 based open api: GET 
​/registry​/microservices​/\{serviceId}​/instances​/\{instanceId}
 function:getMicroserviceInstanceByServiceIdAndInstanceId
 param:serviceId (microservice ID) ;
               instanceId (microservice instance ID) 
 return:MicroserviceInstance(a data model of microservice instance)
 
 8. Delete a microservice instance
 based open api: DELETE 
​/registry/microservices/\{serviceId}/instances/\{instanceId}

function:deleteMicroserviceInstanceByInstanceId
 param:serviceId (microservice ID) ;
               instanceId (microservice instance ID) 
 return:response  content (String type)

9. Update status of microservice Instance
 based open api: PUT 
​/registry/microservices/\{serviceId}/instances/\{instanceId}/status
 function:String updateMicroservicesInstanceStatus ( String serviceId, String 
instanceId,
 MicroserviceInstanceStatus status )
 param:serviceId (microservice ID) ;
               instanceId (microservice instance ID) ;
               MicroserviceInstanceStatus status ( a enum model of microservice 
status)
 return:response  content (String type)

10. Send heartbeats to service-center
 based open api: PUT /registry/heartbeats
 function:String sendHeartBeats(HeartbeatsRequest heartbeatsRequest)
 param:HeartbeatsRequest (a data model of heartbeat request)
 return:response  content (String type)

 

  was:
The service-center client provides the following APIs:

1. Get service-center instances message 
 based open api: GET /v4/{project}/registry/health
 function:getServiceCenterInstances()
 param:null
 return:MicroserviceInstancesResponse (a data model of microservice instances 
list )

2. Register microservice to service-center
 based open api: POST /v4/{project}/registry/microservices + body(Microservice)
 function:registerMicroservice(Microservice microservice)
 param:Microservice (a data model of microservice)
 return:serviceId 

3. Find all registerd microservice of service-center
 based open api: GET /v4/{project}/registry/microservices
 function:getAllMicroservices()
 param:null
 return:MicroservicesResponse (a data model of microservice list)

4. Get one microservice message of service-center
 based open api: GET /v4/{project}/registry/microservices/{serviceId}
 function:getMicroserviceByServiceId(String serviceId)
 param:serviceId
 return:Microservice (a data model of microservice)

5. Register microservice instances to service-center
 based open api: POST 
/v4/{project}/registry/microservices/{serviceId}/instances + 
body(MicroserviceInstance)
 function:registerMicroserviceInstances(MicroserviceInstance instance, String 
serviceId)
 param:MicroserviceInstance (a data model of microservice instance), 
               serviceId 
 return:instanceId

6. Find microservice instances of service-center
 based open api: GET /v4/{project}/registry/microservices/{serviceId}/instances
 function:getMicroserviceInstancesByServiceId(String serviceId)
 param:serviceId
 return:MicroserviceInstancesResponse (a data model of microservice instances 
list)

7. Get microservice instance message of service-center
 based open api: GET 
​/v4​/{project}​/registry​/microservices​/{serviceId}​/instances​/{instanceId}
 function:getMicroserviceInstanceByServiceIdAndInstanceId
 param:String serviceId,
               String instanceId
 return:MicroserviceInstance(a data model of microservice instance)

8. Delete a microservice instance
 based open api: DELETE 
​/v4/{project}/registry/microservices/{serviceId}/instances/{instanceId}
 function:deleteMicroserviceInstanceByInstanceId
 param:String serviceId,
               String instanceId
 return:response  content (String type)

9. Update status of microservice Instance
 based open api: PUT 
​/v4/{project}/registry/microservices/{serviceId}/instances/{instanceId}/status
 function:String updateMicroservicesInstanceStatus ( String serviceId, String 
instanceId,
 MicroserviceInstanceStatus status )
 param:String serviceId,
               String instanceId,
               MicroserviceInstanceStatus status ( a enum model of microservice 
status)
 return:response  content (String type)

10. Send heartbeats to service-center
 based open api: PUT /v4/{project}/registry/heartbeats
 function:String sendHeartBeats(HeartbeatsRequest heartbeatsRequest)
 param:HeartbeatsRequest (a data model of heartbeat request)
 return:response  content (String type)

 


> Add java client of service-center to apache-java-chassis
> --------------------------------------------------------
>
>                 Key: SCB-1529
>                 URL: https://issues.apache.org/jira/browse/SCB-1529
>             Project: Apache ServiceComb
>          Issue Type: New Feature
>          Components: Java-Chassis
>    Affects Versions: java-chassis-1.3.0
>            Reporter: zhouzhongyuan
>            Priority: Major
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> The service-center client provides the following APIs:
> 1. Get service-center instances message 
>  based open api: GET /registry/health
>  function:getServiceCenterInstances()
>  param:null
>  return:MicroserviceInstancesResponse (a data model of microservice instances 
> list )
> 2. Register microservice to service-center
>  based open api: POST /registry/microservices + body(Microservice)
>  function:registerMicroservice(Microservice microservice)
>  param:Microservice (a data model of microservice)
>  return: serviceId (microservice ID)
> 3. Find all registerd microservice of service-center
>  based open api: GET /registry/microservices
>  function:getAllMicroservices()
>  param:null
>  return:MicroservicesResponse (a data model of microservice list)
> 4. Get one microservice message of service-center
>  based open api: GET /registry/microservices/\{serviceId}
>  function:getMicroserviceByServiceId(String serviceId)
>  param: serviceId (microservice ID)
>  return:Microservice (a data model of microservice)
>  
>  5. Register microservice instances to service-center
>  based open api:
>      POST 
> /registry/microservices/\{serviceId}/instances+body(MicroserviceInstance)
>  function:registerMicroserviceInstances(MicroserviceInstance instance, String 
> serviceId)
>  param:MicroserviceInstance (a data model of microservice instance) ;
>  serviceId (microservice ID)
>  return:instanceId (microservice instance ID)
> 6. Find microservice instances of service-center
>  based open api: GET /registry/microservices/\{serviceId}/instances
>  function:getMicroserviceInstancesByServiceId(String serviceId)
>  param:serviceId (microservice ID)
>  return:MicroserviceInstancesResponse (a data model of microservice instances 
> list)
>  
>  7. Get microservice instance message of service-center
>  based open api: GET 
> ​/registry​/microservices​/\{serviceId}​/instances​/\{instanceId}
>  function:getMicroserviceInstanceByServiceIdAndInstanceId
>  param:serviceId (microservice ID) ;
>                instanceId (microservice instance ID) 
>  return:MicroserviceInstance(a data model of microservice instance)
>  
>  8. Delete a microservice instance
>  based open api: DELETE 
> ​/registry/microservices/\{serviceId}/instances/\{instanceId}
> function:deleteMicroserviceInstanceByInstanceId
>  param:serviceId (microservice ID) ;
>                instanceId (microservice instance ID) 
>  return:response  content (String type)
> 9. Update status of microservice Instance
>  based open api: PUT 
> ​/registry/microservices/\{serviceId}/instances/\{instanceId}/status
>  function:String updateMicroservicesInstanceStatus ( String serviceId, String 
> instanceId,
>  MicroserviceInstanceStatus status )
>  param:serviceId (microservice ID) ;
>                instanceId (microservice instance ID) ;
>                MicroserviceInstanceStatus status ( a enum model of 
> microservice status)
>  return:response  content (String type)
> 10. Send heartbeats to service-center
>  based open api: PUT /registry/heartbeats
>  function:String sendHeartBeats(HeartbeatsRequest heartbeatsRequest)
>  param:HeartbeatsRequest (a data model of heartbeat request)
>  return:response  content (String type)
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to