本公开涉及分布式,具体的共享文件传输,更具体地涉及一种数据读写方法、装置、设备、存储介质和程序产品。
背景技术:
1、相关共享文件系统通常架构简单,仅提供基本的文件读写功能,当存在访问量突高时容易出现故障,缺乏容灾措施。
2、需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现思路
1、鉴于上述问题,本公开提供了一种数据读写方法、装置、设备、存储介质和程序产品。
2、根据本公开的第一个方面,提供了一种数据读写方法,应用于共享文件系统,所述共享文件系统包括代理节点服务器、主节点服务器和多台附属节点服务器,所述方法包括:
3、响应于客户端发起的访问请求,由所述代理节点服务器确定所述访问请求的请求类型;
4、根据所述访问请求的请求类型确定目标服务器;
5、将所述访问请求转发至目标服务器;
6、定期对共享文件系统服务器的健康状态进行监测;以及
7、若确定所述主节点服务器故障,随机选择一台附属节点服务器作为新的主节点服务器。
8、根据本公开的实施例,所述根据所述访问请求的请求类型确定目标服务器包括:
9、若确定所述访问请求的请求类型为文件读取请求,确定目标服务器为附属节点服务器;
10、若确定所述访问请求的请求类型为文件写入请求,确定目标服务器为主节点服务器。
11、根据本公开的实施例,所述代理节点服务器维护有服务器信息表,所述将所述访问请求转发至目标服务器包括:
12、根据所述服务器信息表确定目标服务器地址信息;以及
13、根据所述目标服务器地址信息对所述访问请求进行转发。
14、根据本公开的实施例,所述定期对共享文件系统服务器的健康状态进行监测包括:
15、定期调用所述主节点服务器和所述附属节点服务器提供的接口;
16、根据接口返回的参数确定所述主节点服务器和所述附属节点服务器的健康状态。
17、根据本公开的实施例,所述方法还包括:
18、若确定所述附属节点服务器故障,阻断所述附属节点服务器的流量并发送告警信息至运维人员。
19、根据本公开的实施例,在随机选择一台附属节点服务器作为新的主节点服务器之后,还包括:
20、更新附属节点服务器的同步目标;以及
21、定时从新的主节点服务器同步数据。
22、根据本公开的实施例,所述方法还包括:
23、在确定共享文件系统任一服务器故障后,更新代理节点服务器中的服务器信息表。
24、根据本公开的实施例,所述主节点服务器用于处理文件写入请求,所述附属节点服务器用于处理文件读取请求,所述附属节点服务器定时从所述主节点服务器进行数据同步。
25、本公开的第二方面提供了一种数据读写装置,所述装置包括:
26、第一确定模块,用于响应于客户端发起的访问请求,由所述代理节点服务器确定所述访问请求的请求类型;
27、第二确定模块,用于根据所述访问请求的请求类型确定目标服务器;
28、转发模块,用于将所述访问请求转发至目标服务器;
29、监测模块,用于定期对共享文件系统服务器的健康状态进行监测;以及
30、节点切换模块,用于若确定所述主节点服务器故障,随机选择一台附属节点服务器作为新的主节点服务器。
31、根据本公开的实施例,所述第二确定模块包括:第一确定子模块和第二确定子模块。
32、第一确定子模块,用于若确定所述访问请求的请求类型为文件读取请求,确定目标服务器为附属节点服务器;
33、第二确定子模块,用于若确定所述访问请求的请求类型为文件写入请求,确定目标服务器为主节点服务器。
34、根据本公开的实施例,所述转发模块包括:第三确定子模块和转发子模块。
35、第三确定子模块,用于根据所述服务器信息表确定目标服务器地址信息;以及
36、转发子模块,用于根据所述目标服务器地址信息对所述访问请求进行转发。
37、根据本公开的实施例,所述监测模块包括:接口调用子模块和第四确定子模块。
38、接口调用子模块,用于定期调用所述主节点服务器和所述附属节点服务器提供的接口;
39、第四确定子模块,用于根据接口返回的参数确定所述主节点服务器和所述附属节点服务器的健康状态。
40、根据本公开的实施例,所述装置还包括:告警模块和数据同步模块。
41、告警模块,用于若确定所述附属节点服务器故障,阻断所述附属节点服务器的流量并发送告警信息至运维人员。
42、数据同步模块,用于更新附属节点服务器的同步目标;定时从新的主节点服务器同步数据。
43、本公开的第三方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得一个或多个处理器执行上述数据读写方法。
44、本公开的第四方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述数据读写方法。
45、本公开的第五方面还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述数据读写方法。
46、通过本公开的实施例提供的一种数据读写方法,应用于共享文件系统,所述共享文件系统包括代理节点服务器、主节点服务器和多台附属节点服务器,在这些服务器中部署共享文件系统软件,对外提供共享文件存储服务,其中主节点服务器提供文件写入服务,附属节点服务器提供文件读取服务,响应于客户端发起的访问请求,由所述代理节点服务器确定所述访问请求的请求类型;根据所述访问请求的请求类型确定目标服务器;将所述访问请求转发至目标服务器;定期对共享文件系统服务器的健康状态进行监测;若确定所述主节点服务器故障,随机选择一台附属节点服务器作为新的主节点服务器,提高共享文件系统的可用性。
1.一种数据读写方法,其特征在于,应用于共享文件系统,所述共享文件系统包括代理节点服务器、主节点服务器和多台附属节点服务器,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述根据所述访问请求的请求类型确定目标服务器包括:
3.根据权利要求2所述的方法,其特征在于,所述代理节点服务器维护有服务器信息表,所述将所述访问请求转发至目标服务器包括:
4.根据权利要求1所述的方法,其特征在于,所述定期对共享文件系统服务器的健康状态进行监测包括:
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
6.根据权利要求5所述的方法,其特征在于,在随机选择一台附属节点服务器作为新的主节点服务器之后,还包括:
7.根据权利要求4至6中任一项所述的方法,其特征在于,所述方法还包括:
8.根据权利要求7所述的方法,其特征在于,所述主节点服务器用于处理文件写入请求,所述附属节点服务器用于处理文件读取请求,所述附属节点服务器定时从所述主节点服务器进行数据同步。
9.一种数据读写装置,其特征在于,应用于共享文件系统,所述共享文件系统包括代理节点服务器、主节点服务器和多台附属节点服务器,所述装置包括:
10.一种电子设备,包括:
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现根据权利要求1~8中任一项所述方法的步骤。
12.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现根据权利要求1~8中任一项所述方法的步骤。
