CN111984427B - 一种非侵入的Web系统互斥锁实现方法 - Google Patents
一种非侵入的Web系统互斥锁实现方法 Download PDFInfo
- Publication number
- CN111984427B CN111984427B CN202010655945.2A CN202010655945A CN111984427B CN 111984427 B CN111984427 B CN 111984427B CN 202010655945 A CN202010655945 A CN 202010655945A CN 111984427 B CN111984427 B CN 111984427B
- Authority
- CN
- China
- Prior art keywords
- key value
- service
- level
- layer method
- mutual exclusion
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/526—Mutual exclusion algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书一个或多个实施例提供一种非侵入的Web系统互斥锁实现方法,包括:以元数据的形式编写业务互斥锁,并定义所述业务互斥锁的互斥级别,编写用于拦截路由的全局请求拦截器;在具有互斥特性的业务层方法上添加所述业务互斥锁,并设置互斥级别以及约束信息;获得浏览器当前访问的路由;若所述路由为所述全局请求拦截器需要拦截的路由,且所述路由调用的业务层方法配置了业务互斥锁,则获得所述业务互斥锁的键值对的键值,根据所述键值对的键值判断是否执行所述业务层方法;若执行所述业务层方法,在开始执行前以及执行完毕后,分别对应修改所述键值对的键值;返回执行获得浏览器当前访问的路由的步骤,直至Web系统停止访问。
Description
技术领域
本说明书一个或多个实施例涉及Web系统互斥锁SL实现技术领域,尤其涉及一种非侵入的Web系统互斥锁实现方法。
背景技术
基于功能和业务本身的特点,以及性能和安全性等方面的考量,Web软件系统中的很多业务和操作都具有互斥性和排他性,目前普遍采用在软件内嵌入互斥锁以实现互斥性和排他性要求,该种Web系统互斥锁SL的实现方法具有以下不足:
1、需要为每个具有互斥特性的功能编写专门的控制代码,由此产生了大量代码冗余;
2、用以实现互斥控制逻辑的代码侵入了用于实现软件业务逻辑的代码,严重降低了代码的可理解性与系统的可维护性。
发明内容
有鉴于此,本说明书一个或多个实施例的目的在于提出本发明的目的在于提供一种非侵入的Web软件业务互斥锁实现方法,能够有效的消除代码冗余和侵入,提升系统的可维护性。
基于上述目的,本说明书一个或多个实施例提供了一种非侵入的Web系统互斥锁实现方法,包括:
以元数据的形式编写业务互斥锁SL,并定义所述业务互斥锁SL的互斥级别SCOPE,编写用于拦截路由的全局请求拦截器H;
在具有互斥特性的业务层方法M上添加所述业务互斥锁SL,并设置互斥级别SCOPE以及约束信息;
通过所述全局请求拦截器H获得浏览器当前访问的路由P;
若所述路由P为所述全局请求拦截器H需要拦截的路由,且所述路由P调用的业务层方法M配置了业务互斥锁SL,则获得所述业务互斥锁SL的键值对的键值,根据所述键值对的键值判断是否执行所述业务层方法M;
若执行所述业务层方法M,在开始执行前以及执行完毕后,分别对应修改所述键值对的键值;
返回执行获得浏览器当前访问的路由P的步骤,直至Web系统停止访问。
作为一种可选的实施方式,所述业务互斥锁SL的互斥级别SCOPE包括用户级、部门级以及系统级。
作为一种可选的实施方式,当所述业务互斥锁SL的互斥级别SCOPE为用户级时,所述约束信息为同一用户连续两次操作之间的最短时间间隔;
当所述业务互斥锁SL的互斥级别SCOPE为部门级时,所述约束信息为同部门内是否有其他用户在操作;
当所述业务互斥锁SL的互斥级别SCOPE为系统级时,所述约束信息为系统内是否有其他用户在操作。
作为一种可选的实施方式,所述获得所述业务互斥锁SL的键值对的键值,包括
当所述业务互斥锁SL的互斥级别SCOPE为用户级时,所述键值对的键值为当前用户上一次成功执行所述业务层方法M时的时间;
当所述业务互斥锁SL的互斥级别SCOPE为部门级或者系统级时,所述键值对的键值为TRUE或者FALSE。
作为一种可选的实施方式,所述根据所述键值对的键值判断是否执行所述业务层方法M,包括
当所述业务互斥锁SL的互斥级别SCOPE为用户级时,若键值对的键值为空,或当前时间与键值对的键值的差值大于等于所述最短时间间隔,则执行所述业务层方法M;若键值对的键值不为空,且当前时间与键值对的键值的差值小于所述最短时间间隔,则拒绝执行所述业务层方法M;
当所述业务互斥锁SL的互斥级别SCOPE为部门级或者系统级时,若键值对的键值为空或者FALSE,则执行所述业务层方法M;若键值对的键值为TRUE,则拒绝执行所述业务层方法M。
作为一种可选的实施方式,所述若执行所述业务层方法M,在开始执行前以及执行完毕后,分别对应修改所述键值对的键值,包括
当所述业务互斥锁SL的互斥级别SCOPE为用户级时,在所述业务层方法M开始执行前,将所述键值对的键值修改为执行所述业务层方法M时的时间,待所述业务层方法M执行完毕后,将所述键值对的键值修改为执行完毕所述业务层方法M时的时间;
当所述业务互斥锁SL的互斥级别SCOPE为部门级或者系统级时,在所述业务层方法M开始执行前,将所述键值对的键值修改为TRUE,待所述业务层方法M执行完毕后,将所述键值对的键值修改为FALSE。
作为一种可选的实施方式,所述拒绝执行所述业务层方法M之后,还包括发送提示信息,以提醒用户操作失败。
作为一种可选的实施方式,所述发送提示信息,以提醒用户操作失败,包括
向Web系统的Response内置对象写入header信息,以使浏览器端解析并提示用户操作失败。
作为一种可选的实施方式,所述元数据为Java语言的注解或者Python语言的装饰器。
从上面所述可以看出,本说明书一个或多个实施例提供的一种非侵入的Web系统互斥锁实现方法,通过在操作前端配置互斥锁,在执行操作前自动检查特定操作是否满足其所配置的互斥条件,以决定是否继续执行该操作,从而消除代码冗余和侵入,进而提升系统的可维护性。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一个或多个实施例的逻辑示意图;
图2为本说明书一个或多个实施例的详细的逻辑示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,对本公开进一步详细说明。
为达到上述目的,本发明实施例提供了一种非侵入的Web系统互斥锁实现方法,该方法可以应用于终端、服务器或者服务器集群等,具体不做限定。下面对本发明实施例提供的非侵入的Web系统互斥锁实现方法进行详细说明。
本发明实施例提供了一种非侵入的Web系统互斥锁实现方法,包括:
S100、以元数据的形式编写业务互斥锁SL,并定义所述业务互斥锁SL的互斥级别SCOPE,编写用于拦截路由的全局请求拦截器H;
S200、在具有互斥特性的业务层方法M上添加所述业务互斥锁SL,并设置互斥级别SCOPE以及约束信息;
S300、通过所述全局请求拦截器H获得浏览器当前访问的路由P;
S400、若所述路由P为所述全局请求拦截器H需要拦截的路由,且所述路由P调用的业务层方法M配置了业务互斥锁SL,则获得所述业务互斥锁SL的键值对的键值,根据所述键值对的键值判断是否执行所述业务层方法M;
S500、若执行所述业务层方法M,在开始执行前以及执行完毕后,分别对应修改所述键值对的键值;
S600、返回执行获得浏览器当前访问的路由P的步骤,直至Web系统停止访问。
本发明实施例中,有别于传统的直接在每个需要互斥特性的操作中编写专门的控制代码的方式,通过位于操作实现代码之外的配置信息为操作增加互斥锁,同时借助拦截器机制,在每次执行操作前自动检查该操作是否满足其所配置的互斥条件,以决定是否继续执行该操作,从而消除代码冗余和侵入,进而提升系统的可维护性。
其中,浏览器(Browser)指用于访问Web系统的软件,Web系统部署于服务器(Server),跟浏览器一起构成了B/S系统。
如图1和图2所述,本发明实施例提供了一种非侵入的Web系统互斥锁实现方法,包括:
S100、以元数据的形式编写业务互斥锁SL,并定义所述业务互斥锁SL的互斥级别SCOPE,编写用于拦截路由的全局请求拦截器H;
其中,元数据指用以描述数据的数据,如Java语言的注解、Python语言的装饰器等。
可选的,依据Web软件系统的具体业务,可将互斥级别SCOPE设置为用户级(USER)、部门级(DEP)、系统级(SYS)等。
其中,采用合适的形式(如各Web开发技术都支持的过滤器、相关框架所支持的拦截器等)编写全局请求拦截器H,编写全局请求拦截器H通过正则表达式RE描述所有需要拦截的控制层方法的路由名称。
S200、在具有互斥特性的业务层方法M上添加所述业务互斥锁SL,并设置互斥级别SCOPE以及约束信息;
可选的,所述业务互斥锁SL的互斥级别SCOPE包括用户级(USER)、部门级(DEP)、系统级(SYS)。
可选的,当所述业务互斥锁SL的互斥级别SCOPE为用户级时,所述约束信息为同一用户连续两次操作之间的最短时间间隔,如此,能够限定同一用户过于频繁的操作;
当所述业务互斥锁SL的互斥级别SCOPE为部门级时,所述约束信息为同部门内是否有其他用户在操作,如此,能够防止同部门内同时有两个用户操作;
当所述业务互斥锁SL的互斥级别SCOPE为系统级时,所述约束信息为系统内是否有其他用户在操作,如此,能够防止同系统内同时有两个用户操作。
S300、通过所述全局请求拦截器H获得浏览器当前访问的路由P;
可选的,获得浏览器下一次访问的路由P。
S400、若所述路由P为所述全局请求拦截器H需要拦截的路由,且所述路由P调用的业务层方法M配置了业务互斥锁SL,则获得所述业务互斥锁SL的键值对的键值,根据所述键值对的键值判断是否执行所述业务层方法M;
可选的,在获得浏览器下一次访问的路由P之后,判断该路由名称P与正则表达式RE是否匹配;若匹配成功,则说明所述路由P为所述全局请求拦截器H需要拦截的路由,若匹配不成功,则说明所述路由P不是所述全局请求拦截器H需要拦截的路由,直接执行所述路由P对应方法定义中所调用的业务层方法M即可。
可选的,若所述路由P为所述全局请求拦截器H需要拦截的路由,则在全局请求拦截器H的前置处理逻辑preHandle中判断所述路由P对应方法定义中所调用的业务层方法M是否配置了业务互斥锁SL,如果没有配置业务互斥锁SL,则直接执行业务层方法M即可。
可选的,所述获得所述业务互斥锁SL的键值对的键值,包括
当所述业务互斥锁SL的互斥级别SCOPE为用户级时,所述键值对的键值为当前用户上一次成功执行所述业务层方法M时的时间;
当所述业务互斥锁SL的互斥级别SCOPE为部门级或者系统级时,所述键值对的键值为TRUE或者FALSE,其中,TRUE表示发送操作请求时,同部门内或者系统内有其他用户正在操作,FALSE表示发送操作请求时,同部门内或者系统内没有其他用户正在操作。
其中,键值对存放在系统全局域中,例如各Web开发技术都支持的Application内置对象中,键值对的键名为FlagK(具有唯一性),键值为FlagV(类型为时间或TRUE/FALSE)。
其中,键名FlagK的命名规则为:
1)若互斥级别SCOPE为用户级USER,则FlagK为LOCK_USER_{UserID},其中{UserId}为当前用户的ID;
2)若互斥级别SCOPE为部门级DEP,则FlagK为LOCK_DEP_{DepID},其中{DepId}为当前用户所属部门的ID;
3)若互斥级别SCOPE为系统级SYS,则FlagK为LOCK_SYS。
可选的,所述根据所述键值对的键值判断是否执行所述业务层方法M,包括
当所述业务互斥锁SL的互斥级别SCOPE为用户级时,若键值对的键值为空,或当前时间与键值对的键值的差值大于等于所述最短时间间隔,则执行所述业务层方法M;若键值对的键值不为空,且当前时间与键值对的键值的差值小于所述最短时间间隔,则拒绝执行所述业务层方法M;
当所述业务互斥锁SL的互斥级别SCOPE为部门级或者系统级时,若键值对的键值为空或者FALSE,则执行所述业务层方法M;若键值对的键值为TRUE,则拒绝执行所述业务层方法M。
可选的,所述拒绝执行所述业务层方法M之后,还包括发送提示信息,以提醒用户操作失败。优选的,所述发送提示信息,以提醒用户操作失败,包括向Web系统的Response内置对象写入header信息,以使浏览器端的JavaScript代码解析并提示用户操作失败。
S500、若执行所述业务层方法M,在开始执行前以及执行完毕后,分别对应修改所述键值对的键值。
可选的,步骤500包括:
当所述业务互斥锁SL的互斥级别SCOPE为用户级时,在所述业务层方法M开始执行前,将所述键值对的键值修改为执行所述业务层方法M时的时间,待所述业务层方法M执行完毕后,将所述键值对的键值修改为执行完毕所述业务层方法M时的时间;
当所述业务互斥锁SL的互斥级别SCOPE为部门级或者系统级时,在所述业务层方法M开始执行前,将所述键值对的键值修改为TRUE,待所述业务层方法M执行完毕后,将所述键值对的键值修改为FALSE。
需要说明的是,为了消除代码侵入性,H的后置处理逻辑与前置处理逻辑被组织到了不同的方法/函数中,在Web系统所处的多线程/并发环境下不能直接访问彼此的上下文及参数,因此在上述的所述业务层方法M执行完毕后,全局请求拦截器H的后置处理逻辑postHandle中需要再次判断M是否配置了业务互斥锁SL,如果没有配置业务互斥锁SL,则转到S600,如果配置了业务互斥锁SL,当互斥级别SCOPE为用户级时,将所述键值对的键值修改为执行完毕所述业务层方法M时的时间;当所述业务互斥锁SL的互斥级别SCOPE为部门级或者系统级时,将所述键值对的键值修改为FALSE。
S600、返回执行获得浏览器当前访问的路由P的步骤,直至Web系统停止访问。
需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。
可以理解,该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。
需要说明的是,本说明书一个或多个实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本说明书一个或多个实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本说明书一个或多个实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
本说明书一个或多个实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (7)
1.一种非侵入的Web系统互斥锁实现方法,其特征在于,包括:
以元数据的形式编写业务互斥锁SL,并定义所述业务互斥锁SL的互斥级别SCOPE,编写用于拦截路由的全局请求拦截器H;
在具有互斥特性的业务层方法M上添加所述业务互斥锁SL,并设置互斥级别SCOPE以及约束信息;
通过所述全局请求拦截器H获得浏览器当前访问的路由P;
若所述路由P为所述全局请求拦截器H需要拦截的路由,且所述路由P调用的业务层方法M配置了业务互斥锁SL,则获得所述业务互斥锁SL的键值对的键值,根据所述键值对的键值判断是否执行所述业务层方法M;
若执行所述业务层方法M,在执行开始前以及执行完毕后,分别对应修改所述键值对的键值;
返回执行获得浏览器当前访问的路由P的步骤,直至Web系统停止访问;
其中,所述业务互斥锁SL的互斥级别SCOPE包括用户级、部门级以及系统级;
当所述业务互斥锁SL的互斥级别SCOPE为用户级时,所述约束信息为同一用户连续两次操作之间的最短时间间隔;
当所述业务互斥锁SL的互斥级别SCOPE为部门级时,所述约束信息为同部门内是否有其他用户在操作;
当所述业务互斥锁SL的互斥级别SCOPE为系统级时,所述约束信息为系统内是否有其他用户在操作。
2.根据权利要求1所述的非侵入的Web系统互斥锁实现方法,其特征在于,所述获得所述业务互斥锁SL的键值对的键值,包括
当所述业务互斥锁SL的互斥级别SCOPE为用户级时,所述键值对的键值为当前用户上一次成功执行所述业务层方法M时的时间;
当所述业务互斥锁SL的互斥级别SCOPE为部门级或者系统级时,所述键值对的键值为TRUE或者FALSE。
3.根据权利要求2所述的非侵入的Web系统互斥锁实现方法,其特征在于,所述根据所述键值对的键值判断是否执行所述业务层方法M,包括
当所述业务互斥锁SL的互斥级别SCOPE为用户级时,若键值对的键值为空,或当前时间与键值对的键值的差值大于等于所述最短时间间隔,则执行所述业务层方法M;若键值对的键值不为空,且当前时间与键值对的键值的差值小于所述最短时间间隔,则拒绝执行所述业务层方法M;
当所述业务互斥锁SL的互斥级别SCOPE为部门级或者系统级时,若键值对的键值为空或者FALSE,则执行所述业务层方法M;若键值对的键值为TRUE,则拒绝执行所述业务层方法M。
4.根据权利要求3所述的非侵入的Web系统互斥锁实现方法,其特征在于,若执行所述业务层方法M,在执行开始前以及执行完毕后,分别对应修改所述键值对的键值,包括
当所述业务互斥锁SL的互斥级别SCOPE为用户级时,在所述业务层方法M开始执行前,将所述键值对的键值修改为执行所述业务层方法M时的时间,待所述业务层方法M执行完毕后,将所述键值对的键值修改为执行完毕所述业务层方法M时的时间;
当所述业务互斥锁SL的互斥级别SCOPE为部门级或者系统级时,在所述业务层方法M开始执行前,将所述键值对的键值修改为TRUE,待所述业务层方法M执行完毕后,将所述键值对的键值修改为FALSE。
5.根据权利要求4所述的非侵入的Web系统互斥锁实现方法,其特征在于,所述拒绝执行所述业务层方法M之后,还包括发送提示信息,以提醒用户操作失败。
6.根据权利要求5所述的非侵入的Web系统互斥锁实现方法,其特征在于,所述发送提示信息,以提醒用户操作失败,包括
向Web系统的Response内置对象写入header信息,以使浏览器端解析并提示用户操作失败。
7.根据权利要求1所述的非侵入的Web系统互斥锁实现方法,其特征在于,所述元数据为Java语言的注解或者Python语言的装饰器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010655945.2A CN111984427B (zh) | 2020-07-09 | 2020-07-09 | 一种非侵入的Web系统互斥锁实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010655945.2A CN111984427B (zh) | 2020-07-09 | 2020-07-09 | 一种非侵入的Web系统互斥锁实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111984427A CN111984427A (zh) | 2020-11-24 |
CN111984427B true CN111984427B (zh) | 2022-04-12 |
Family
ID=73438547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010655945.2A Active CN111984427B (zh) | 2020-07-09 | 2020-07-09 | 一种非侵入的Web系统互斥锁实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111984427B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5822588A (en) * | 1995-06-09 | 1998-10-13 | Sun Microsystem, Inc. | System and method for checking the use of synchronization locks in a multi-threaded target program |
CN108459913A (zh) * | 2017-12-26 | 2018-08-28 | 阿里巴巴集团控股有限公司 | 数据并行处理方法、装置及服务器 |
CN109656724A (zh) * | 2018-09-27 | 2019-04-19 | 深圳壹账通智能科技有限公司 | 业务处理方法、装置、设备及计算机可读存储介质 |
CN110502527A (zh) * | 2019-08-26 | 2019-11-26 | 深圳前海环融联易信息科技服务有限公司 | 后台请求防重发的方法、装置、计算机设备及存储介质 |
-
2020
- 2020-07-09 CN CN202010655945.2A patent/CN111984427B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5822588A (en) * | 1995-06-09 | 1998-10-13 | Sun Microsystem, Inc. | System and method for checking the use of synchronization locks in a multi-threaded target program |
CN108459913A (zh) * | 2017-12-26 | 2018-08-28 | 阿里巴巴集团控股有限公司 | 数据并行处理方法、装置及服务器 |
CN109656724A (zh) * | 2018-09-27 | 2019-04-19 | 深圳壹账通智能科技有限公司 | 业务处理方法、装置、设备及计算机可读存储介质 |
CN110502527A (zh) * | 2019-08-26 | 2019-11-26 | 深圳前海环融联易信息科技服务有限公司 | 后台请求防重发的方法、装置、计算机设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
Adaptive Locks: Combining Transactions and Locks for Efficient Concurrency;Takayuki Usui;《2009 18th International Conference on Parallel Architectures and Compilation Techniques》;20090925;全文 * |
一种基于hebernate乐观锁的信息系统开发模型;王庆喜;《软件》;20120430;第33卷(第4期);第72-77页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111984427A (zh) | 2020-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107426169B (zh) | 一种基于权限的业务处理方法及装置 | |
WO2017041657A1 (zh) | 一种应用接口管理方法和装置 | |
KR20110030461A (ko) | 클라이언트-서버 환경에서의 애플리케이션의 동적 분할 방법 및 시스템 | |
US9342333B2 (en) | Backend custom code extensibility | |
US20220057999A1 (en) | Method and apparatus for implementing an end-to-end api design and development module integrating with firmwide tools and processes | |
CN115186260A (zh) | 小程序风险检测方法和装置 | |
US10514897B1 (en) | Systems and methods for integrating modules into a software application | |
WO2020006911A1 (zh) | 混合型应用的接口调用方法、装置及计算机可读存储介质 | |
US11347630B1 (en) | Method and system for an automated testing framework in design pattern and validating messages | |
JP6629257B2 (ja) | 眼球認識によって保安が強化された認証方法およびシステム | |
CN111984427B (zh) | 一种非侵入的Web系统互斥锁实现方法 | |
US20230419036A1 (en) | Random token segmentation for training next token prediction models | |
CN115760391A (zh) | 区块链中智能合约更改方法、装置、电子设备及存储介质 | |
US11314496B2 (en) | Ultra-fast install and update of an operating system | |
CN112711602B (zh) | 一种存储过程的运行方法、装置,数据库系统及存储介质 | |
CN109857488B (zh) | 应用程序的调用控制方法、装置、终端及可读存储介质 | |
US20230418567A1 (en) | Constrained prefix matching for generating next token predictions | |
US20230418565A1 (en) | Validating and providing proactively generated code suggestions | |
US20230418566A1 (en) | Programmatically generating evaluation data sets for code generation models | |
JP2019160243A (ja) | 制御プログラム、制御方法および情報処理装置 | |
CN115988080B (zh) | 一种基于代理中间件的微服务资源调用方法和系统 | |
CN110321250B (zh) | 一种针对应用的容灾方法及装置 | |
US8402532B2 (en) | Host control of partial trust accessibility | |
US20230171308A1 (en) | Method and system for persisting session data | |
US20220156005A1 (en) | Service management device, service management method, and non-transitory computer-readable recording medium |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |