Repository navigation
SQL自动补全优化增加缓存
#3203
Replies: 3 comments
|
其他现有问题: 其他前端code editor框架, codemirror6: |
0 replies
|
优化和bug类问题已合并到master。 缓存类的逻辑,目前还没开发。 |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
当前的自动补全主要是:库名、表名、表和字段关联。
基础逻辑链路是:前端筛选变化时->请求后端方法->调用各Engine的get_all_databases / get_all_tables / get_all_columns_by_tb的方法->返回数据给前端。
获取表名、和表名和字段关联的地方,增加一个缓存逻辑,
请求的数据写入到redis指定的key(方法类型+实例IP+端口+库名),8个小时过期。
优化点是:在8个小时内,用户不再查询原数据库实例,特别是对超过几千个表的实例的时候,只查询redis对应的key。
缺点是:最多在8个小时内,实例的表或字段发生变更,自动补全没有实时获取到新的数据。
可以增加一个按钮类似navicate的【刷新缓存】的手动刷新实例的库的补全缓存。
All reactions