【技术实现步骤摘要】
基于CORBA中间件的轻量级事件服务方法及系统
[0001]本专利技术涉及高端电子装备
,具体地,涉及一种基于CORBA中间件的轻量级事件服务方法及系统,同时提供了一种相应的终端及计算机可读存储介质。
技术介绍
[0002]CORBA中间件是分布式系统中一种常用的通信中间件,实现异构资源之间跨进程通信。CORBA中间件采用客户端/服务端结构,通过对象请求调用的方式实现客户端与服务端之间的通信。事件服务是系统中必不可少而且非常重要的软件服务,主要解决各个独立软件组件之间事件异步传输问题。并且事件服务必须高实时、高可靠、轻量化的特点,能通过CORBA中间件实现分布式系统中共用的事件实时分发服务。
[0003]当前的分布式系统中的事件服务无法同时满足高实时、高可靠、轻量化的要求,尤其在资源受限的处理器中表现的尤为明显。因此,如何实现一种能够同时满足高实时、高可靠、轻量化要求的事件服务,成为本领域亟待解决的问题。目前没有发现同本专利技术类似技术的说明或报道,也尚未收集到国内外类似的资料。
技术实现思路
[0004]本专利技术针对现有技术中存在的上述不足,提供了一种基于CORBA中间件的轻量级事件服务方法及系统,同时提供了一种相应的终端及计算机可读存储介质。
[0005]根据本专利技术的一个方面,提供了一种基于CORBA中间件的轻量级事件服务方法,包括:
[0006]建立事件服务模型,所述事件服务模型,包括:
[0007]提供者管理对象,用于实现事件提供者与事件通道第一步的 ...
【技术保护点】
【技术特征摘要】
1.一种基于CORBA中间件的轻量级事件服务方法,其特征在于,包括:建立事件服务模型,所述事件服务模型,包括:提供者管理对象,用于实现事件提供者与事件通道第一步的连接,为客户端提供获取事件消费者代理的接口;事件消费者代理,用于实现事件提供者与事件通道第二步的连接,继承PushConsumer接口;事件通道,用于实现事件提供者与事件消费者之间异步传输事件的连接通道;事件消费者管理对象,用于实现事件消费者与事件通道的第一步连接,为客户端提供获取事件提供者代理的接口;事件提供者代理,用于实现事件提供者与事件通道第二步连接,继承PushSupplier接口;其中:所述提供者管理对象管理所有的所述事件消费者代理;一个所述事件消费者代理对应一个事件提供者;所述事件消费者管理对象管理所有的所述事件提供者代理;一个所述事件提供者代理对应一个事件消费者;基于CORBA对所述事件服务模型进行初始化,建立所述事件提供者和所述事件消费者之间的透明连接;所述事件提供者将事件发送至所述事件服务模型,所述事件服务模型采用推模式异步发送事件的方式,将事件依次发送给与所述事件提供者对应绑定的一个或多个所述事件消费者,实现事件的分发;通过以上步骤,完成轻量级事件服务。2.根据权利要求1所述的基于CORBA中间件的轻量级事件服务方法,其特征在于,所述基于CORBA对所述事件服务模型进行初始化,包括:通过CORBA的ORB对象,获取RootPOA对象引用;基于所述RootPOA对象引用,进行如下操作:创建所述事件通道的伺服对象,并配置所述事件通道的伺服对象初始化参数;创建所述事件消费者管理对象的伺服对象,并配置所述事件消费者管理对象的伺服对象初始化参数;创建所述提供者管理对象的伺服对象,并配置所述提供者管理对象的伺服对象初始化参数;激活所述事件通道、所述事件消费者管理对象和所述提供者管理对象的伺服对象,开始进入工作状态;创建所述事件通道的对象引用,将所述事件通道的对象引用返回给作为调用者的所述事件消费者代理和/或所述事件提供者代理;通过上述步骤,完成对所述事件服务模型的初始化。3.根据权利要求2所述的基于CORBA中间件的轻量级事件服务方法,其特征在于,所述创建所述事件通道的伺服对象,包括:构建事件缓冲器,用于暂存正在分发的事件和控制所述事件的收发同步;
创建事件分发线程,启动事件处理状态机,所述事件处理状态机用于对事件缓冲器进行不同的状态处理。4.根据权利要求3所述的基于CORBA中间件的轻量级事件服务方法,其特征在于,所述构建事件缓冲器,包括:为所述事件的输入输出结构体分配内存空间;其中,所述输入输出结构体包括:事件最大容量、缓存指针、事件数量、事件锁和条件的变量;对所述输入输出结构体的变量赋初值;申请缓存空间,所述缓存空间的大小根据所述事件最大容量进行设置,并将所述缓存空间的地址赋给所述缓存指针,用于暂存正在分发的事件;初始化所述事件锁和条件,用于控制所述事件的收发同步。5.根据权利要求3所述的基于CORBA中间件的轻量级事件服务方法,其特征在于,所述事件处理状态机的状态,包括:空闲中、停止中、运行中、合并中及已停止;根据所述事件处理状态机的状态的变换,对事件缓冲器进行如下对应的状态处理:
‑
所述事件处理状态机处于空闲中状态,如果有新的事件到来,所述事件缓冲器状态从空闲中状态转移到运行中状态,开始执行事件分发操作;
‑
所述事件处理状态机处于运行中状态,当存在分离的事件消费者和已连接的事件消费者时,所述事件缓冲器状态从运行中状态转移到合并中状态;此时将分离的事件消费者和已连接的事件消费者进行合并处理,完成之后所述事件缓冲器状态再...
【专利技术属性】
技术研发人员:常坤,吴二龙,姜华夏,
申请(专利权)人:上海介方信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。