云接入控制器分布式处理终端设备信息的方法和系统与流程

文档序号:11138853阅读:700来源:国知局
云接入控制器分布式处理终端设备信息的方法和系统与制造工艺

本发明实施方式涉及通讯技术领域,尤其涉及一种云接入控制器分布式处理终端设备信息的方法和系统。



背景技术:

云接入控制器(Access Controller,AC)系统往往通过超文本标记语言(HyperText Markup Language,HTML)呈现系统的功能接口,用户可以通过浏览器连接云接入控制器系统,进行各种操作。

当用户终端设备连接接入点(Access Point,AP)时,接入点需要把用户的终端设备与接入点的交互命令发送到云接入控制器,由云接入控制器对命令进行处理。在接入点发送终端设备的信息时,这些信息相当于一个实时指令流,云接入控制器需要按照这些指令发送的先后顺序进行执行,比如连接到AP-1的终端设备切换到另一个AP-2时,AP-1和AP-2都会发送相关信息到云接入控制器,云接入控制器需要根据指令发送的先后顺序进行处理。

在实施本发明的过程中,发明人发现现有技术至少存在如下问题:

现有技术中云接入控制器处理终端设备信息时,由单台云接入控制器服务器进行处理。在大量终端设备接入云接入控制器时,云接入控制器无法满足对这些信息处理的性能要求,造成信息处理的积压,最终导致系统响应变慢。

应该注意,上面对技术背景的介绍只是为了方便对本发明的技术方案进行清楚、完整的说明,并方便本领域技术人员的理解而阐述的。不能仅仅因为这些方案在本发明的背景技术部分进行了阐述而认为上述技术方案为本领域技术人员所公知。



技术实现要素:

针对上述问题,本发明实施方式的目的在于提供一种云接入控制器分布式处理终端设备信息的方法和系统,能够通过使用分布式计算,提高云接入控制器处理终端信息的吞吐能力。

为实现上述目的,本发明实施方式提供一种云接入控制器分布式处理终端设备信息的方法,包括:终端设备通过接入点把终端设备信息发送到消息队列,所述终端设备信息包括终端设备唯一标识符;分布式云接入控制器分别从所述消息队列中获取需要处理的终端设备信息,生成对应的处理线程,并根据终端设备信息中的终端设备唯一标识符,将需要处理的终端设备信息加入到分布式处理框架中;根据预设规则,所述分布式处理框架为处理线程分配分布式锁,拥有所述分布锁的处理线程执行处理终端设备信息。

进一步地,所述云接入控制器从所述消息队列中获取需要处理的终端设备信息,生成对应的处理线程,并根据终端设备信息中的终端设备唯一标识符,将需要处理的终端设备信息加入到分布式处理框架中,包括:分布式云接入控制器从所述消息队列中分别获取需要处理的终端设备信息,其中,一个终端设备信息由一台云接入控制器进行处理;云接入控制器根据获取的终端设备信息生成对应的处理线程,并通过终端设备信息中的终端设备唯一标识符在分布式处理框架中生成根结点,并在所述根结点中创建孩子结点;其中所述孩子结点为非持久化结点,且所述根结点中孩子结点的ID值为前一个孩子结点的ID值加1,所述根结点中孩子结点在前一个孩子结点中设置结点事件监听。

进一步地,所述根据预设规则,所述分布式处理框架为处理线程分配分布式锁,包括:根据所述根结点中孩子结点的ID值的比较和所述结点事件监听,分布式处理框架为处理线程分配分布式锁。

进一步地,所述根结点中孩子结点的ID值的比较,包括:获取根结点下的所有孩子结点的ID值,判断当前孩子结点的ID值在所有的孩子结点中是否是最小的;如果不是,把当前孩子结点的ID值减1以查询前一个孩子结点;如果前一个孩子结点不存在,返回获取根结点下的所有孩子结点的ID值;如果前一个孩子结点存在,判断该前一个孩子结点的ID值在所有孩子结点的ID值中是否是最小的;直到在根结点下确定出ID值最小的孩子结点。

进一步地,所述方法还包括:拥有所述分布锁的处理线程对终端设备信息执行处理完成后,删除所述处理线程对应的当前孩子结点;或者,预先设置执行处理的等候时间,如果拥有分布锁的处理线程对终端设备信息执行处理的时间超过等候时间,则对终端设备信息执行处理失败,删除所述处理线程对应的当前孩子结点。

进一步地,删除所述处理线程对应的当前孩子结点之后,还包括:根据所述根结点中孩子结点在前一个孩子结点中设置结点事件监听,当分布式处理框架监听到所述处理线程对应的当前孩子结点的删除时,发送结点删除事件到所述当前孩子结点的下一个孩子结点,所述当前孩子结点的下一个孩子结点获取分布锁,执行所述处理线程。

为实现上述目的,本发明实施方式还提供一种云接入控制器分布式处理终端设备信息的系统,包括:终端设备,用于通过接入点把终端设备信息发送到消息队列,所述终端设备信息包括终端设备唯一标识符;分布式云接入控制器,用于分别从所述消息队列中获取需要处理的终端设备信息,生成对应的处理线程,并根据终端设备信息中的终端设备唯一标识符,将需要处理的终端设备信息加入到分布式处理框架中;分布式处理框架,用于根据预设规则,为处理线程分配分布式锁,拥有所述分布锁的处理线程执行处理终端设备信息。

由上可见,本发明实施方式提供的一种云接入控制器分布式处理终端设备信息的方法和系统,使用分布式云接入控制器服务器集群,通过把终端设备信息的处理发送到多台云接入控制器服务器上,实现大量终端设备信息分布式的并发处理,提高系统处理能力;还通过使用分布式锁,保证分布式环境下终端设备信息处理按照指定顺序正确执行;此外,通过使用非持久化的临时结点并设置设置结点事件监听,监测处理线程的执行状态,发生异常自动转到下一个结点,避免死锁产生,最终提高终端设备信息处理速度和稳定性。

附图说明

为了更清楚地说明本发明实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图逐一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施方式提供的云接入控制器分布式处理终端设备信息的方法的流程示意图;

图2为本发明实施方式提供的孩子结点的ID值的比较的流程示意图;

图3为本发明实施方式提供的云接入控制器分布式处理终端设备信息的系统的示意图。

具体实施方式

为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。

为了克服现有技术中大量终端设备连接云接入控制器时,单台云接入控制器服务器不能满足指令处理的性能要求的缺点,在本发明实施例中通过分布式计算的方式在多台云接入控制器服务器上同时进行指令的处理,在分布式处理指令时,还要考虑到单台终端设备指令的执行顺序。此外,在分布式环境下,同一终端设备的一系列指令可能由多个云接入控制器服务器执行,这个终端设备对于这些云接入控制器服务器相当于一个共享资源,为了正确执行指令,需要通过分布式锁保证同一时刻没有两台云接入控制器服务器在处理同一个终端设备的指令。

本发明实施方式提供一种云接入控制器分布式处理终端设备信息的方法。请参阅图1,包括以下步骤:

步骤S1:终端设备通过接入点把终端设备信息发送到消息队列,所述终端设备信息包括终端设备唯一标识符。

在本发明实施例中,终端设备唯一标识符可以是MAC(Media Access Control,媒体访问控制)地址。

步骤S2:云接入控制器从所述消息队列中获取需要处理的终端设备信息,生成对应的处理线程,并根据终端设备信息中的终端设备唯一标识符,将需要处理的终端设备信息加入到分布式处理框架中。

在本实施方式中,分布式处理框架基于ZooKeeper,该ZooKeeper是一个开放源码的分布式应用程序协调服务,能够为分布式应用提供一致性服务,主要用来解决分布式应用中数据管理的问题,例如提供的功能包括:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。此外,ZooKeeper还能够提供基于类似于文件系统的目录结点树方式的数据存储,主要用来维护和监控存储的数据的状态变化。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理。

一个终端设备信息由分布式云接入控制器中的一台进行处理。分布式云接入控制器从所述消息队列中分别获取需要处理的终端设备信息,通过终端设备信息中的终端设备唯一标识符在ZooKeeper中生成根结点。

优选地,在云接入控制器获取到需要处理的终端设备信息后,生成处理线程。此外,还在根结点中创建孩子结点,该孩子结点为非持久化结点,用于终端设备信息处理。

步骤S3:根据预设规则,所述分布式处理框架为处理线程分配分布式锁,拥有所述分布锁的处理线程执行处理终端设备信息。

在本发明实施方式中,孩子结点具有ID值,且孩子结点的ID值由Zookeeper执行以实现自增ID值,例如根结点中当前孩子结点的ID值为前一个孩子结点的ID值加1。此外,根结点中的孩子结点在其前一个孩子结点中设置结点事件监听,用于监听前一个孩子结点的变化事件。根据孩子结点的ID值的比较和结点事件监听,ZooKeeper为处理线程分配分布式锁,从而进行终端设备信息处理。

具体地,如图2所示,获取根结点下的所有孩子结点的ID值,判断当前孩子结点的ID值在所有的孩子结点中是否是最小的;如果不是,把当前孩子结点的ID值减1以查询前一个孩子结点;如果前一个孩子结点不存在,返回再获取根结点下的所有孩子结点的ID值,如果前一个孩子结点存在,判断该前一个孩子结点的ID值在所有的孩子结点中是否是最小的,直到在根结点下确定出ID值最小的孩子结点;为该ID值最小的孩子结点对应的处理线程分配分布式锁,拥有分布锁的处理线程就可以执行处理终端设备信息了。

步骤S4:拥有所述分布锁的处理线程对终端设备信息执行处理完成后,删除所述处理线程对应的孩子结点。

在本实施方式中,如果拥有分布锁的处理线程对终端设备信息执行处下一个结点理完成后,删除所述处理线程对应的孩子结点。由于孩子结点在其前一个孩子结点中设置结点事件监听,用于监听前一个孩子结点的变化事件,则Zookeeper自动发送结点删除事件到该删除孩子结点的下一个孩子结点,该删除孩子结点的下一个孩子结点获取消息后从而获取分布锁,执行处理线程。

此外,还可以预先设置执行处理的等候时间,如果拥有分布锁的处理线程对终端设备信息执行处理的时间超过等候时间,则认为对终端设备信息执行处理失败,删除所述处理线程对应的孩子结点。例如,拥有分布锁的非持久化执行结点发生故障,处理线程死掉,那么处理线程与Zookeeper的连接中断,当超过一定时间Zookeeper没有收到执行线程的心跳信息,该非持久化执行结点被自动删除,下一个结点自动获取分布锁,从而避免可能的死锁问题。

请参阅图3。本发明实施方式提供一种云接入控制器分布式处理终端设备信息的系统,包括:

终端设备,用于通过接入点把终端设备信息发送到消息队列,所述终端设备信息包括终端设备唯一标识符;

分布式云接入控制器,用于分别从所述消息队列中获取需要处理的终端设备信息,生成对应的处理线程,并根据终端设备信息中的终端设备唯一标识符,将需要处理的终端设备信息加入到分布式处理框架中;

分布式处理框架,用于根据预设规则,为处理线程分配分布式锁,拥有所述分布锁的处理线程执行处理终端设备信息。

其中,

所述分布式云接入控制器,具体用于:

从所述消息队列中分别获取需要处理的终端设备信息,其中,一个终端设备信息由一台云接入控制器进行处理;根据获取的终端设备信息生成对应的处理线程,并通过终端设备信息中的终端设备唯一标识符在分布式处理框架中生成根结点,并在所述根结点中创建孩子结点;其中,所述孩子结点为非持久化结点,且所述根结点中孩子结点的ID值为前一个孩子结点的ID值加1,所述根结点中孩子结点在前一个孩子结点中设置结点事件监听。

所述分布式处理框架,具体用于:

根据所述根结点中孩子结点的ID值的比较和所述结点事件监听,分布式处理框架为处理线程分配分布式锁;其中,所述根结点中孩子结点的ID值的比较,包括:获取根结点下的所有孩子结点的ID值,判断当前孩子结点的ID值在所有的孩子结点中是否是最小的;如果不是,把当前孩子结点的ID值减1以查询前一个孩子结点;如果前一个孩子结点不存在,返回获取根结点下的所有孩子结点的ID值;如果前一个孩子结点存在,判断该前一个孩子结点的ID值在所有孩子结点的ID值中是否是最小的;直到在根结点下确定出ID值最小的孩子结点。

所述分布式处理框架,还用于:

拥有所述分布锁的处理线程对终端设备信息执行处理完成后,删除所述处理线程对应的当前孩子结点;或者,预先设置执行处理的等候时间,如果拥有分布锁的处理线程对终端设备信息执行处理的时间超过等候时间,则对终端设备信息执行处理失败,删除所述处理线程对应的当前孩子结点;根据所述根结点中孩子结点在前一个孩子结点中设置结点事件监听,当监听到所述处理线程对应的当前孩子结点的删除时,发送结点删除事件到所述当前孩子结点的下一个孩子结点,所述当前孩子结点的下一个孩子结点获取分布锁,执行所述处理线程。

上述的涉及到的云接入控制器分布式处理终端设备信息的系统的具体技术细节和云接入控制器分布式处理终端设备信息的方法中的类似,故不再具体赘述。

由上可见,本发明实施方式提供的一种云接入控制器分布式处理终端设备信息的方法和系统,使用分布式云接入控制器服务器集群,通过把终端设备信息的处理发送到多台云接入控制器服务器上,实现大量终端设备信息分布式的并发处理,提高系统处理能力;还通过使用分布式锁,保证分布式环境下终端设备信息处理按照指定顺序正确执行;此外,通过使用非持久化的临时结点并设置设置结点事件监听,监测处理线程的执行状态,发生异常自动转到下一个结点,避免死锁产生,最终提高终端设备信息处理速度和稳定性。

本说明书中的各个实施方式均采用递进的方式描述,各个实施方式之间相同相似的部分互相参见即可,每个实施方式重点说明的都是与其他实施方式的不同之处。

最后应说明的是:上面对本发明的各种实施方式的描述以描述的目的提供给本领域技术人员。其不旨在是穷举的、或者不旨在将本发明限制于单个公开的实施方式。如上所述,本发明的各种替代和变化对于上述技术所属领域技术人员而言将是显而易见的。因此,虽然已经具体讨论了一些另选的实施方式,但是其它实施方式将是显而易见的,或者本领域技术人员相对容易得出。本发明旨在包括在此已经讨论过的本发明的所有替代、修改、和变化,以及落在上述申请的精神和范围内的其它实施方式。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1