CN111064626B - 配置更新方法、装置、服务器及可读存储介质 - Google Patents
配置更新方法、装置、服务器及可读存储介质 Download PDFInfo
- Publication number
- CN111064626B CN111064626B CN202010000490.0A CN202010000490A CN111064626B CN 111064626 B CN111064626 B CN 111064626B CN 202010000490 A CN202010000490 A CN 202010000490A CN 111064626 B CN111064626 B CN 111064626B
- Authority
- CN
- China
- Prior art keywords
- load balancing
- configuration
- server
- configuration file
- balancing configuration
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- 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
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Abstract
本申请实施例提供一种配置更新方法、装置、服务器及可读存储介质,通过第一服务器根据编辑的负载均衡配置参数生成对应的负载均衡配置文件,并向每个第二服务器发送该负载均衡配置文件的配置更新通知,第二服务器在监听到配置更新通知后从第一服务器中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。如此,能够实现统一管理各个第二服务器的负载均衡配置更新,并且整个配置更新过程由各个第二服务器自动完成,从而极大提高负载均衡的配置更新效率和配置更新的可靠性,避免由于用户操作失误导致各个第二服务器之间负载均衡配置更新不同步的情况。
Description
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种配置更新方法、装置、服务器及可读存储介质。
背景技术
Nginx(Engine x)服务器是一个高性能的HTTP(HyperText Transfer Protocol,超文本传输协议)和反向代理Web服务器。反向代理是指以代理服务器来接收用户终端发送的请求,运用负载均衡策略将请求分发给对应的服务器集群中,并将从服务器集群上得到的请求处理结果返回给用户终端。
在大型服务器集群环境下,Nginx服务器广泛应用于业务服务器的前端负载均衡,从而可以将大量的并发请求合理地均分到服务器集群内的各后端服务节点上进行处理,有效地避免了单一服务节点数据流过大的问题,同时能够使各个后端服务节点的计算资源得到均衡使用。
在实际业务场景,经常需要对Nginx服务器进行负载均衡配置更新,传统方案中通常是由用户对配置文件进行编辑后,通过手动一一上传到每个Nginx服务器中并进行一一手动更新,该方案操作复杂,耗费大量时长,并且不易进行统一管理,往往可能由于用户操作失误导致Nginx服务器之间负载均衡配置更新不同步的情况。
发明内容
有鉴于此,本申请的目的在于提供一种配置更新方法、装置、服务器及可读存储介质,能够实现统一管理负载均衡配置更新,并且整个配置更新过程自动完成,从而极大提高负载均衡的配置更新效率和配置更新的可靠性,由于用户操作失误导致负载均衡配置更新不同步的情况。
根据本申请的一方面,提供一种配置更新方法,应用于配置更新系统,所述配置更新系统包括第一服务器以及与所述第一服务器通信连接的多个第二服务器,其中,每个所述第二服务器用于根据负载均衡策略将用户终端发送的请求分发到该请求对应的业务服务器集群中进行处理,所述方法包括:
所述第一服务器根据编辑的负载均衡配置参数生成对应的负载均衡配置文件,并向每个所述第二服务器发送该负载均衡配置文件的配置更新通知;
所述第二服务器在监听到所述配置更新通知后从所述第一服务器中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。
根据本申请的另一方面,提供一种配置更新方法,应用于第一服务器,所述第一服务器与多个第二服务器通信连接,其中,每个所述第二服务器用于根据负载均衡策略将用户终端发送的请求分发到该请求对应的业务服务器集群中进行处理,所述方法包括:
根据编辑的负载均衡配置参数生成对应的负载均衡配置文件;
向每个所述第二服务器发送该负载均衡配置文件的配置更新通知,以使所述第二服务器在监听到所述配置更新通知后从所述第一服务器中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。
根据本申请的另一方面,提供一种配置更新方法,应用于第二服务器,所述第二服务器与第一服务器通信连接,其中,所述第二服务器用于根据负载均衡策略将用户终端发送的请求分发到该请求对应的业务服务器集群中进行处理,所述方法包括:
监听所述第一服务器是否发送配置更新通知,其中,所述配置更新通知为所述第一服务器根据编辑的负载均衡配置参数生成对应的负载均衡配置文件之后生成的配置更新通知;
在监听到所述配置更新通知后,从所述第一服务器中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。
根据本申请的另一方面,提供一种配置更新装置,应用于第一服务器,所述第一服务器与多个第二服务器通信连接,其中,每个所述第二服务器用于根据负载均衡策略将用户终端发送的请求分发到该请求对应的业务服务器集群中进行处理,所述装置包括:
文件生成模块,用于根据编辑的负载均衡配置参数生成对应的负载均衡配置文件;
发送模块,用于向每个所述第二服务器发送该负载均衡配置文件的配置更新通知,以使所述第二服务器在监听到所述配置更新通知后从所述第一服务器中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。
根据本申请的另一方面,提供一种配置更新装置,应用于第二服务器,所述第二服务器与第一服务器通信连接,其中,所述第二服务器用于根据负载均衡策略将用户终端发送的请求分发到该请求对应的业务服务器集群中进行处理,所述装置包括:
监听模块,用于监听所述第一服务器是否发送配置更新通知,其中,所述配置更新通知为所述第一服务器根据编辑的负载均衡配置参数生成对应的负载均衡配置文件之后生成的配置更新通知;
拉取更新模块,用于在监听到所述配置更新通知后,从所述第一服务器中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。
根据本申请的另一方面,提供一种服务器,所述服务器包括机器可读存储介质及处理器,所述机器可读存储介质存储有机器可执行指令,所述处理器在执行所述机器可执行指令时,该服务器作为第一服务器实现上述第一服务器执行的配置更新方法,或者该服务器作为第二服务器实现上述第二服务器执行的配置更新方法。
根据本申请的另一方面,提供一种可读存储介质,所述可读存储介质中存储有机器可执行指令,所述机器可执行指令被执行时实现上述第一服务器执行的配置更新方法,或者实现上述第二服务器执行的配置更新方法。
基于上述任一方面,本申请通过第一服务器根据编辑的负载均衡配置参数生成对应的负载均衡配置文件,并向每个第二服务器发送该负载均衡配置文件的配置更新通知,第二服务器在监听到配置更新通知后从第一服务器中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。如此,能够实现统一管理各个第二服务器的负载均衡配置更新,并且整个配置更新过程由各个第二服务器自动完成,从而极大提高负载均衡的配置更新效率和配置更新的可靠性,避免由于用户操作失误导致各个第二服务器之间负载均衡配置更新不同步的情况。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的配置更新系统的交互场景示意图;
图2示出了本申请实施例所提供的配置更新方法的流程示意图之一;
图3示出了本申请实施例所提供的配置更新方法的流程示意图之二;
图4示出了本申请实施例所提供的配置更新方法的流程示意图之三;
图5示出了本申请实施例所提供的一种示例性配置更新过程的说明示意图;
图6示出了本申请实施例所提供的配置更新方法的流程示意图之四;
图7示出了本申请实施例所提供的配置更新方法的流程示意图之五;
图8示出了本申请实施例所提供的第一配置更新装置功能模块示意图;
图9示出了本申请实施例所提供的第二配置更新装置功能模块示意图;
图10示出了本申请实施例所提供的用于实现图1中所示的第一服务器和第二服务器的服务器的结构示意框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请实施例的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其它操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其它实施例,都属于本申请保护的范围。
图1示出了本申请实施例提供的配置更新系统10的交互示意图,本实施例中,该配置更新系统10可以包括第一服务器100、第二服务器200、服务器集群300以及用户终端400,第一服务器100与多个第二服务器200通信连接,每个第二服务器200分别与多个服务器集群300和多个用户终端400通信连接。
本实施例中,第二服务器200可以是Nginx服务器,可以用于将大量用户终端400的并发访问请求按照预设负载均衡策略合理地均分到服务器集群300内的各服务节点上进行处理。
本实施例中,服务器集群300可包括多个服务节点,以用于通过各个服务节点处理用户终端400的请求业务。例如当用户终端400发送访问直播间的请求时,可通过服务器集群300中的服务节点对该请求进行响应处理并返回直播间信息。
本实施例中,用户终端400可以包括但不限于移动设备、平板计算机、膝上型计算机,或其任意两种以上组合。在一些实施例中,移动设备可以包括但不限于智能家居设备、可穿戴设备、智能移动设备、增强现实设备等,或其任意组合。在一些实施例中,智能家居设备可以包括但不限于智能照明设备、智能电器设备的控制设备、智能监控设备、智能电视、智能摄像机、或对讲机等,或其任意组合。在一些实施例中,可穿戴设备可包括但不限于智能手环、智能鞋带、智能玻璃、智能头盔、智能手表、智能服装、智能背包、智能配件等、或其任何组合。在一些实施例中,智能移动设备可以包括但不限于智能手机、个人数字助理(Personal Digital Assistant,PDA)、游戏设备、导航设备、或销售点(Point Of Sale,POS)设备等,或其任意组合。在具体实施过程中,可能有零个、一个或多个用户终端400接入第二服务器200,图1中仅示出一个。其中,用户终端400中可以安装各种应用程序产品,例如,应用程序产品可以是计算机或智能手机中使用的与互联网直播服务相关的应用程序APP、Web网页、小程序等。
可以理解,图1所示的配置更新系统10仅为一种可行的示例,在其它可行的实施例中,该配置更新系统10也可以仅包括图1所示组成部分的其中一部分或者还可以包括其它的组成部分。
如前述背景技术所获知的技术问题,在信息化时代,随着移动互联网的普及,导致业务访问量和数据流量的快速增长,服务器的处理量也相应增大,从而使得服务器的负荷加大,当服务器业务压力过大,会导致业务响应速度过慢甚至停止服务。通常会搭建一个大的负载均衡集群,通过负载均衡集群中的第二服务器200将业务请求合理分配给服务器集群300中不同的服务节点处理,不但提高了业务请求响应速度,还能在某台服务节点宕机时,将业务请求转移到正常的服务节点,从而提高了业务的可靠性。
参见图1所示,通常现有技术中,当需要对负载均衡配置文件进行更新时,通常会对每一台第二服务器200进行单独操作,需要登录每一台第二服务器200,然后把负载均衡配置文件上传到第二服务器200中并进行手动配置,该方案如前述背景技术,操作复杂,耗费大量时长,并且不易进行统一管理,往往可能由于用户操作失误导致Nginx服务器之间负载均衡配置更新不同步的情况。
基于此,为了解决上述问题,图2示出了本申请实施例提供的配置更新方法的流程示意图,该配置更新方法可以由图1中所示的配置更新系统10执行,应当理解,在其它实施例中,本实施例的配置更新方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。该配置更新方法的详细步骤介绍如下。
步骤S110,第一服务器100根据编辑的负载均衡配置参数生成对应的负载均衡配置文件,并向每个第二服务器200发送该负载均衡配置文件的配置更新通知。
步骤S120,第二服务器200在监听到配置更新通知后从第一服务器100中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。
本实施例提供的配置更新方法,通过第一服务器100根据编辑的负载均衡配置参数生成对应的负载均衡配置文件,并向每个第二服务器200发送该负载均衡配置文件的配置更新通知,第二服务器200在监听到配置更新通知后从第一服务器100中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。如此,通过第一服务器100能够实现统一管理各个第二服务器200的负载均衡配置更新,并且整个配置更新过程由各个第二服务器200自动完成,从而极大提高负载均衡的配置更新效率和配置更新的可靠性,避免由于用户操作失误导致各个第二服务器200之间负载均衡配置更新不同步的情况。
在一种可能的实施方式中,针对步骤S110,为了提高负载均衡配置文件的自动生成效率,并且便于第二服务器200监听配置更新通知,第一服务器100中可以运行有配置管理系统,该配置管理系统可提供一预设配置管理页面以便于用户编辑负载均衡配置参数。例如,当用户需要新增一个访问域名时,为了便于后续用户终端400向该新增的访问域名发起请求时可以调用负载均衡策略分发请求,用户可以进一步编辑该访问域名的负载均衡配置参数(例如,可以配置负载均衡策略为轮询分发策略),当第一服务器100在从预设配置管理页面检测到编辑的负载均衡配置参数后,可以调用负载均衡配置参数对应的预设负载均衡配置模板。
其中,该预设负载均衡配置模板中可以提供有负载均衡配置参数的配置项目信息,由此可以根据预设负载均衡配置模板对负载均衡配置参数进行配置,生成对应的负载均衡配置文件。
并且,第一服务器100中还可以运行有用于构建云原生应用的动态服务发现、配置管理和服务管理的预设动态服务程序,并提供该预设动态服务程序的SDK(SoftwareDevelopment Kit,软件开发工具包)接口给配置管理系统,以便于配置管理系统可以将负载均衡配置文件通过预设动态服务程序的SDK接口推送到该预设动态服务程序中。
在一种可能的实施方式中,本实施例可以通过预设动态服务程序存储负载均衡配置文件,并向第二服务器200发送该负载均衡配置文件的配置更新通知。其中,预设动态服务程序可以用于与第二服务器200的负载均衡配置管理程序通信,从而使得第二服务器200的负载均衡配置管理程序可以监听预设动态服务程序生成的配置更新通知。
基于上述步骤,通过从预设配置管理页面检测到编辑的负载均衡配置参数后,调用负载均衡配置参数对应的预设负载均衡配置模板,并根据预设负载均衡配置模板对负载均衡配置参数进行配置,生成对应的负载均衡配置文件,可以极大提高负载均衡配置文件的自动生成效率。并且,通过将负载均衡配置文件通过预设动态服务程序的SDK接口推送到预设动态服务程序中,并通过预设动态服务程序存储负载均衡配置文件,可以便于第二服务器200监听该负载均衡配置文件的配置更新通知。
在一种可能的实施方式中,针对步骤S120,当第二服务器200从第一服务器100中拉取该负载均衡配置文件后,为了提高配置更新的可靠性,避免文件更新出错,第二服务器200首先可以获取该负载均衡配置文件的文件名称,并检测当前的配置文件存储目录中是否已经存在与该文件名称匹配的配置文件名称。如果当前的配置文件存储目录中已经存在与该文件名称匹配的配置文件名称,则删除该配置文件名称对应的原始负载均衡配置文件,并将该负载均衡配置文件保存到当前的配置文件存储目录中。如果当前的配置文件存储目录中不存在与该文件名称匹配的配置文件名称,则将该负载均衡配置文件保存到当前的配置文件存储目录中。
由此,在将该负载均衡配置文件保存到当前的配置文件存储目录中之后,第二服务器200可以执行配置生效命令以将该负载均衡配置文件配置到第二服务器200的负载均衡服务中。例如,在一种可能的实施方式中,第二服务器200可以检测该负载均衡配置文件的文件配置语法是否为有效语法,当为有效语法时,可以应用该负载均衡配置文件,在应用该负载均衡配置文件之前,为了进一步提高可靠性,可以打开预存的日志文件并新分配一个套接字socket来监听当前的负载均衡情况,如果监听失败,则仍旧采用原有的负载均衡配置文件,如果监听成功则使用该负载均衡配置文件并且为该负载均衡配置文件新建一个线程,当线程新建成功后可以发送一个关闭消息给原有的负载均衡配置文件的进程要求原有进程关闭负载均衡服务。与此同时,原有进程在接收到关闭消息之后可以继续为用户终端400发送的请求提供负载均衡服务,直到所有的请求被服务结束后,则原有进程关闭,此时可以启动新建的线程为用户终端400发送的请求提供负载均衡服务。
进一步地,在一种可能的实施方式中,在步骤S120之后,为了便于用户审计或排查每次配置更新过程中可能出现的故障,以便于用户针对这些故障针对性地进行排查和维护,请参阅图3,本实施例提供的配置更新方法还可以包括如下步骤:
步骤S130,第二服务器200记录该负载均衡配置文件的更新日志并存储在数据库中。
本实施例中,更新日志可以包括该负载均衡配置文件的更新状态以及更新版本,更新状态包括更新成功状态或者更新失败状态,以便于用户及时了解该负载均衡配置文件的配置更新成功或者失败,同时,可以便于用户及时了解该负载均衡配置文件的更新版本,以便于排查更新的负载均衡配置文件是否正确。
进一步地,在一种可能的实施方式中,在步骤S120之后,为了及时通知第一服务器100本次配置更新的结果,请参阅图4,本实施例提供的配置更新方法还可以包括如下步骤:
步骤S140,第二服务器200将该负载均衡配置文件的更新结果发送给第一服务器100。
例如,第二服务器200可以通过负载均衡服务将该负载均衡配置文件的更新结果发送给第一服务器100的配置管理系统,以便于配置管理系统记录本次配置更新的结果。
为了便于本领域技术更容易理解本实施例提供的上述方案,下面结合图5所示的具体示例对上述实施例提供的配置更新方法进行进一步示例性说明。
请参阅图5,假设第一服务器100中运行有配置管理系统,且前述的预设动态服务程序为Nacos,第二服务器200中运行的负载均衡配置管理程序为Nginx Agent,运行的负载均衡服务为Nginx。在具体实现时,可以通过配置管理系统所提供的配置管理界面获得编辑的负载均衡配置参数,然后调用编辑的负载均价配置参数所对应的负载均价配置模板以生成负载均衡配置文件,并通过Nacos的SDK接口将生成的负载均衡配置文件推送给Nacos。
Nacos可以将负载均衡配置文件进行存储后,产生负载均衡配置文件的配置更新通知并发送给第二服务器200的Nginx Agent,Nginx Agent在监听到负载均衡配置文件的配置更新通知后,可以从Nacos从拉取负载均衡配置文件,并将负载均衡配置文件更新到Nginx中。
在将负载均衡配置文件更新到Nginx中后,Nginx可以向配置管理系统推送更新结果,并可以记录该负载均衡配置文件的更新日志并存储在数据库中。
可以看出,在上述过程中,无需用户登录每个第二服务器200更新该负载均衡配置文件,只需在第一服务器100中编辑好负载均衡配置参数后,整个过程可以由第一服务器100统一通知每个第二服务器200自动拉取生成的负载均衡配置文件进行更新,从而极大提高负载均衡的配置更新效率和配置更新的可靠性,避免由于用户操作失误导致各个第二服务器200之间负载均衡配置更新不同步的情况。
基于同一发明构思,图6示出了本申请实施例提供的另一种配置更新方法的流程示意图,与前述实施例不同的是,该配置更新方法由图1中所示的第一服务器100执行。需要说明的是,接下来要描述的配置更新方法中涉及的步骤在上面实施例中已经描述过,具体各个步骤的详尽内容可参照上面的实施例描述,在此不再加以详述。下面仅对第一服务器100执行的步骤进行简要说明。
步骤S210,根据编辑的负载均衡配置参数生成对应的负载均衡配置文件。
步骤S220,向每个第二服务器200发送该负载均衡配置文件的配置更新通知,以使第二服务器200在监听到配置更新通知后从第一服务器100中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。
在一种可能的实施方式中,针对步骤S210,具体可以在从预设配置管理页面检测到编辑的负载均衡配置参数后,调用负载均衡配置参数对应的预设负载均衡配置模板,然后根据预设负载均衡配置模板对负载均衡配置参数进行配置,生成对应的负载均衡配置文件;
在一种可能的实施方式中,针对步骤S220,具体可以将负载均衡配置文件通过预设动态服务程序的SDK接口推送到预设动态服务程序中,通过预设动态服务程序存储负载均衡配置文件,并向第二服务器200发送该负载均衡配置文件的配置更新通知,其中,预设动态服务程序用于与第二服务器200的负载均衡配置管理程序通信,以使第二服务器200的负载均衡配置管理程序监听预设动态服务程序生成的配置更新通知。
基于同一发明构思,图7示出了本申请实施例提供的另一种配置更新方法的流程示意图,与前述实施例不同的是,该配置更新方法由图1中所示的第二服务器200执行。需要说明的是,接下来要描述的配置更新方法中涉及的步骤在上面实施例中已经描述过,具体各个步骤的详尽内容可参照上面的实施例描述,在此不再加以详述。下面仅对第二服务器200执行的步骤进行简要说明。
步骤S310,监听第一服务器100是否发送配置更新通知,其中,配置更新通知为第一服务器100根据编辑的负载均衡配置参数生成对应的负载均衡配置文件之后生成的配置更新通知;
步骤S320,在监听到配置更新通知后,从第一服务器100中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。
在一种可能的实施方式中,针对步骤S320,具体可以获取该负载均衡配置文件的文件名称,然后检测当前的配置文件存储目录中是否已经存在与该文件名称匹配的配置文件名称。如果当前的配置文件存储目录中已经存在与该文件名称匹配的配置文件名称,则删除该配置文件名称对应的原始负载均衡配置文件,并将该负载均衡配置文件保存到当前的配置文件存储目录中。如果当前的配置文件存储目录中不存在与该文件名称匹配的配置文件名称,则将该负载均衡配置文件保存到当前的配置文件存储目录中。而后,在将该负载均衡配置文件保存到当前的配置文件存储目录中之后,执行配置生效命令以将该负载均衡配置文件配置到第二服务器200的负载均衡服务中。
在一种可能的实施方式中,当根据该负载均衡配置文件进行负载均衡配置更新之后,第二服务器200还可以记录该负载均衡配置文件的更新日志并存储在数据库中,更新日志包括该负载均衡配置文件的更新状态以及更新版本,更新状态包括更新成功状态或者更新失败状态。
基于同一发明构思,请参阅图8,示出了本申请实施例提供的第一配置更新装置110的功能模块示意图,本实施例可以根据上述第一服务器100执行的方法实施例对第一配置更新装置110进行功能模块的划分。例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。比如,在采用对应各个功能划分各个功能模块的情况下,图8示出的第一配置更新装置110只是一种装置示意图。其中,第一配置更新装置110可以包括文件生成模块111和发送模块112,下面分别对该第一配置更新装置110的各个功能模块的功能进行详细阐述。
文件生成模块111,用于根据编辑的负载均衡配置参数生成对应的负载均衡配置文件。可以理解,该文件生成模块111可以用于执行上述步骤S210,关于该文件生成模块111的详细实现方式可以参照上述对步骤S210有关的内容。
发送模块112,用于向每个第二服务器200发送该负载均衡配置文件的配置更新通知,以使第二服务器200在监听到配置更新通知后从第一服务器100中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。可以理解,该发送模块112可以用于执行上述步骤S220,关于该发送模块112的详细实现方式可以参照上述对步骤S220有关的内容。
基于同一发明构思,请参阅图9,示出了本申请实施例提供的第二配置更新装置210的功能模块示意图,本实施例可以根据上述第二服务器200执行的方法实施例对第二配置更新装置210进行功能模块的划分。例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。比如,在采用对应各个功能划分各个功能模块的情况下,图8示出的第二配置更新装置210只是一种装置示意图。其中,第二配置更新装置210可以包括文件生成模块111和发送模块112,下面分别对该第二配置更新装置210的各个功能模块的功能进行详细阐述。
监听模块211,用于监听第一服务器100是否发送配置更新通知,其中,配置更新通知为第一服务器100根据编辑的负载均衡配置参数生成对应的负载均衡配置文件之后生成的配置更新通知。可以理解,该监听模块211可以用于执行上述步骤S310,关于该监听模块211的详细实现方式可以参照上述对步骤S310有关的内容。
拉取更新模块212,用于在监听到配置更新通知后,从第一服务器100中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。可以理解,该拉取更新模块212可以用于执行上述步骤S320,关于该拉取更新模块212的详细实现方式可以参照上述对步骤S320有关的内容。
基于同一发明构思,请参阅图10,示出了本申请实施例提供的用于执行上述配置更新方法的服务器500的结构示意框图,该服务器500可以用于实现图1中所示的第一服务器100和第二服务器200,其可包括机器可读存储介质520和处理器530。
本实施例中,机器可读存储介质520与处理器530均位于服务器500中且二者分离设置。然而,应当理解的是,机器可读存储介质520也可以是独立于服务器500之外,且可以由处理器530通过总线接口来访问。可替换地,机器可读存储介质520也可以集成到处理器530中,例如,可以是高速缓存和/或通用寄存器。
处理器530是该服务器500的控制中心,利用各种接口和线路连接整个服务器500的各个部分,通过运行或执行存储在机器可读存储介质520内的软件程序和/或模块,以及调用存储在机器可读存储介质520内的数据,执行该服务器500的各种功能和处理数据,从而对服务器500进行整体监控。可选地,处理器530可包括一个或多个处理核心;例如,处理器530可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器中。
其中,处理器530可以是一个通用的中央处理器(Central Processing Unit,CPU),微处理器,特定应用集成电路(Application-Specific Integrated Circuit,ASIC),或一个或多个用于控制上述第一服务器100或者上述第二服务器200执行的方法实施例提供的配置更新方法的程序执行的集成电路。
机器可读存储介质520可以是ROM或可存储静态信息和指令的其他类型的静态存储设备,RAM或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(Electrically Erasable Programmabler-Only MEMory,EEPROM)、只读光盘(Compactdisc Read-Only MEMory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。机器可读存储介质520可以是独立存在,通过通信总线与处理器530相连接。机器可读存储介质520也可以和处理器集成在一起。其中,机器可读存储介质520用于存储执行本申请方案的机器可执行指令。处理器530用于执行机器可读存储介质520中存储的机器可执行指令,以实现上述第一服务器100或者上述第二服务器200执行的方法实施例提供的配置更新方法。
由于本申请实施例提供的服务器500是上述第一服务器100或者上述第二服务器200执行的方法实施例提供的配置更新方法的另一种实现形式,且服务器500可用于执行上述第一服务器100或者上述第二服务器200执行的方法实施例提供的配置更新方法,因此其所能获得的技术效果可参考上述方法实施例,在此不再赘述。
进一步地,本申请实施例还提供一种包含计算机可执行指令的可读存储介质,计算机可执行指令在被执行时可以用于实现上述方法实施例提供的配置更新方法。
本申请实施例是参照根据本申请实施例的方法、设备和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其他变化。在权利要求中,“包括”一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
以上所述,仅为本申请的各种实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (14)
1.一种配置更新方法,其特征在于,应用于配置更新系统,所述配置更新系统包括第一服务器以及与所述第一服务器通信连接的多个第二服务器,其中,每个所述第二服务器用于根据负载均衡策略将用户终端发送的请求分发到该请求对应的业务服务器集群中进行处理,所述方法包括:
所述第一服务器根据编辑的负载均衡配置参数生成对应的负载均衡配置文件,并向每个所述第二服务器发送该负载均衡配置文件的配置更新通知,其中所述负载均衡配置文件由所述第一服务器根据预设负载均衡配置模板对编辑的负载均衡配置参数进行配置得到;
所述第二服务器在监听到所述配置更新通知后从所述第一服务器中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。
2.根据权利要求1所述的配置更新方法,其特征在于,所述第一服务器根据编辑的负载均衡配置参数生成对应的负载均衡配置文件,并向每个所述第二服务器发送该负载均衡配置文件的配置更新通知的步骤,包括:
所述第一服务器在从预设配置管理页面检测到编辑的负载均衡配置参数后,调用所述负载均衡配置参数对应的预设负载均衡配置模板;
根据所述预设负载均衡配置模板对所述负载均衡配置参数进行配置,生成对应的负载均衡配置文件;
将所述负载均衡配置文件通过预设动态服务程序的SDK接口推送到预设动态服务程序中,通过所述预设动态服务程序存储所述负载均衡配置文件,并向第二服务器发送该负载均衡配置文件的配置更新通知,其中,所述预设动态服务程序用于与所述第二服务器的负载均衡配置管理程序通信,以使所述第二服务器的负载均衡配置管理程序监听所述预设动态服务程序生成的配置更新通知。
3.根据权利要求1所述的配置更新方法,其特征在于,所述根据该负载均衡配置文件进行负载均衡配置更新的步骤,包括:
获取该负载均衡配置文件的文件名称;
检测当前的配置文件存储目录中是否已经存在与该文件名称匹配的配置文件名称;
如果当前的配置文件存储目录中已经存在与该文件名称匹配的配置文件名称,则删除该配置文件名称对应的原始负载均衡配置文件,并将该负载均衡配置文件保存到当前的配置文件存储目录中;
如果当前的配置文件存储目录中不存在与该文件名称匹配的配置文件名称,则将该负载均衡配置文件保存到当前的配置文件存储目录中;
在将该负载均衡配置文件保存到当前的配置文件存储目录中之后,执行配置生效命令以将该负载均衡配置文件配置到所述第二服务器的负载均衡服务中。
4.根据权利要求1-3中任意一项所述的配置更新方法,其特征在于,所述根据该负载均衡配置文件进行负载均衡配置更新的步骤之后,所述方法还包括:
所述第二服务器记录该负载均衡配置文件的更新日志并存储在数据库中,所述更新日志包括该负载均衡配置文件的更新状态以及更新版本,所述更新状态包括更新成功状态或者更新失败状态。
5.根据权利要求1-3中任意一项所述的配置更新方法,其特征在于,所述根据该负载均衡配置文件进行负载均衡配置更新的步骤之后,所述方法还包括:
所述第二服务器将该负载均衡配置文件的更新结果发送给所述第一服务器。
6.一种配置更新方法,其特征在于,应用于第一服务器,所述第一服务器与多个第二服务器通信连接,其中,每个所述第二服务器用于根据负载均衡策略将用户终端发送的请求分发到该请求对应的业务服务器集群中进行处理,所述方法包括:
根据编辑的负载均衡配置参数生成对应的负载均衡配置文件,其中所述负载均衡配置文件由所述第一服务器根据预设负载均衡配置模板对编辑的负载均衡配置参数进行配置得到;
向每个所述第二服务器发送该负载均衡配置文件的配置更新通知,以使所述第二服务器在监听到所述配置更新通知后从所述第一服务器中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。
7.根据权利要求6所述的配置更新方法,其特征在于,所述根据编辑的负载均衡配置参数生成对应的负载均衡配置文件的步骤,包括:
在从预设配置管理页面检测到编辑的负载均衡配置参数后,调用所述负载均衡配置参数对应的预设负载均衡配置模板;
根据所述预设负载均衡配置模板对所述负载均衡配置参数进行配置,生成对应的负载均衡配置文件;
向每个所述第二服务器发送该负载均衡配置文件的配置更新通知的步骤,包括:
将所述负载均衡配置文件通过预设动态服务程序的SDK接口推送到预设动态服务程序中,通过所述预设动态服务程序存储所述负载均衡配置文件,并向第二服务器发送该负载均衡配置文件的配置更新通知,其中,所述预设动态服务程序用于与所述第二服务器的负载均衡配置管理程序通信,以使所述第二服务器的负载均衡配置管理程序监听所述预设动态服务程序生成的配置更新通知。
8.一种配置更新方法,其特征在于,应用于第二服务器,多个所述第二服务器与第一服务器通信连接,其中,每个所述第二服务器用于根据负载均衡策略将用户终端发送的请求分发到该请求对应的业务服务器集群中进行处理,所述方法包括:
监听所述第一服务器是否发送配置更新通知,其中,所述配置更新通知为所述第一服务器根据编辑的负载均衡配置参数生成对应的负载均衡配置文件之后生成的配置更新通知,其中所述负载均衡配置文件由所述第一服务器根据预设负载均衡配置模板对编辑的负载均衡配置参数进行配置得到;
在监听到所述配置更新通知后,从所述第一服务器中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。
9.根据权利要求8所述的配置更新方法,其特征在于,所述根据该负载均衡配置文件进行负载均衡配置更新的步骤,包括:
获取该负载均衡配置文件的文件名称;
检测当前的配置文件存储目录中是否已经存在与该文件名称匹配的配置文件名称;
如果当前的配置文件存储目录中已经存在与该文件名称匹配的配置文件名称,则删除该配置文件名称对应的原始负载均衡配置文件,并将该负载均衡配置文件保存到当前的配置文件存储目录中;
如果当前的配置文件存储目录中不存在与该文件名称匹配的配置文件名称,则将该负载均衡配置文件保存到当前的配置文件存储目录中;
在将该负载均衡配置文件保存到当前的配置文件存储目录中之后,执行配置生效命令以将该负载均衡配置文件配置到所述第二服务器的负载均衡服务中。
10.根据权利要求8或9所述的配置更新方法,其特征在于,所述根据该负载均衡配置文件进行负载均衡配置更新的步骤之后,所述方法还包括:
记录该负载均衡配置文件的更新日志并存储在数据库中,所述更新日志包括该负载均衡配置文件的更新状态以及更新版本,所述更新状态包括更新成功状态或者更新失败状态。
11.一种配置更新装置,其特征在于,应用于第一服务器,所述第一服务器与多个第二服务器通信连接,其中,每个所述第二服务器用于根据负载均衡策略将用户终端发送的请求分发到该请求对应的业务服务器集群中进行处理,所述装置包括:
文件生成模块,用于根据编辑的负载均衡配置参数生成对应的负载均衡配置文件,所述负载均衡配置文件由所述第一服务器根据预设负载均衡配置模板对编辑的负载均衡配置参数进行配置得到;
发送模块,用于向每个所述第二服务器发送该负载均衡配置文件的配置更新通知,以使所述第二服务器在监听到所述配置更新通知后从所述第一服务器中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。
12.一种配置更新装置,其特征在于,应用于第二服务器,多个所述第二服务器与第一服务器通信连接,其中,每个所述第二服务器用于根据负载均衡策略将用户终端发送的请求分发到该请求对应的业务服务器集群中进行处理,所述装置包括:
监听模块,用于监听所述第一服务器是否发送配置更新通知,其中,所述配置更新通知为所述第一服务器根据编辑的负载均衡配置参数生成对应的负载均衡配置文件之后生成的配置更新通知,所述负载均衡配置文件由所述第一服务器根据预设负载均衡配置模板对编辑的负载均衡配置参数进行配置得到;
拉取更新模块,用于在监听到所述配置更新通知后,从所述第一服务器中拉取该负载均衡配置文件,并根据该负载均衡配置文件进行负载均衡配置更新。
13.一种服务器,所述服务器包括机器可读存储介质及处理器,所述机器可读存储介质存储有机器可执行指令,所述处理器在执行所述机器可执行指令时,该服务器作为第一服务器实现权利要求6或7所述的配置更新方法,或者该服务器作为第二服务器实现权利要求8-10中任意一项所述的配置更新方法。
14.一种可读存储介质,其特征在于,所述可读存储介质中存储有机器可执行指令,所述机器可执行指令被执行时实现权利要求6所述的配置更新方法,或者实现权利要求8-10中任意一项所述的配置更新方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010000490.0A CN111064626B (zh) | 2020-01-02 | 2020-01-02 | 配置更新方法、装置、服务器及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010000490.0A CN111064626B (zh) | 2020-01-02 | 2020-01-02 | 配置更新方法、装置、服务器及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111064626A CN111064626A (zh) | 2020-04-24 |
CN111064626B true CN111064626B (zh) | 2023-05-26 |
Family
ID=70304806
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010000490.0A Active CN111064626B (zh) | 2020-01-02 | 2020-01-02 | 配置更新方法、装置、服务器及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111064626B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111562950B (zh) * | 2020-04-28 | 2023-05-23 | 中国银行股份有限公司 | 一种分布式应用参数动态发布的系统及方法 |
US20240118941A1 (en) * | 2020-12-14 | 2024-04-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Load balancing in a system |
CN112860343B (zh) * | 2021-02-10 | 2024-04-23 | 北京百度网讯科技有限公司 | 配置变更方法、系统、装置、电子设备以及存储介质 |
CN115065686B (zh) * | 2022-07-29 | 2024-02-27 | 中国工商银行股份有限公司 | 分布式负载均衡系统的配置方法、装置及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107210924A (zh) * | 2014-12-29 | 2017-09-26 | 瑞典爱立信有限公司 | 用于配置通信系统的方法和设备 |
CN110162405A (zh) * | 2019-05-31 | 2019-08-23 | 福建南威软件有限公司 | 一种自动服务发现与负载均衡的方法及系统 |
CN110417870A (zh) * | 2019-07-05 | 2019-11-05 | 北京达佳互联信息技术有限公司 | 配置文件管理方法、装置、设备和存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050289388A1 (en) * | 2004-06-23 | 2005-12-29 | International Business Machines Corporation | Dynamic cluster configuration in an on-demand environment |
US9128770B2 (en) * | 2008-11-25 | 2015-09-08 | Citrix Systems, Inc. | Systems and methods for GSLB auto synchronization |
CN104468148B (zh) * | 2013-09-12 | 2019-03-22 | 中兴通讯股份有限公司 | 一种nginx服务器配置维护方法及系统 |
US10742731B2 (en) * | 2015-06-10 | 2020-08-11 | International Business Machines Corporation | Maintaining service configuration consistency across nodes of a clustered file system |
CN107908708A (zh) * | 2017-11-09 | 2018-04-13 | 北京锐安科技有限公司 | 一种集群文件同步的方法、系统、设备和存储介质 |
CN107911470B (zh) * | 2017-11-30 | 2018-12-14 | 掌阅科技股份有限公司 | 分布式动态负载均衡方法、计算设备及计算机存储介质 |
CN108521342B (zh) * | 2018-03-26 | 2021-08-13 | 北京奇艺世纪科技有限公司 | 一种集群的管理方法及装置 |
CN109347675B (zh) * | 2018-10-31 | 2022-04-08 | 新华三大数据技术有限公司 | 服务器配置方法、装置以及电子设备 |
CN109710586B (zh) * | 2018-12-28 | 2019-09-13 | 北京谷数科技有限公司 | 一种集群节点配置文件同步方法及装置 |
-
2020
- 2020-01-02 CN CN202010000490.0A patent/CN111064626B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107210924A (zh) * | 2014-12-29 | 2017-09-26 | 瑞典爱立信有限公司 | 用于配置通信系统的方法和设备 |
CN110162405A (zh) * | 2019-05-31 | 2019-08-23 | 福建南威软件有限公司 | 一种自动服务发现与负载均衡的方法及系统 |
CN110417870A (zh) * | 2019-07-05 | 2019-11-05 | 北京达佳互联信息技术有限公司 | 配置文件管理方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111064626A (zh) | 2020-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111064626B (zh) | 配置更新方法、装置、服务器及可读存储介质 | |
WO2016184175A1 (zh) | 数据库处理方法及装置 | |
CN113067850B (zh) | 一种多云场景下的集群编排系统 | |
CN106713469B (zh) | 用于分布式容器的动态加载方法、装置及系统 | |
CN115220874B (zh) | 一种Kubernetes集群部署方法、装置、设备及存储介质 | |
CN112860343B (zh) | 配置变更方法、系统、装置、电子设备以及存储介质 | |
CN108667660B (zh) | 路由管理和业务路由的方法和装置及路由系统 | |
CN111400041A (zh) | 服务器配置文件的管理方法、装置及计算机可读存储介质 | |
CN105404530B (zh) | 一种实现简易部署和使用私有云的系统及方法 | |
CN109343970B (zh) | 基于应用程序的操作方法、装置、电子设备及计算机介质 | |
CN114679380B (zh) | 边缘集群的创建方法和相关装置 | |
CN112044061B (zh) | 游戏画面处理方法、装置、电子设备以及存储介质 | |
CN113556359A (zh) | 一种通讯协议转换方法、设备、系统及网关设备 | |
CN112463251A (zh) | 一种uliweb框架配置热发布的方法和装置 | |
CN112073499A (zh) | 一种多机型云物理服务器的动态服务方法 | |
US10110502B1 (en) | Autonomous host deployment in managed deployment systems | |
CN114900449B (zh) | 一种资源信息管理方法、系统及装置 | |
CN114500289B (zh) | 控制平面恢复方法、装置、控制节点及存储介质 | |
CN114070889B (zh) | 配置方法、流量转发方法、设备、存储介质及程序产品 | |
CN115629909A (zh) | 业务数据处理的方法、装置、电子设备和存储介质 | |
CN114553859A (zh) | 一种bmc配置管理方法、装置、电子设备及存储介质 | |
CN112099879B (zh) | 配置信息管理方法、装置、计算机设备及存储介质 | |
CN113868184A (zh) | 一种主从架构基于缓存的配置中心的配置方法及系统 | |
CN110768855B (zh) | 链路化性能测试的方法和装置 | |
CN109117152B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |