本发明涉及组播,尤其涉及一种管理组播拓扑数据的方法和装置。
背景技术:
1、目前,各家云厂商均基于不同技术实现云上组播,而对于组播成员管理各厂商也有不同,但大体上分为两种,第一种为静态配置,第二种为使用igmp协议进行组播成员管理。
2、基于现有的产品技术,各厂商产品均需要用户自行确认某个节点是否成功加入组播组,判断方法为是否可以收到对应组播地址的组播数据。在此种背景下,如果组播成员加入组播组失败,无法接收组播数据,但用户却无感知。
技术实现思路
1、有鉴于此,本发明实施例提供一种管理组播拓扑数据的方法和装置,以解决如果组播成员加入组播组失败但是用户却无感知的技术问题。
2、为实现上述目的,根据本发明实施例的一个方面,提供了一种管理组播拓扑数据的方法,应用于组播网关,包括:
3、接收前端发送的组播组加入请求,所述组播组加入请求携带目标云主机标识和目标组播组标识;
4、将所述目标云主机加入所述目标组播组,使所述目标云主机成为所述目标组播组的组播成员;
5、将所述目标组播组的加入成员信息更新至数据库中的组播拓扑数据,并向所述前端发送数据更新消息,以使所述前端从所述数据库中获取所述组播拓扑数据后在所述前端展示所述组播拓扑数据;其中,所述数据更新消息携带所述组播拓扑数据在所述数据库中的数据标识。
6、可选地,所述方法还包括:
7、接收所述前端发送的组播组离开请求,所述组播组离开请求携带所述目标云主机标识和所述目标组播组标识;
8、将所述目标云主机从所述目标组播组中删除;
9、将所述目标组播组的离开成员信息更新至所述数据库中的组播拓扑数据,并向所述前端发送数据更新消息。
10、可选地,将所述目标组播组的加入成员信息更新至数据库中的组播拓扑数据,包括:
11、将所述目标组播组的加入成员信息更新至redis集群中任一节点中的组播拓扑数据,以使所述节点将更新后的组播拓扑数据同步至所述redis集群中的其他节点;
12、其中,key为所述组播拓扑数据在所述redis集群中的数据标识,value为所述组播拓扑数据。
13、可选地,所述组播拓扑数据包括每个组播组的详细信息,所述详细信息包括组播地址、已加入的组播成员的数量、各个组播成员对应的云主机标识、最大可加入的组播成员的数量和剩余可加入的组播成员的数量。
14、另外,根据本发明实施例的另一个方面,提供了一种管理组播拓扑数据的方法,应用于前端,包括:
15、向组播网关发送组播组加入请求,所述组播组加入请求携带目标云主机标识和目标组播组标识;
16、接收所述组播网关发送的数据更新消息,所述数据更新消息携带组播拓扑数据在数据库中的数据标识;
17、向所述数据库发送拓扑数据获取请求,所述拓扑数据获取请求携带所述数据标识;
18、接收所述数据库返回的所述数据标识对应的组播拓扑数据,在所述前端展示所述组播拓扑数据。
19、可选地,接收所述数据库返回的所述数据标识对应的组播拓扑数据,在所述前端展示所述组播拓扑数据,包括:
20、接收所述数据库返回的所述数据标识对应的组播拓扑数据;
21、判断本地存储的组播拓扑数据和所述数据库返回的组播拓扑数据是否一致;
22、若是,则在所述前端展示所述本地存储的组播拓扑数据,产生告警日志,所述告警日志的内容为组播拓扑数据无更新;
23、若否,则在所述前端展示所述数据库返回的组播拓扑数据,并将所述数据库返回的组播拓扑数据更新至所述本地。
24、另外,根据本发明实施例的另一个方面,提供了一种管理组播拓扑数据的装置,设置于组播网关,包括:
25、第一接收模块,用于接收前端发送的组播组加入请求,所述组播组加入请求携带目标云主机标识和目标组播组标识;
26、处理模块,用于将所述目标云主机加入所述目标组播组,使所述目标云主机成为所述目标组播组的组播成员;
27、更新模块,用于将所述目标组播组的加入成员信息更新至数据库中的组播拓扑数据,并向所述前端发送数据更新消息,以使所述前端从所述数据库中获取所述组播拓扑数据后在所述前端展示所述组播拓扑数据;其中,所述数据更新消息携带所述组播拓扑数据在所述数据库中的数据标识。
28、可选地,所述第一接收模块还用于接收所述前端发送的组播组离开请求,所述组播组离开请求携带所述目标云主机标识和所述目标组播组标识;
29、所述处理模块还用于将所述目标云主机从所述目标组播组中删除;
30、所述更新模块还用于将所述目标组播组的离开成员信息更新至所述数据库中的组播拓扑数据,并向所述前端发送数据更新消息。
31、可选地,所述更新模块还用于:
32、将所述目标组播组的加入成员信息更新至redis集群中任一节点中的组播拓扑数据,以使所述节点将更新后的组播拓扑数据同步至所述redis集群中的其他节点;
33、其中,key为所述组播拓扑数据在所述redis集群中的数据标识,value为所述组播拓扑数据。
34、可选地,所述组播拓扑数据包括每个组播组的详细信息,所述详细信息包括组播地址、已加入的组播成员的数量、各个组播成员对应的云主机标识、最大可加入的组播成员的数量和剩余可加入的组播成员的数量。
35、另外,根据本发明实施例的另一个方面,提供了一种管理组播拓扑数据的装置,设置于前端,包括:
36、请求模块,用于向组播网关发送组播组加入请求,所述组播组加入请求携带目标云主机标识和目标组播组标识;
37、消息模块,用于接收所述组播网关发送的数据更新消息,所述数据更新消息携带组播拓扑数据在数据库中的数据标识;
38、获取模块,用于向所述数据库发送拓扑数据获取请求,所述拓扑数据获取请求携带所述数据标识;
39、第二接收模块,用于接收所述数据库返回的所述数据标识对应的组播拓扑数据,在所述前端展示所述组播拓扑数据。
40、可选地,所述第二接收模块还用于:
41、接收所述数据库返回的所述数据标识对应的组播拓扑数据;
42、判断本地存储的组播拓扑数据和所述数据库返回的组播拓扑数据是否一致;
43、若是,则在所述前端展示所述本地存储的组播拓扑数据,产生告警日志,所述告警日志的内容为组播拓扑数据无更新;
44、若否,则在所述前端展示所述数据库返回的组播拓扑数据,并将所述数据库返回的组播拓扑数据更新至所述本地。
45、根据本发明实施例的另一个方面,还提供了一种电子设备,包括:
46、一个或多个处理器;
47、存储装置,用于存储一个或多个程序,
48、当所述一个或多个程序被所述一个或多个处理器执行时,所述一个或多个处理器实现上述任一实施例所述的方法。
49、根据本发明实施例的另一个方面,还提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任一实施例所述的方法。
50、根据本发明实施例的另一个方面,还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述任一实施例所述的方法。
51、上述发明中的一个实施例具有如下优点或有益效果:因为采用将目标组播组的加入成员信息更新至数据库中的组播拓扑数据,并向前端发送数据更新消息,使得前端从数据库中获取并展示组播拓扑数据的技术手段,所以克服了现有技术中如果组播成员加入组播组失败但是用户却无感知的技术问题。本发明实施例通过前端页面直接进行组播成员管理,包括查看组播成员是否成功加入组播组,是否加入正确的组播组,以及各个组播组的组播成员展示等,使得用户有感知。
52、上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。