CN116595075A - 一种用于数据库灰度切换的方法、系统及电子设备 - Google Patents
一种用于数据库灰度切换的方法、系统及电子设备 Download PDFInfo
- Publication number
- CN116595075A CN116595075A CN202310417535.8A CN202310417535A CN116595075A CN 116595075 A CN116595075 A CN 116595075A CN 202310417535 A CN202310417535 A CN 202310417535A CN 116595075 A CN116595075 A CN 116595075A
- Authority
- CN
- China
- Prior art keywords
- gray
- user
- gray scale
- list
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 22
- 239000004973 liquid crystal related substance Substances 0.000 claims description 6
- 238000004880 explosion Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种用于数据库灰度切换的方法、系统及电子设备,属于软件灰度开发技术领域,该方法包括:在需要灰度的后端服务上配置灰度标识;将需要灰度服务的用户配置到灰度列表;根据所述灰度列表和所述灰度标识判断用户否为灰度用户,若是灰度用户则切换数据库;本发明通过配置灰度标识对需要灰度处理的后端服务进行区分,再需要扩展灰度后端服务时,只需配置灰度标识,就可实现扩展;灰度标识结合灰度列表里配置的灰度用户,在用户访问后端服务时灰度用户访问后端服务时能灰度切换数据库,相较于现有方式,只需要配置好灰度标识和灰度用户,实现了通过配置的方式实现灰度开发,避免了代码冗余,提高了代码复用性,且后期调整更灵活。
Description
技术领域
本发明属于软件灰度开发技术领域,具体涉及一种用于数据库灰度切换的方法、系统及电子设备。
背景技术
随着科技进步,很多线下业务都转移到线上办理,以前需要去营业厅办理的业务,现在只需用软件就可以办理,省去了很多时间,随着业务的更新,软件也需要经常进行新功能更新迭代,底层代码优化,底层数据库切换等,通常会在业务中专门针对灰度用户编写一套代码;具体操作还需要基于不同的灰度用户、不同业务需要编写不同的灰度代码,造成了项目中代码冗余、代码复用差,项目扩展差和配置不够灵活的问题。
发明内容
为此,本发明提供一种用于数据库灰度切换的方法、系统及电子设备,以解决现有技术中基于不同的灰度用户、不同业务需要编写不同的灰度代码,造成了项目中代码冗余、代码复用差,项目扩展差和配置不够灵活的问题。
为实现以上目的,本发明采用如下技术方案:
第一方面,本发明提供了一种用于数据库灰度切换的方法,包括:
在需要灰度的后端服务上配置灰度标识;
将需要灰度服务的用户配置到灰度列表;
根据所述灰度列表和所述灰度标识判断用户否为灰度用户,若是灰度用户则切换数据库。
进一步地,所述将需要灰度服务的用户配置到灰度列表,包括:
获取用户数据;
根据预设条件将用户配置到所述灰度列表,所述预设条件根据业务需求定制。
进一步地,所述在需要灰度的后端服务上配置灰度标识,包括:
获取需要灰度的后端服务;
在所述后端服务的代码注解中插入所述灰度标识。
进一步地,所述根据所述灰度列表和所述灰度标识判断用户是否为灰度用户,若是灰度用户则切换数据库,包括:
接收用户的请求并在所述灰度列表中查询;
若所述用户在所述灰度列表中,则判断所述请求中的后端服务是否配置灰度标识,若配置灰度标识则所述服务切换数据库获取数据。
进一步地,在所述在需要灰度的后端服务上配置灰度标识之前,还包括:
引入所述灰度标识的依赖包,所述依赖包用于识别所述后端服务是否配置灰度标识。
进一步地,所述根据所述爆坑识别结果,计算有效毁伤半径,具体为:
根据所述矩形框或方形框的边长,计算爆坑直径;
根据所述爆坑直径与爆炸当量的关系公式,求取等效爆炸当量;
根据所述等效爆炸当量,通过查表或粗算公式,得到所述等效爆炸当量对应的有效毁伤半径。
第二方面,本发明提供了一种用于数据库灰度切换的系统,包括:
服务配置模块,用于在需要灰度的后端服务上配置灰度标识;
用户配置模块,用于将需要灰度服务的用户配置到灰度列表;
灰度判断模块,用于根据灰度列表和灰度标识判断用户否为灰度用户,若是灰度用户则切换数据库。
进一步地,还包括依赖模块,用于引入所述灰度标识的依赖包,所述依赖包用于识别所述后端服务是否配置灰度标识。
第三方面,本发明提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述用于数据库灰度切换的方法。
本发明采用以上技术方案,至少具备以下有益效果:
通过配置灰度标识对需要灰度处理的后端服务进行区分,再需要扩展灰度后端服务时,只需配置灰度标识,就可实现扩展;灰度标识结合灰度列表里配置的灰度用户,在用户访问后端服务时灰度用户访问后端服务时能灰度切换数据库,相较于现有方式,只需要配置好灰度标识和灰度用户,实现了通过配置的方式实现灰度开发,避免了代码冗余,提高了代码复用性,且后期调整更灵活。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一示例性实施例示出的一种用于数据库灰度切换的方法的流程图;
图2是本发明一示例性实施例示出的一种用于数据库灰度切换的系统的示意框图;
图3是本发明一示例性实施例示出的一种电子设备的示意框图;
下面结合附图和具体实施方式对本发明作进一步的说明。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。
现有的灰度开发中,通常会在业务中专门针对灰度用户编写一套代码,具体操作还需要基于不同的灰度用户、不同业务需要编写不同的灰度代码,项目中代码冗余、代码复用差,项目扩展差和配置不够灵活。
本发明实施例,提供的一种用于数据库灰度切换的方法、系统及电子设备,通过配置灰度标识对需要灰度处理的后端服务进行区分,再需要扩展灰度后端服务时,只需配置灰度标识,就可实现扩展;灰度标识结合灰度列表里配置的灰度用户,在用户访问后端服务时灰度用户访问后端服务时能灰度切换数据库,相较于现有方式,只需要配置好灰度标识和灰度用户,实现了通过配置的方式实现灰度开发,避免了代码冗余,提高了代码复用性,且后期调整更灵活。
下面通过具体地实施例对本发明中实时推送消息的方法进行说明。
请参阅图1,图1是本发明一示例性实施例示出的一种用于数据库灰度切换的方法的流程图,参见图1,该方法包括:
步骤S11、在需要灰度的后端服务上配置灰度标识;
步骤S12、将需要灰度服务的用户配置到灰度列表;
步骤S13、根据灰度列表和所述灰度标识判断用户否为灰度用户,若是灰度用户则切换数据库。
需要说明的是,本实施例提供的技术方案在具体实践中可以以插件的形式加载在项目中使用,或者以独立程序的形式,提供服务接口供使用。适用的场景包括但不限于:数据库灰度切换、软件更新灰度切换及涉及到灰度切换的其他场景中。
可以理解的是,通过配置灰度标识对需要灰度处理的后端服务进行区分,结合灰度列表里配置的灰度用户,在用户访问后端服务时灰度用户访问后端服务时能灰度切换数据库,只需要配置好灰度标识和灰度用户,实现了通过配置的方式实现灰度开发,避免了代码冗余,提高了代码复用性,且后期调整更灵活。
在具体实践中,步骤S11中“在需要灰度的后端服务上配置灰度标识”,包括:
获取需要灰度的后端服务;
在后端服务的代码注解中插入灰度标识。
需要说明的是,需要灰度的后端服务是根据实际业务确定的,实际业务中根据业务需求,部分功能需要灰度处理,则这些部分功能对应的后端服务加上灰度标识以示区分,可以在代码注解中插入灰度标识。
具体地,在代码注释中插入的灰度标识格式可以为切面@加标识名,例如@SupportMysqlAnnotation,用在需要灰度的后端服务上配置灰度标识之前,需要引入灰度标识的依赖包,依赖包用于识别后端服务的灰度标识。
可以理解的是,本实施例提供的技术方案中通过配置灰度标识对需要灰度处理的后端服务进行区分,再次需要扩展灰度后端服务时,只需配置灰度标识,就可实现扩展,扩展方便且可扩展性强。
在具体实践中,步骤S12中“将需要灰度服务的用户配置到灰度列表”,包括:
获取用户数据;
根据预设条件将用户配置到所述灰度列表,所述预设条件根据业务需求定制。
需要说明的是,在业务中会分为不同类型的用户,每次会根据用户数据中的用户类型与需要灰度业务进行匹配,匹配成功的用户数据配置到灰度列表中。
可以理解的是,本实施例提供的技术方案根据业务需求灵活配置灰度列表,依据灰度列表辨别灰度用户,在业务处理时针对灰度用户进行数据库切换。
在具体实践中,步骤S13中“根据灰度列表和灰度标识判断用户否为灰度用户,若是灰度用户则切换数据库”,具体为:
接收用户的请求并在灰度列表中查询;
若该用户在灰度列表中,则判断请求中的后端服务是否配置灰度标识,若配置灰度标识则切换数据库获取数据。
需要说明的是,当用户访问服务时,发送的请求中会携带用户信息和要访问的后端服务标识,后端服务器接收到用户的访问请求时,会在网关层经过一个dubbo服务拦截器,dubbo服务拦截器会获取到用户信息,依据用户信息在灰度列表中查找,若能查找到该用户信息,则为灰度用户,在判断请求中携带的后端服务是否配置了灰度标识,若配置了灰度标识,则后端服务在根据用户请求查询数据时会切换数据库。
可以理解的是,本实施例提供的技术方案中,通过配置灰度标识和灰度用户实现后端服务获取数据时切换数据库,从实现了配置化灰度切换数据库,避免了代码冗余,提高了代码复用性,且后期调整更灵活。
请参阅图2,图2是本发明一示例性实施例示出的一种用于数据库灰度切换的系统的示意框图,参见图2,用于数据库灰度切换的系统100包括:
服务配置模块101,用于在需要灰度的后端服务上配置灰度标识;
用户配置模块102,用于将需要灰度服务的用户配置到灰度列表;
灰度判断模块103,用于根据灰度列表和灰度标识判断用户否为灰度用户,若是灰度用户则切换数据库;
依赖模块104,用于引入所述灰度标识的依赖包,所述依赖包用于识别所述后端服务的灰度标识。
需要说明的是,本实施例提供的系统在具体实践中可以以插件的形式加载在项目中使用,或者以独立程序的形式,提供服务接口供使用。适用的场景包括但不限于:数据库灰度切换、软件更新灰度切换及涉及到灰度切换的其他场景中。
可以理解的是,本实施的系统,通过配置灰度标识对需要灰度处理的后端服务进行区分,结合灰度列表里配置的灰度用户,在用户访问后端服务时灰度用户访问后端服务时能灰度切换数据库,只需要配置好灰度标识和灰度用户,实现了通过配置的方式实现灰度开发,避免了代码冗余,提高了代码复用性,且后期调整更灵活。
在一个实施例中,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述用于数据库灰度切换的方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (8)
1.一种用于数据库灰度切换的方法,其特征在于,包括:
在需要灰度的后端服务上配置灰度标识;
将需要灰度服务的用户配置到灰度列表;
根据所述灰度列表和所述灰度标识判断用户否为灰度用户,若是灰度用户则切换数据库。
2.根据权利要求1所述的方法,其特征在于,所述将需要灰度服务的用户配置到灰度列表,包括:
获取用户数据;
根据预设条件将用户配置到所述灰度列表,所述预设条件根据业务需求定制。
3.根据权利要求2所述的方法,其特征在于,所述在需要灰度的后端服务上配置灰度标识,包括:
获取需要灰度的后端服务;
在所述后端服务的代码注解中插入所述灰度标识。
4.根据权利要求3所述的方法,其特征在于,所述根据所述灰度列表和所述灰度标识判断用户是否为灰度用户,若是灰度用户则切换数据库,包括:
接收用户的请求并在所述灰度列表中查询;
若所述用户在所述灰度列表中,则判断所述请求中的后端服务是否配置灰度标识,若配置灰度标识则所述服务切换数据库获取数据。
5.根据权利要求1所述的方法,其特征在于,在所述在需要灰度的后端服务上配置灰度标识之前,还包括:
引入所述灰度标识的依赖包,所述依赖包用于识别所述后端服务是否配置灰度标识。
6.一种用于数据库灰度切换的系统,其特征在于,包括:
服务配置模块,用于在需要灰度的后端服务上配置灰度标识;
用户配置模块,用于将需要灰度服务的用户配置到灰度列表;
灰度判断模块,用于根据灰度列表和灰度标识判断用户否为灰度用户,若是灰度用户则切换数据库。
7.根据权利要求6所述的系统,其特征在于,还包括依赖模块,用于引入所述灰度标识的依赖包,所述依赖包用于识别所述后端服务是否配置灰度标识。
8.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310417535.8A CN116595075A (zh) | 2023-04-18 | 2023-04-18 | 一种用于数据库灰度切换的方法、系统及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310417535.8A CN116595075A (zh) | 2023-04-18 | 2023-04-18 | 一种用于数据库灰度切换的方法、系统及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116595075A true CN116595075A (zh) | 2023-08-15 |
Family
ID=87606951
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310417535.8A Pending CN116595075A (zh) | 2023-04-18 | 2023-04-18 | 一种用于数据库灰度切换的方法、系统及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116595075A (zh) |
-
2023
- 2023-04-18 CN CN202310417535.8A patent/CN116595075A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7685322B2 (en) | Port number emulation for wireless USB connections | |
CN109582873B (zh) | 用于推送信息的方法和装置 | |
CN110659206A (zh) | 基于微服务的模拟架构建立方法、装置、介质及电子设备 | |
US7302681B2 (en) | Method and system for customized information handling system support updates | |
KR20060103442A (ko) | 액션 리스트 및 버저닝을 이용한 무선 디바이스상에서액션을 수행하기 위한 방법, 소프트웨어 및 장치 | |
CN106843947A (zh) | 代码缺陷的处理方法和装置 | |
CN110083581A (zh) | 一种日志追溯的方法、装置、存储介质及计算机设备 | |
CN110019444B (zh) | 一种操作请求处理方法、装置、设备及系统 | |
CN106020917B (zh) | 一种软件安装方法及装置、用户终端 | |
CN101312469A (zh) | 终端显示订购业务的方法及系统 | |
CN105704285A (zh) | 移动终端通讯录更新方法 | |
CN116595075A (zh) | 一种用于数据库灰度切换的方法、系统及电子设备 | |
CN107231624A (zh) | 一种保留数据信息的方法、存储设备及移动终端 | |
CN106951296A (zh) | 一种软件更新方法及装置 | |
US20060161634A1 (en) | Positioning systems and methods for portable devices | |
JP5366516B2 (ja) | 携帯情報端末装置、測位制御方法及び測位制御プログラム | |
CN111194059A (zh) | 一种数据连接方法、装置、电子设备及可读存储介质 | |
CN113377458B (zh) | 插件管理方法、装置、电子设备和存储介质 | |
CN110457085A (zh) | 文件处理方法、装置、终端设备和计算机可读介质 | |
CN113891260B (zh) | 通信号码当前运营商的鉴别方法和鉴别设备 | |
CN115422218A (zh) | 通过虚拟分片方式兼容以太坊evm的装置及方法 | |
CN110471708B (zh) | 基于可重用组件的配置项获取的方法及装置 | |
CN114500280A (zh) | 一种固件升级方法、装置以及计算机可读存储介质 | |
CN111324374B (zh) | 基于应用性能管理系统的应用程序的注册方法和装置 | |
CN109522014B (zh) | 基于新产品开发的算法处理方法、电子装置及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |