ShiningRush commented on issue #434:
URL: 
https://github.com/apache/apisix-dashboard/issues/434#issuecomment-687716153


   I drew a picture to show how the underlying components work together
   
![image](https://user-images.githubusercontent.com/24238012/92320639-99b6c580-f055-11ea-9b4b-58a6ca4f0e1a.png)
   
   This is a bit like the design of [k8s 
apiserver](https://github.com/kubernetes/apiserver/blob/master/pkg/registry/generic/registry/store.go),
 but it simplifies a lot of details.
   Here are the responsibilities of each component:
   - `Handler`: handle the requests,each handler will have a their own store 
which is created from `GenericStore`
   - `GenericStore`: this component is responsible for common logic, such as 
maintaining memory-based etcd copies, queries, etc.
   - `Etcd3Storage`: responsible for the operation of etcd, used to decouple 
GenericStore and persistent components, to facilitate unit testing and expansion
   
   @nic-chen @juzhiyuan @membphis @moonming
   If there is no doubt about the design details, I will implement it for 
ManagerAPI recently.
   If there is something unclear, we can hold a meeting to discuss it.
   
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to