一种后台配置文件的同步方法、装置及系统转让专利

申请号 : CN201610281209.9

文献号 : CN105975528B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 林泽通

申请人 : 努比亚技术有限公司

摘要 :

本发明公开了一种后台配置文件的同步方法、装置及系统,涉及通讯技术领域。方法流程包括:对信息进行配置并保存配置信息;将所述配置信息写入关系型数据库;将所述配置信息写入本地文件系统中生成新的配置文件;将所述配置文件上传到分布式文件系统。采用本发明的后台配置文件的同步方法、装置及系统,能够分散访问压力,避免了由于数据的集中式管理出现的服务器雪崩的现象。

权利要求 :

1.一种后台配置文件的同步方法,适用于配置服务器,其特征在于,所述方法包括步骤:

对信息进行配置并保存配置信息;

将所述配置信息写入关系型数据库;

将所述配置信息写入本地文件系统中生成新的配置文件;

计算所述新的配置文件的文件特征码;

将所述文件特征码写入非关系型数据库中指定的关键值中;

将所述配置文件上传到分布式文件系统。

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:接收应用服务器发送的配置文件的访问请求;

在所述本地文件系统中查找所述配置文件;

若在所述本地文件系统中查找失败,从所述分布式文件系统中查找所述配置文件,并将所述配置文件写入所述本地文件系统;

若在所述分布式文件系统中查找失败,从所述关系型数据库中查找与所述配置文件对应的配置信息。

3.根据权利要求2所述的方法,其特征在于,所述在本地文件系统中查找所述配置文件,包括:

判断所述本地文件系统中是否存在所述配置文件;

若存在所述配置文件,计算所述配置文件的文件特征码;

判断所述文件特征码是否与所述非关系型数据库中指定的关键值一致;

若一致,读取所述配置文件;

否则,确定在所述本地文件系统中查找失败。

4.根据权利要求1至3任一项所述的方法,其特征在于,所述将所述配置文件上传到分布式文件系统时,所述方法还包括:设置所述配置文件的权限控制。

5.一种后台配置文件的同步装置,适用于配置服务器,其特征在于,所述装置包括:配置单元,用于对信息进行配置并保存配置信息;

处理单元,用于将所述配置信息写入关系型数据库,以及用于将所述配置信息写入本地文件系统中生成新的配置文件,并计算所述新的配置文件的文件特征码,将所述文件特征码写入非关系型数据库中指定的关键值中;

上传单元,用于将所述配置文件上传到分布式文件系统。

6.根据权利要求5所述的装置,其特征在于,所述装置还包括:接收单元,用于接收应用服务器发送的配置文件的访问请求;

查找单元,用于在所述本地文件系统中查找所述配置文件,或者用于在所述本地文件系统中查找失败时,从所述分布式文件系统中查找所述配置文件,并将所述配置文件写入所述本地文件系统,或者用于在所述分布式文件系统中查找失败时,从所述关系型数据库中查找与所述配置文件对应的配置信息。

7.根据权利要求6所述的装置,其特征在于,所述查找单元,还包括:第一判断模块,用于判断所述本地文件系统中是否存在所述配置文件;

计算模块,用于在存在所述配置文件时,计算所述配置文件的文件特征码;

第二判断模块,用于判断所述文件特征码是否与所述非关系型数据库中指定的关键值一致,并在不一致时,确定在所述本地文件系统中查找失败;

读取模块,用于在计算的文件特征码与所述非关系型数据库中指定的关键值一致时,读取所述配置文件。

8.根据权利要求5至7任一项所述的装置,其特征在于,所述装置还包括:设置单元,用于在将所述配置文件上传到文件系统时,设置所述配置文件的访问权限。

说明书 :

一种后台配置文件的同步方法、装置及系统

技术领域

[0001] 本发明涉及通讯技术领域,尤其涉及后台配置文件的同步方法、装置及系统。

背景技术

[0002] 在电商系统中,运营和开发工程是分离的,网站上的内容的展示和修改,一般都采用后台配置的方式进行,这样即能减少开发工程师直接修改代码的频率,也有利于运营人
员根据需要更加快速和方便的发布内容。
[0003] 现有技术中,一般中小型的网站中常采用多台应用服务器,保证运营人员配置的内容能在所有的应用服务器中显示一致十分重要。现有技术的一个方法是将数据存储在
mysql等关系型数据库中,应用服务器从同一个数据表中读取数据得到内容,但是,如果应
用服务器较多的话,每一次请求都要到数据库中读取数据,会造成数据库的压力,如果数据
库压力大较大,还会造成数据读取失败;第二个方法是是将数据写到redis等no sql中,应
用服务器从no sql中读取信息,但如果该配置文件较大,达到kb级别,在读取时会有较大的
网络io延迟,读取缓慢;第三个方法是将文件生成在配置服务器中,在配置服务器开启一个
监听服务,在各个应用服务器中开启一个server服务,当监听到配置文件有变动时,通过广
播的方式通知各应用服务器同步配置文件到本地,这种方案在配置服务器中需要多启动一
个服务,在各个应用服务器中启动sever服务,每增加一台新的机器都要去启动server服
务,增加运维的工作量和复杂度。

发明内容

[0004] 本发明的主要目的在于提出一种后台配置文件的同步方法、装置及系统,旨在解决现有技术电商系统中后台配置文件同步时,数据库压力大,增加运维的工作量和复杂度
的缺陷。
[0005] 为实现上述目的,本发明提供的一种后台配置文件的同步方法,适用于配置服务器,其特征在于,所述方法包括步骤:
[0006] 对相关信息进行配置并保存配置信息;
[0007] 将所述配置信息写入关系型数据库;
[0008] 将所述配置信息写入本地文件系统中生成新的配置文件;
[0009] 将所述配置文件上传到分布式文件系统。
[0010] 在一个优选的方案中,所述方法还包括:
[0011] 接收应用服务器发送的配置文件的访问请求;
[0012] 在约定的路径中查找所述配置文件;
[0013] 若在所述约定的路径中查找失败,从所述文件系统中查找所述配置文件,并将所述配置文件写入所述本地文件系统;
[0014] 若在所述文件系统中查找失败,从所述关系型数据库中查找与所述配置文件对应的配置信息。
[0015] 在一个优选的方案中,所述将所述配置文件上传到文件系统之前,所述方法还包括:
[0016] 计算所述新的配置文件的文件特征码;
[0017] 将所述文件特征码写入非关系型数据库中指定的关键值中。
[0018] 在一个优选的方案中,所述在约定的路径中查找所述配置文件,包括:
[0019] 判断所述约定的路径中是否存在所述配置文件;
[0020] 若存在所述配置文件,计算所述配置文件的文件特征码;
[0021] 判断所述文件特征码是否与所述非关系型数据库中指定的关键值一致;
[0022] 若一致,读取所述配置文件;
[0023] 否则,确定在所述约定的路径中查找失败。
[0024] 在一个优选的方案中,所述将所述配置文件上传到分布式文件系统时,所述方法还包括:
[0025] 设置所述配置文件的权限控制。
[0026] 此外,为实现上述目的,本发明还提出一种后台配置文件的同步装置,适用于配置服务器,所述装置包括:
[0027] 配置单元,用于对相关信息进行配置并保存配置信息;
[0028] 处理单元,用于将所述配置信息写入关系型数据库,以及用于将所述配置信息写入本地文件系统中生成新的配置文件;
[0029] 上传单元,用于将所述配置文件上传到分布式文件系统。
[0030] 在一个优选的方案中,所述装置还包括:
[0031] 接收单元,用于接收应用服务器发送的配置文件的访问请求;
[0032] 查找单元,用于在约定的路径中查找所述配置文件,或者用于在所述约定的路径中查找失败时,从所述文件系统中查找所述配置文件,并将所述配置文件写入所述本地文
件系统,或者用于在所述文件系统中查找失败时,从所述关系型数据库中查找与所述配置
文件对应的配置信息。
[0033] 在一个优选的方案中,所述处理单元,还用在将所述配置文件上传到文件系统之前,计算所述新的配置文件的文件特征码,并将所述文件特征码写入非关系型数据库中指
定的关键值中。
[0034] 在一个优选的方案中,所述查找单元,还包括:
[0035] 第一判断模块,用于判断所述约定的路径中是否存在所述配置文件;
[0036] 计算模块,用于在存在所述配置文件时,计算所述配置文件的文件特征码;
[0037] 第二判断模块,用于判断所述文件特征码是否与所述非关系型数据库中指定的关键值一致,并在不一致时,确定在所述约定的路径中查找失败;
[0038] 读取模块,用于在计算的文件特征码与所述非关系型数据库中指定的关键值一致时,读取所述配置文件。
[0039] 在一个优选的方案中,所述装置还包括:
[0040] 设置单元,用于在将所述配置文件上传到文件系统时,设置所述配置文件的访问权限。
[0041] 此外,为实现上述目的,本发明还提出一种后台配置文件的同步系统,所述系统包括配置服务器、关系型数据库、非关系型数据库以及文件系统:
[0042] 所述配置服务器包括如上所述的同步装置,分别与所述关系型数据库、所述非关系型数据库以及所述文件系统通讯连接,用于对相关信息进行配置以及生成新的配置文
件,并根据应用服务器发送的访问请求,从所述关系型数据库、非关系型数据库或文件系统
中查找请求访问的配置文件;
[0043] 所述关系型数据库,用于存储配置信息;
[0044] 所述非关系型数据库,用于存储所述新的配置文件的文件特征码;
[0045] 所述文件系统,用于存储所述新的配置文件。
[0046] 本发明提出的本实施例的本实施例的后台配置文件的同步方法、装置及系统,将配置信息写入关系行数据库,并且在本地文件系统中生成新的配置文件,并将新的配置文
件上传到文件系统,因此,在用户通过应用服务器向配置服务器访问配置文件时,可以根据
需要从本地或从文件系统查找配置文件,或从关系型数据库查找配置信息,分散了访问压
力,避免了由于数据的集中式管理出现的服务器雪崩的现象。

附图说明

[0047] 图1为本发明实施例一提供的一种后台配置文件的同步方法的流程图;
[0048] 图2为本发明实施例二提供的一种后台配置文件的同步装置的模块结构示意图;
[0049] 图3为本发明实施例三提供的一种后台配置文件的同步方法中同步配置阶段的流程图;
[0050] 图4为本发明实施例三提供的一种后台配置文件的同步方法中访问阶段的流程图;
[0051] 图5为本发明实施例四提供的一种后台配置文件的同步装置的模块结构示意图;
[0052] 图6为本发明实施例五提供的一种后台配置文件的同步系统的结构示意图。
[0053] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

[0054] 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0055] 现在将参考附图描述实现本发明各个实施例的移动终端。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身
并没有特定的意义。因此,″模块″与″部件″可以混合地使用。
[0056] 如图1所示,本发明第一实施例提出一种后台配置文件的同步方法,适用于配置服务器,该方法包括步骤:
[0057] S101、对信息进行配置并保存配置信息;
[0058] S102、将该配置信息写入关系型数据库;
[0059] S103、将该配置信息写入本地文件系统中生成新的配置文件;
[0060] S104、将该配置文件上传到分布式文件系统。
[0061] 本实施例的后台配置文件的同步方法,将配置信息写入关系行数据库,并且在本地文件系统中生成新的配置文件,并将新的配置文件上传到文件系统,因此,在用户通过应
用服务器向配置服务器访问配置文件时,可以根据需要从本地或从文件系统查找配置文
件,或从关系型数据库查找配置信息,分散了访问压力,避免了由于数据的集中式管理出现
的服务器雪崩的现象。
[0062] 本发明实施例二提供了一种后台配置文件的同步装置,适用于配置服务器,请参阅图2,该装置包括:
[0063] 配置单元201,用于对信息进行配置并保存配置信息;
[0064] 处理单元202,用于将该配置信息写入关系型数据库,以及用于将该配置信息写入本地文件系统中生成新的配置文件;
[0065] 上传单元203,用于将该配置文件上传到分布式文件系统。
[0066] 本实施例的后台配置文件的同步装置,将配置信息写入关系行数据库,并且在本地文件系统中生成新的配置文件,并将新的配置文件上传到文件系统,因此,在用户通过应
用服务器向配置服务器访问配置文件时,可以根据需要从本地或从文件系统查找配置文
件,或从关系型数据库查找配置信息,分散了访问压力,避免了由于数据的集中式管理出现
的服务器雪崩的现象。
[0067] 在上述实施例的基础上,本发明实施例三提供了另一种后台配置文件的同步方法,该方法适用于配置服务器,为了描述方便,将本实施例的方法分成同步配置和访问两个
阶段进行描述,本发明实施例中非关系型数据库以no sql数据库进行为例进行说明。
[0068] 请参阅图3,同步配置阶段的方法流程包括:
[0069] S301、在服务器的配置界面对相关信息进行配置并保存配置信息;
[0070] S302、将保存的配置信息写入关系型数据库;
[0071] S303、读取该配置信息,将该配置信息写入本地文件系统中生成新的配置文件;
[0072] S304、计算新的配置文件的文件特征码;
[0073] S305、将该文件特征码写入no sql数据库中指定的关键值中;
[0074] 实际应用中,技术文件特征码,可以防止配置文件被篡改。技术文件特征码可以采用md5。
[0075] S306、将该配置文件上传到分布式文件系统;
[0076] 实际应用中,可以在该步骤中设置该配置文件的权限控制,通过权限控制防止文件的泄露。
[0077] 实际应用中,关系型数据库和no sql数据库都可以是集群类型。
[0078] 请参阅图4,访问阶段方法流程包括:
[0079] S401、接收应用服务器发送的配置文件的访问请求;
[0080] S402、在约定的路径中查找该配置文件,判断该约定的路径中是否存在该配置文件,若存在该配置文件,执行步骤S403,否则执行步骤S404;
[0081] S403、计算该配置文件的文件特征码;
[0082] S4031、判断该文件特征码是否与该no sql数据库中指定的关键值一致,若一致执行步骤S4032,否则执行步骤S4033。
[0083] S4032、读取该配置文件。
[0084] S4033、确定在该约定的路径中查找失败,执行步骤S404。
[0085] S404、该文件系统中查找该配置文件,若查找到该配置文件,执行步骤S405、否则执行步骤S406。
[0086] 实际应用中,如果该配置文件设置了权限控制,文件系统将会对访问者的权限进行验证,只有访问者的权限为允许访问时,才允许访问者读取该配置文件。
[0087] S405、将该配置文件写入该本地文件系统。
[0088] S406、从该关系型数据库中查找与该配置文件对应的配置信息。
[0089] 本实施例的方法,可以对异常情况进行处理,保证系统的高可用,处理情况如下:
[0090] 1、如果在从no sql读取数据的时候出错,则应用程序会直接从分布式文件系统中读取文件,并写入本地文件中,保证系统的正常运行;
[0091] 2、如果在从分布式文件系统中读取文件也失败了,应用程序会直接从关系型数据库中读取配置信息,保证个人系统的可用,虽然这可能会造成数据库的压力飙升,使数据库
不可用,但是在本实施例采用了集群式的no sql服务器和高可用的分布式文件系统的情况
下,能保证该系统的高可用性能承受较大的并发压力,基本不会出现直接访问数据库的情
况。
[0092] 本实施例的本实施例的后台配置文件的同步方法,将配置信息写入关系行数据库,并且在本地文件系统中生成新的配置文件,并将新的配置文件上传到文件系统,因此,
在用户通过应用服务器向配置服务器访问配置文件时,可以根据需要从本地或从文件系统
查找配置文件,或从关系型数据库查找配置信息,分散了访问压力,避免了由于数据的集中
式管理出现的服务器雪崩的现象。
[0093] 在上述实施例的基础上,本发明实施例四提供一种后台配置文件的同步装置,本发明实施例中非关系型数据库以no sql数据库进行为例进行说明,请参阅图5,包括:
[0094] 配置单元501,用于对相关信息进行配置并保存配置信息;
[0095] 处理单元502,用于将该配置信息写入关系型数据库,以及用于将该配置信息写入本地文件系统中生成新的配置文件;
[0096] 上传单元503,用于将该配置文件上传到文件系统。
[0097] 在一个可选的方案中,该处理单元502,还用在将该配置文件上传到文件系统之前,计算该新的配置文件的文件特征码,并将该文件特征码写入no sql数据库中指定的关
键值中。
[0098] 接收单元504,用于接收应用服务器发送的配置文件的访问请求;
[0099] 查找单元505,用于在约定的路径中查找该配置文件,或者用于在该约定的路径中查找失败时,从该文件系统中查找该配置文件,并将该配置文件写入该本地文件系统,或者
用于在该文件系统中查找失败时,从该关系型数据库中查找与该配置文件对应的配置信
息。
[0100] 查找单元505,还包括:
[0101] 第一判断模块,用于判断该约定的路径中是否存在该配置文件;
[0102] 计算模块,用于在存在该配置文件时,计算该配置文件的文件特征码;
[0103] 第二判断模块,用于判断该文件特征码是否与该no sql数据库中指定的关键值一致,并在不一致时,确定在该约定的路径中查找失败;
[0104] 读取模块,用于在计算的文件特征码与该no sql数据库中指定的关键值一致时,读取该配置文件。
[0105] 在一个可选的方案中,该装置还包括:设置单元,用于在将该配置文件上传到文件系统时,设置该配置文件的访问权限。
[0106] 本实施例的本实施例的后台配置文件的同步装置,将配置信息写入关系行数据库,并且在本地文件系统中生成新的配置文件,并将新的配置文件上传到文件系统,因此,
在用户通过应用服务器向配置服务器访问配置文件时,可以根据需要从本地或从文件系统
查找配置文件,或从关系型数据库查找配置信息,分散了访问压力,避免了由于数据的集中
式管理出现的服务器雪崩的现象。
[0107] 本发明实施例五还提供了一种后台配置文件的同步系统,请参阅图6,该系统包括配置服务器601、关系型数据库602、no sql数据库603以及文件系统604。
[0108] 该配置服务器601包括实施例二或实施例四的同步装置,此处不再赘述。该配置服务器601分别与该关系型数据库602、以及该文件系统604通讯连接,用于对相关信息进行配
置以及生成新的配置文件,并根据应用服务器发送的访问请求,从该关系型数据库602、或
文件系统中查找请求访问的配置文件;
[0109] 该关系型数据库602,用于存储配置信息;
[0110] 该no sql数据库603,用于存储该新的配置文件的文件特征码;
[0111] 该文件系统604,用于存储该新的配置文件。
[0112] 实际应用中,no sql数据库603可以设置在配置服务器601上。
[0113] 本实施例的本实施例的后台配置文件的同步系统,将配置信息写入关系行数据库,并且在本地文件系统中生成新的配置文件,并将新的配置文件上传到文件系统,因此,
在用户通过应用服务器向配置服务器访问配置文件时,可以根据需要从本地或从文件系统
查找配置文件,或从关系型数据库查找配置信息,分散了访问压力,避免了由于数据的集中
式管理出现的服务器雪崩的现象。
[0114] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而
且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有
的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该
要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0115] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0116] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下
前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做
出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质
(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服
务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0117] 以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技
术领域,均同理包括在本发明的专利保护范围内。