timothy65535 edited a comment on issue #962:
URL: 
https://github.com/apache/incubator-kyuubi/issues/962#issuecomment-903276117


   # Motivation
   
   Apache Kyuubi provides three engine share levels:
   
   - CONNECTION: engine will not be shared but only used by the current client 
connection
   - SERVER: the App will be shared by Kyuubi servers
   - USER: engine will be shared by all sessions created by a unique username
   
   In the current design, kyuubi can provides engine pool through 
`kyuubi.engine.share.level.sub.domain` option for same user under `USER` share 
level. It does not have an auto-mechanisn, e.g. create two more engines under 
same `subDomain`, random picking engines.  The goal of this proposal is to 
provide such auto-mechanism to creating and picking subDomain to implement the 
feature of the engine pool.
   
   # Implementation
   
   In this section, describe the implementation of Kyuubi Engine Pool. We need 
to consider several things
   
   - How to control the concurrent create the engine?
   - How to share the pool size over two more kyuubi server?
   - Engine pick strategy(sequentially / randomly / load-based)?
   
   The key point is to set engine pool size as the content of engine space 
znode when create the engine space firstlly, so that we can share the pool size 
over two more kyuubi server, and avoid the inconsistent configuration between 
different servers effectively.
   
   ## Design
   
   ### 1. High level 
   
   
![image](https://user-images.githubusercontent.com/86483005/130358795-4d05cb3d-71dd-40aa-8630-8667d304e2a0.png)
   
   ### 2. Detail work flow
   
   
![image](https://user-images.githubusercontent.com/86483005/130358392-31d4f1b9-62a7-490a-b526-00aa16fa0fa8.png)
   
   # Tests
   
   - KyuubiOperationPerConnectionSuite
   - KyuubiOperationPerServerSuite
   - KyuubiOperationPerUserSuite
   
   
   


-- 
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.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to