kyuubi/docs
Kent Yao b4a505971c [KYUUBI #627] Support multiple engines for non-connection share levels
<!--
Thanks for sending a pull request!

Here are some tips for you:
  1. If this is your first time, please read our contributor guidelines: https://kyuubi.readthedocs.io/en/latest/community/contributions.html
  2. If the PR is related to an issue in https://github.com/NetEase/kyuubi/issues, add '[KYUUBI #XXXX]' in your PR title, e.g., '[KYUUBI #XXXX] Your PR title ...'.
  3. If the PR is unfinished, add '[WIP]' in your PR title, e.g., '[WIP][KYUUBI #XXXX] Your PR title ...'.
-->

### _Why are the changes needed?_
<!--
Please clarify why the changes are needed. For instance,
  1. If you add a feature, you can talk about the use case of it.
  2. If you fix a bug, you can clarify why it is a bug.
-->

This PR adds multiple engine support for non-connection share levels. A new configuration called  `kyuubi.engine.share.level.sub.domain` is added for this functionality. For simplification, the configuration only accepts [1, 10]-length case insensitive string, only '_' and alphabets are valid.

Unlike connection mode, user mode supports the "long-running" feature across different JDBC connections. But the current implementation only is able to create one engine for a user. End-users don't want to put all eggs into one basket. It's not only less robust and flexible for a static engine to handle different workloads, and also hard to leverage failover when there is a zombied engine being cached.

With multiple engines support, end-users are able to
1. create as many engines as they want to meet the concurrency.
2. leverage different queue/namespace resource with long-running mode
3. can give different resources or priorities to their own engines for different workloads
4. can perform fast failover by creating a new sub domain
5. etc.

### _How was this patch tested?_
- [x] Add some test cases that check the changes thoroughly including negative and positive cases if possible

- [ ] Add screenshots for manual tests if appropriate

- [x] [Run test](https://kyuubi.readthedocs.io/en/latest/tools/testing.html#running-tests) locally before make a pull request

Closes #627 from yaooqinn/multipleengines.

Closes #627

9f04bc3e [Kent Yao] fix tests
d7af751e [Kent Yao] address comments
be9c46d8 [Kent Yao] address comments
ccce87d7 [Kent Yao] address comments
d49116c7 [Kent Yao] Support multiple engines for non-connection share levels
f1d8bc17 [Kent Yao] Support multiple engines for non-connection share levels

Authored-by: Kent Yao <yao@apache.org>
Signed-off-by: Cheng Pan <379377944@qq.com>
2021-05-11 10:14:23 +08:00
..
appendix logo 2021-03-19 21:08:52 +08:00
client logo 2021-03-19 21:08:52 +08:00
community [KYUUBI #569] [DOC] Update collaborator profiles 2021-04-23 00:59:39 +08:00
deployment [KYUUBI #627] Support multiple engines for non-connection share levels 2021-05-11 10:14:23 +08:00
imgs [KYUUBI #605] Improve the landscape for README 2021-04-25 20:03:33 +08:00
integrations [KYUUBI #531] Refactor repo key words (#531) 2021-04-15 17:13:02 +08:00
monitor [KYUUBI #454] Fix metrics Versions 2021-03-26 11:56:20 +08:00
overview logo 2021-03-19 21:08:52 +08:00
quick_start [KYUUBI #600] [DOCS] Update building doc and tunes 2021-04-25 06:58:58 +08:00
security [KYUUBI #531] Refactor repo key words (#531) 2021-04-15 17:13:02 +08:00
tools [KYUUBI #600] [DOCS] Update building doc and tunes 2021-04-25 06:58:58 +08:00
conf.py [KYUUBI #531] Refactor repo key words (#531) 2021-04-15 17:13:02 +08:00
index.rst [KYUUBI #525] fix: broken link 2021-04-14 15:43:10 +08:00
make.bat doc init 2020-10-28 15:28:24 +08:00
Makefile doc init 2020-10-28 15:28:24 +08:00
requirements.txt [KYUUBI #614] [BUILD][DOCS] Bump sphinx 2021-04-28 20:16:26 +08:00