一种应用模块间的通信方法及系统的利记博彩app

文档序号:10593940阅读:410来源:国知局
一种应用模块间的通信方法及系统的利记博彩app
【专利摘要】本发明公开了一种应用模块间的通信方法及系统,用以为动态初始化的应用模块之间的通信提供方法。应用模块间的通信方法,包括:第一应用模块向目标板卡的应用模块管理系统发送查询请求消息,请求目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,查询请求消息中包括:第二应用模块的标识以及第二应用模块所在板卡的标识;第一应用模块接收目标板卡的应用模块管理系统基于查询请求消息返回的查询请求响应消息,从查询请求响应消息中获取第二应用模块的通信方法,并根据获取到的第二应用模块的通信方法与第二应用模块进行通信。
【专利说明】
一种应用模块间的通信方法及系统
技术领域
[0001]本发明涉及通信技术领域,尤其涉及一种应用模块间的通信方法及系统。
【背景技术】
[0002]目前,多任务操作系统都提供了一些进程(任务)之间通信的方法,例如:消息队列、共享内存和管道等,还有一些进程(任务)之间的同步方法,例如:信号量、锁、事件,也可应用于进程(任务)之间的通信。这些方法能够帮助嵌入式多任务系统开发人员编码实现处理并发任务,但是在一些特殊的场景下,这些通信方法也有一些局限性,具体来说:
[0003]这些通信方法主要应用于有特殊关系的父子、或兄弟进程之间,或者事先有固定绑定关系的进程之间,为简单起见,这些通信方法通常要求系统进程(任务)或应用模块在系统启动后初始化时,按照一定的顺序进行初始化,所以不适合动态加载、卸载和动态初始化的应用模块,因为这些应用模块的进程(任务)标识、通信方法实例标识在操作系统内核和内存中的位置是动态分配的,加载的时机不同,标识也可能不同,应用模块在线升级、更新后通信方法实例标识也可能发生改变,如果每次都重新启动整个系统,代价太大,另外,这些通信方法也不能方便应用于分布于多板卡上的应用模块组成的机框系统。
[0004]综上所述,现有进程之间的通信方法有一定的局限性,不适合动态初始化的应用模块之间的通信。

【发明内容】

[0005]本发明实施例提供了一种应用模块间的通信方法及系统,用以为动态初始化的应用模块之间的通信提供方法。
[0006]本发明实施例提供的一种应用模块间的通信方法,该方法包括:第一应用模块向目标板卡的应用模块管理系统发送查询请求消息,请求所述目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,所述查询请求消息中包括:所述第二应用模块的标识以及所述第二应用模块所在板卡的标识;所述第一应用模块接收所述目标板卡的应用模块管理系统基于所述查询请求消息返回的查询请求响应消息,从所述查询请求响应消息中获取所述第二应用模块的通信方法,并根据获取到的所述第二应用模块的通信方法与所述第二应用模块进行通信。
[0007]本发明实施例提供的一种应用模块间的通信方法,该方法包括:目标板卡的应用模块管理系统接收第一应用模块发送的用于查询第二应用模块通信方法的查询请求消息,所述查询请求消息中包括:所述第二应用模块的标识以及所述第二应用模块所在板卡的标识;所述目标板卡的应用模块管理系统基于所述查询请求消息从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,根据查询结果生成查询请求响应消息,并将生成的查询请求响应消息发送至所述第一应用模块。
[0008]本发明实施例提供的一种应用模块间的通信方法,该方法包括:主控制板卡的应用模块管理系统接收第一应用模块所在业务板卡的应用模块管理系统发送的用于查询第二应用模块通信方法的查询请求消息,所述查询请求消息中包括:所述第二应用模块的标识以及所述第二应用模块所在板卡的标识;所述主控制板卡的应用模块管理系统根据所述第二应用模块的标识以及所述第二应用模块所在板卡的标识,在自身中查询所述第二应用模块的通信方法,并根据查询结果生成查询请求响应消息,将所述查询请求响应消息发送至所述第一应用模块所在业务板卡的应用模块管理系统;其中,所述主控制板卡的应用模块管理系统在任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。
[0009]本发明实施例提供的一种应用模块间的通信系统,该系统包括:主控制板卡和至少一个业务板卡;其中,所述主控制板卡和/或所述业务板卡上设置有多个应用模块;所述多个应用模块中的第一应用模块向目标板卡的应用模块管理系统发送用于查询第二应用模块通信方法的查询请求消息,所述查询请求消息中包括:所述第二应用模块的标识以及所述第二应用模块所在板卡的标识;所述目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,根据查询结果生成查询请求响应消息,并将生成的查询请求响应消息发送至所述第一应用模块;所述第一应用模块从接收到的查询请求响应消息中获取所述第二应用模块的通信方法,并根据获取到的所述第二应用模块的通信方法与所述第二应用模块进行通信;其中,所述目标板卡为所述第一应用模块所在业务板卡,或者所述第一应用模块所在主控制板卡。
[0010]本发明实施例提供的应用模块间的通信方法及系统中,预先存储有应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系;在通信系统中的第一应用模块想要与第二应用模块通信时,可以由目标板卡上的应用模块管理系统直接或间接地根据所述对应关系查询得到第二应用模块的通信方法;进而,可以使得第一应用模块根据查询到的第二应用模块的通信方法与第二应用模块进行通信。由于目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,因此,只要第二应用模块已经初始化,不管第二应用模块是随系统启动初始化,还是动态初始化,目标板卡的应用模块管理系统都能够从应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询得到第二应用模块的通信方法,并将第二应用模块的通信方法发送至第一应用模块,以使第一应用模块与第二应用模块进行通信,与现有进程之间的通信方法有一定的局限性,不适合动态初始化的应用模块之间的通信相比,本发明实施例实现了动态初始化的应用模块间的通信,也即为动态初始化的应用模块间的通信提供了方法。
【附图说明】
[0011]图1为本发明实施例提供的应用模块侧的一种应用模块间的通信方法的示意流程图;
[0012]图2为本发明实施例提供的应用模块向业务板卡的应用模块管理系统注册的原理示意图;
[0013]图3为本发明实施例提供的应用模块向主控制板卡的应用模块管理系统注册的原理示意图;
[0014]图4为本发明实施例提供的第一应用模块查询获得第二应用模块通信方法的原理示意图;
[0015]图5为本发明实施例提供的第一应用模块查询未获得第二应用模块通信方法的原理示意图;
[0016]图6为本发明实施例提供的同一业务板卡上应用模块间通信的原理示意图;
[0017]图7为本发明实施例提供的不同业务板卡上应用模块间通信的原理示意图;
[0018]图8为本发明实施例提供的应用模块被卸载时取消注册的原理示意图;
[0019]图9为本发明实施例提供的目标板卡侧的一种应用模块间的通信方法的示意流程图;
[0020]图10为本发明实施例提供的主控制板卡侧的一种应用模块间的通信方法的示意流程图;
[0021]图11为本发明实施例提供的业务板卡故障时取消注册的原理示意图;
[0022]图12为本发明实施例提供的一种应用模块间的通信系统的结构示意图。
【具体实施方式】
[0023]下面结合附图,对本发明实施例提供的一种应用模块间的通信方法及系统的【具体实施方式】进行详细地说明。
[0024]需要说明的是,本发明实施例中提供的应用模块的标识用于在应用模块所在的板卡上唯一静态标识该应用模块,在应用模块设计、编码时被赋值,例如:应用模块的标识可以是应用模块的名称;应用模块的通信方法是指应用模块提供给其它应用模块的通信方法,使其它应用模块得以向自己发送消息的通信方法,在多板卡机框通信设备操作系统启动之后,应用模块加载和初始化时被动态赋值,例如:应用模块的通信方法可以是函数形式、消息形式;业务板卡的标识用于在多板卡机框通信设备系统中唯一标识一块运行状态的业务板卡,例如:业务板卡的标识可以是板卡号,业务板卡被插入机框时在机框中的插槽号确定了该业务板卡的板卡号,同一块业务板卡可以被插在几个同种类型板卡插槽的不同位置,但每次分配的板卡号不同;应用模块管理系统是指运行在多板卡机框通信设备系统中,用于接收应用模块的注册请求消息,并响应应用模块的查询请求消息的子系统。其中,多板卡机框通信设备系统由一块或两块控制板卡(主控制板卡和备用控制板卡)和多块各种类型的业务板卡组成。
[0025]在应用模块侧,本发明实施例提供的一种应用模块间的通信方法,如图1所示,该方法包括:
[0026]步骤102,第一应用模块向目标板卡的应用模块管理系统发送查询请求消息,请求目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,查询请求消息中包括:第二应用模块的标识以及第二应用模块所在板卡的标识;
[0027]步骤104,第一应用模块接收目标板卡的应用模块管理系统基于查询请求消息返回的查询请求响应消息,从查询请求响应消息中获取第二应用模块的通信方法,并根据获取到的第二应用模块的通信方法与第二应用模块进行通信。
[0028]本发明实施例提供的方法中,由于是从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,因此,只要第二应用模块已经初始化,不管第二应用模块是随系统启动初始化,还是动态初始化,目标板卡的应用模块管理系统都能够从应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询得到第二应用模块的通信方法,并将第二应用模块的通信方法发送至第一应用模块,以使第一应用模块与第二应用模块进行通信,与现有进程之间的通信方法有一定的局限性,不适合动态初始化的应用模块之间的通信相比,本实施例实现了动态初始化的应用模块间的通信,也即为动态初始化的应用模块间的通信提供了方法。
[0029]具体实施时,第一应用模块向目标板卡的应用模块管理系统发送用于查询第二应用模块通信方法的查询请求消息,当第一应用模块为业务板卡上的应用模块时,目标板卡可以是预先指定的业务板卡,例如:有两块业务板卡:业务板卡I和业务板卡2,指定两块业务板卡上的应用模块在查询其它应用模块的通信方法时,均向业务板卡2的应用模块管理系统发送查询请求消息,则业务板卡2为目标板卡,当然,较为优选地,该目标板卡为第一应用模块所在业务板卡,每个业务板卡的应用模块管理系统在本板卡上的应用模块初始化时,存储应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系,并接收该业务板卡上应用模块查询其它应用模块的通信方法的查询请求消息;当应用模块为主控制板卡上的应用模块时,目标板卡为应用模块所在主控制板卡,当然,主控制板卡的应用模块管理系统在本板卡上的应用模块初始化时,同样需要存储应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系,而且主控制板卡的应用模块管理系统在其他业务板卡上的任一应用模块初始化时,还需要存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系,也即主控制板卡的应用模块管理系统中在任一应用模块初始化时,不管该应用模块是业务板卡上的应用模块,还是主控制板卡上的应用模块,主控制板卡的应用模块管理系统均需要存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。其中,本发明实施例中所提到的任一应用模块为业务板卡上的应用模块或者主控制板卡上的应用模块。
[0030]具体实施时,业务板卡上的应用模块初始化时,应用模块向所在业务板卡的应用模块管理系统发送注册请求消息,该注册请求消息中包括:应用模块的标识与通信方法,该应用模块所在业务板卡的应用模块管理系统,根据该注册请求消息存储该应用模块所在板卡的标识(也即自身的标识)、该应用模块的标识与通信方法的对应关系,并将注册请求消息转发至主控制板卡的应用模块管理系统,主控制板卡的应用模块管理系统根据该注册请求消息存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。
[0031]值得说明的是,由于应用模块的标识在应用模块所在的板卡上唯一静态标识该应用模块,因此,在本发明其它实施例中,若应用模块初始化时均向自身所在板卡的应用模块管理系统发送注册请求消息,例如:每一业务板卡上的应用模块初始化时,业务板卡上的应用模块向自身所在业务板卡的应用模块系统发送注册请求消息,则业务板卡的应用模块管理系统也可以只存储应用模块的标识与通信方法的对应关系,而无需存储应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系。
[0032]下面结合具体的实施例,对本发明实施例中,业务板卡上的应用模块初始化时,向所在业务板卡的应用模块管理系统发送注册请求消息注册的过程进行详细说明。具体实施时,业务板卡上的应用模块初始化时,向该业务板卡的应用模块管理系统发送注册请求消息,该注册请求消息中包括:应用模块的标识以及通信方法,应用模块包括多板卡机框通信设备系统启动时随系统启动初始化的应用模块、动态初始化的应用模块以及在线更新的应用模块,业务板卡的应用模块管理系统接收到该注册请求消息时,存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系,并向该应用模块发送注册请求确认消息,并将该注册请求消息发送至主控制板卡的应用模块管理系统,主控制板卡的应用模块管理系统接收到注册请求消息时,存储该应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系。其中,业务板卡初始化时,业务板卡的应用模块管理系统需要向主控制板卡的应用模块管理系统注册。
[0033]当然,在本发明的其它实施例中,业务板卡的应用模块管理系统在接收到本板卡上应用模块的注册请求消息时,也可以不存储该应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系,而直接将该注册请求消息发送至主控制板卡的应用模块管理系统,使主控制板卡的应用模块管理系统存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系,该实施例中业务板卡的应用模块管理系统接收到第一应用模块发送的用于查询第二应用模块的通信方法的查询请求消息时,直接将该查询请求消息转发至主控制板卡的应用模块管理系统进行查询。需要说明的是,业务板卡的应用模块管理系统存储应用模块所在板卡的标识、应用模块的标识与通信方法的关系,与业务板卡的应用模块管理系统不存储应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系相比,有以下优点:首先,当第二应用模块与第一应用模块位于同一业务板卡时,可以直接在自身存储的应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,而不需要中继到主控制板卡的应用模块管理系统查询,提高查询效率,而且减少板间通信的控制信息;其次,由于板内通信的可靠性远高于板间通信的可靠性,因此,能够提高通信的可靠性;最后,如果主控制板卡失效,备用控制板卡由备用升为主用,若备用控制板卡的数据与失效的主用控制板卡中的数据不一致,可以使用业务板卡的应用模块管理系统中存储的数据进行审计。
[0034]作为较为具体的实施时,如图2所示,业务板卡appsvr_i中的应用模块app_il以及应用模块app_i2初始化时的注册流程包括:
[0035]步骤202,业务板卡appsvr_i^II始化时,业务板卡appsvi^ij^应用模块管理系统向主控制板卡app s vr_m的应用模块管理系统注册;
[0036]步骤204,同步更新,具体来说,主控制板卡appsvr_m的应用模块管理系统同步业务板卡appSVr_i的应用模块管理系统中已经存储的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系;
[0037]步骤206,业务板卡appsvr_i中的应用模块app_i I初始化,向业务板卡appsvr_i的应用模块管理系统注册,注册请求消息中携带应用模块的名称namei I以及通信方法funcil ;
[0038]步骤208,业务板卡appsvr_ij^应用模块管理系统接收到应用模块app_il的注册请求消息时,可以存储应用模块a P P _ i I所在业务板卡的标识1、应用模块a P P _ i I的名称namei I与通信方法funcil的对应关系,然后将应用模块app_i I的注册请求消息转发至主控制板卡appsvr_m的应用模块管理系统,以在主控制板卡appsvr_m的应用模块管理系统中存储应用模块app_il所在业务板卡的标识1、应用模块app_il的名称nameil与通信方法funcil的对应关系;也可以不存储应用模块app_i I所在业务板卡的标识1、应用模块app_i I的名称namei I与通信方法funci I的对应关系,直接将应用模块app_i I的注册请求消息转发至主控制板卡appsvr_m的应用模块管理系统,以在主控制板卡appsvr_m的应用模块管理系统中存储应用模块app_i I所在业务板卡的标识1、应用模块app_i I的名称namei I与通信方法funci I的对应关系;
[0039]步骤210,业务板卡3口口8¥1'_;[中的应用模块3口口_12初始化,向业务板卡3口口8¥1'_;[的应用模块管理系统注册,注册请求消息中携带应用模块app_i2的名称namei2以及通信方法funci2;
[0040]步骤212,业务板卡appSvr_U^应用模块管理系统接收到应用模块app_i2的注册请求消息时,可以存储应用模块app_i2所在业务板卡的标识1、应用模块app_i2的名称namei2与通信方法funci2的对应关系,然后将应用模块app_i2的注册请求消息转发至主控制板卡appsvr_m的应用模块管理系统,以在主控制板卡appsvr_m的应用模块管理系统中存储应用模块3口口_12所在业务板卡的标识;[、应用模块3口口_12的名称1^1]1612与通信方法funci2的对应关系;也可以不存储应用模块app_i2所在业务板卡的标识1、应用模块app_i2的名称name i 2与通信方法f unc i 2的对应关系,直接将应用模块app_i 2的注册请求消息转发至主控制板卡appsvr_m的应用模块管理系统,以在主控制板卡appsvr_m的应用模块管理系统中存储应用模块app_i2所在业务板卡的标识1、应用模块app_i2的名称namei2与通信方法funci 2的对应关系。
[0041]需要说明的是,主控制板卡上的应用模块初始化时,直接向主控制板卡的应用模块管理系统注册,而无需经过业务板卡的应用模块管理系统,具体实施时,如图3所示,主控制板卡app s vr_m中的应用模块app_01初始化时,直接向主控制板卡app s vr_m的应用模块管理系统注册,注册请求消息中同样携带应用模块app_01的名称nameOl以及通信方法funcOl,主控制板卡的应用模块管理系统存储应用模块app_01所在板卡的标识、应用模块app_01的名称nameOl与通信方法funcOl的对应关系。
[0042]下面结合具体的实施例,对本发明实施例中第一应用模块查询第二应用模块的通信方法的过程进行详细说明,如图4所示,业务板卡appsvrj中的应用模块app_i I查询本业务板卡上的应用模块app_i2的通信方法的步骤包括:
[0043]步骤402,业务板卡appsvr」中的应用模块app_il向业务板卡appsvi^ij^应用模块管理系统发送查询请求消息,查询请求消息中包括应用模块app_i2的名称namei2以及应用模块app_i2所在板卡的标识i ;
[0044]步骤404,业务板卡appsvr」的应用模块管理系统接收到应用模块app_il发送的查询请求消息,确认应用模块app_i2所在板卡的标识i与自身的板卡标识i相同时,直接在自身中查找应用模块app_i2的通信方法,并根据查找到的应用模块app_i2的通信方法生成查询请求响应消息发送至应用模块app_il,查询请求响应中包括:应用模块app_i2的名称namei2,应用模块app_i2所在板卡的标识i以及应用模块app_i2的通信方法funci2;
[0045]业务板卡appsvr_i中的应用模块app_il查询业务板卡appsvrj.上的应用模块app_j I的通信方法的步骤包括:
[0046]步骤406,业务板卡appsvr」中的应用模块app_il向业务板卡appsvi^ij^应用模块管理系统发送查询请求消息,查询请求消息中包括应用模块app_jl的名称namejl以及应用模块app_ j I所在板卡的标识j ;
[0047]步骤408,业务板卡appsvr」的应用模块管理系统接收到应用模块app_il发送的查询请求消息,确认应用模块app_jl所在板卡的标识j与自身的板卡标识i不同,则将查询请求消息转发至主控制板卡a P P s V r_m的应用模块管理系统;
[0048]步骤410,主控制板卡appsvr_m的应用模块管理系统接收到业务板卡appsvr」的应用模块管理系统发送的查询请求消息时,根据板卡的标识j以及应用模块app_jl的名称name j I,在自身中查询应用模块app_ j I的通信方法,并根据查找到的应用模块app_ j I的通信方法生成查询请求响应消息发送至业务板卡appsvr_i的应用模块管理系统,查询请求响应中包括:应用模块app_ j I的名称name j I,应用模块app_ j I所在板卡的标识j以及应用模块app_j I的通信方法func j I ;
[0049]步骤412,业务板卡appsvr」的应用模块管理系统接收到主控制板卡appsvrj^a应用模块管理系统发送的查询请求响应消息时,将该查询请求响应消息转发至应用模块app_il,当然,业务板卡appsvr」的应用模块管理系统也可以缓存主控制板卡appsvr_n^9应用模块管理系统对应用模块app_jl的查询请求响应消息,供本板卡上的其他应用模块后续查询使用,后续如果其它应用模块查询应用模块app_ j I的通信方法,则业务板卡appSVr_i的应用模块管理系统不再需要将查询请求消息转发至主控制板卡appsvrjn的应用模块管理系统进行查询,而可以从缓存的应用模块app_jl的查询请求响应消息中直接查询应用模块appjl的通信方法。
[0050]当然,本领域技术人员应当理解的是,若第二应用模块未启动,也即未向业务板卡的应用模块管理系统以及主控制板卡的应用模块管理系统注册,则业务板卡的应用模块管理系统以及主控制板卡的应用模块管理系统中均无法查询到第二应用模块的通信方法,则查询请求响应消息中包含查询失败的标识,第一应用模块接收到包含查询失败的标识的查询请求响应消息时,无法与第二应用模块进行通信,其中,查询失败的标识可以任意设置,例如:使用O标识查询失败。
[0051]作为较为具体的实施例,假设业务板卡appsvr_i中的应用模块app_i2以及业务板卡appsvr_j中的应用模块app_j I均未注册,如图5所示,业务板卡appsvr_i中的应用模块app_i I查询本业务板卡上的应用模块app_i 2的通信方法的步骤包括:
[0052]步骤502,业务板卡appsvr」中的应用模块app_il向业务板卡appsvi^ij^应用模块管理系统发送查询请求消息,查询请求消息中包括应用模块app_i2的名称namei2以及应用模块app_i2所在板卡的标识i ;
[0053]步骤504,业务板卡appsvr」的应用模块管理系统接收到应用模块app_iI发送的查询请求消息,确认应用模块app_i2所在板卡的标识i与自身的板卡标识i相同时,直接在自身中查找应用模块app_i2的通信方法,由于应用模块app_i2未注册,贝Ij业务板卡appsvr_i的应用模块管理系统在自身中查询不到应用模块app_i2的通信方法,因此,业务板卡appSVr_U^应用模块管理系统根据查询结果生成查询请求响应消息,并将该查询请求响应消息发送至应用模块app_i I,该查询请求响应消息中包含应用模块app_i2的名称namei2,应用模块app_i2所在板卡的标识i以及查询失败的标识O;[OO54]业务板卡appsvrj中的应用模块app_i I查询业务板卡appsvrj.上的应用模块app_j I的通信方法的步骤包括:
[°°55] 步骤506,业务板卡appsvr」中的应用模块app_il向业务板卡appsvi^ij^应用模块管理系统发送查询请求消息,查询请求消息中包括应用模块app_jl的名称namejl以及应用模块app_ j I所在板卡的标识j ;
[0056]步骤508,业务板卡appsvr」的应用模块管理系统接收到应用模块app_iI发送的查询请求消息,确认应用模块app_jl所在板卡的标识j与自身的板卡标识i不同,则将查询请求消息转发至主控制板卡a P P s V r_m的应用模块管理系统;
[0057]步骤510,主控制板卡appsvr_m的应用模块管理系统接收到业务板卡appsvr」发送的查询请求消息时,根据板卡的标识j以及应用模块app_jl的名称namejl,在自身中查询应用模块app_jl的通信方法,由于应用模块app_jl未注册,贝Ij主控制板卡appsvr_m的应用模块管理系统查询不到应用模块appjl的通信方法,因此,主控制板卡appsvr_n^^应用模块管理系统根据查询结果生成查询请求响应消息,并将该查询请求响应消息发送至业务板卡a P P s V r _ i的应用模块管理系统,该查询请求响应消息中包含应用模块a P P _ j I的名称namejl,应用模块app_jl所在板卡的标识j以及查询失败的标识O;
[0058]步骤512,业务板卡appsvr」的应用模块管理系统接收到主控制板卡appsvrj^a应用模块管理系统发送的查询请求响应消息时,将该查询请求响应消息转发至应用模块app_i I,该查询请求响应消息中包含查询失败的标识O,该查询失败的标识O用于标识未查询到应用模块app_ j I的通信方法。
[0059]在一种可能的实施方式中,本发明实施例提供的方法中,第一应用模块根据获取到的第二应用模块的通信方法与第二应用模块进行通信,包括:第一应用模块与第二应用模块位于同一板卡,第一应用模块与第二应用模块进行通信时,第一应用模块向第二应用模块发送的消息中携带自身所在板卡的标识以及自身的通信方法;第一应用模块与第二应用模块位于不同板卡,第一应用模块与第二应用模块通过第一应用模块所在板卡、第二应用模块所在板卡进行通信时,第一应用模块向第二应用模块发送的消息中携带第二应用模块所在板卡的标识、第二应用模块的通信方法、自身所在板卡的标识以及自身的通信方法。
[0060]具体实施时,第一应用模块与第二应用模块位于同一板卡,第一应用模块与第二应用模块进行通信时,第一应用模块直接使用查询到的第二应用模块的通信方法向第二应用模块发送消息,消息中携带自身所在板卡的标识以及自身的通信方法,第二应用模块收到消息后,使用消息中携带的第一应用模块的通信方法,向第一应用模块回复响应消息,而不需要再查询第一应用模块的通信方法。
[0061]具体实施时,以第一应用模块和第二应用模块位于同一业务板卡为例,第一应用模块获取到第二应用模块的通信方法之后,即可与第二应用模块进行通信,下面结合图6对第一应用模块和第二应用模块的通信过程进行详细说明。
[0062]如图6所示,位于同一业务板卡appsvr_i上的应用模块app_il与应用模块app_i2的通信过程,包括:
[0063]步骤602,应用模块app_il向业务板卡appsvr_i的应用模块管理系统发送查询请求消息,查询应用模块app_i2的通信方法,该查询请求消息中包括应用模块app_i2的名称name i 2以及应用模块app_i 2所在业务板卡的标识i ;
[0064]步骤604,业务板卡appsvr」的应用模块管理系统接收到应用模块app_iI发送的查询请求消息,确认应用模块app_i2所在业务板卡的标识i与自身的业务板卡标识i相同时,直接在自身查找应用模块app_i2的通信方法,并根据查找到的应用模块app_i2的通信方法生成查询请求响应消息发送至应用模块app_i I,查询请求响应中包括:应用模块app_i 2的名称name i 2,应用模块app_i 2所在业务板卡的标识i以及应用模块app_i 2的通信方法funci2;
[0065]步骤606,应用模块app_il接收业务板卡appsvi^ij^应用模块管理系统发送的查询请求响应消息,从该查询请求响应消息中获取应用模块app_i2的通信方法,并使用获取到的应用模块app_i2的通信方法向应用模块app_i2发送消息,该消息中包括消息的内容、应用模块app_i I所在业务板卡的标识以及应用模块app_i I的通信方法,以使应用模块app_i2根据应用模块app_il所在业务板卡的标识以及应用模块app_il的通信方法与应用模块app_il进行通信;
[0066]步骤608,应用模块app_i2接收应用模块app_iI发送的消息,从消息中获取应用模块app_i I所在业务板卡的标识以及应用模块app_i I的通信方法,并使用应用模块app_i I所在业务板卡的标识以及应用模块app_il的通信方法,向应用模块app_il回复响应消息,应用模块app_i2回复的响应消息中包括:响应消息的内容、应用模块app_i2所在业务板卡的标识以及应用模块app_i2的通信方法;
[0067]步骤610,应用模块app_il使用应用模块app_i2的通信方法再次向应用模块app_i 2发送消息;
[0068]步骤612,应用模块app_iI在预设时间内未收到应用模块app_i 2的响应消息,再次发送查询请求消息至业务板卡appsvr」的应用模块管理系统查询应用模块app_i2的通信方法;
[0069]步骤614,业务板卡appsvr_i的应用模块管理系统在自身中再次查询应用模块app_i2的通信方法,并生成查询请求响应消息发送至应用模块app_i I ;
[0070]步骤616,应用模块app_iI利用重新查询得到的应用模块app_i 2的通信方法向应用模块app_i2发送消息;
[0071 ]步骤618,如果应用模块app_il在预设时间内未收到应用模块app_i2的响应消息,则第三次发送查询请求消息至业务板卡appsvr」的应用模块管理系统查询应用模块app_i2的通信方法;
[0072]步骤620,业务板卡appsvrj的应用模块管理系统在自身中再次查询应用模块app_i2的通信方法,若未查找到应用模块app_i2的通信方法,则根据查询结果生成查询请求响应消息发送至应用模块app_il,通知应用模块app_il查询失败,未查找到应用模块app」2的通信方法。
[0073]从图6中示出的位于同一业务板卡appsvr_i上的应用模块app_il与应用模块app_i2的通信过程可以看出,本发明实施例提供的应用模块间的通信方法同样适用于单业务板卡通信系统的应用模块之间的通信,不需要主控制板卡的参与,单业务板卡通信系统的应用模块之间的通信类似与本发明实施例图6示出的通信过程。
[0074]具体实施时,当第一应用模块与第二应用模块位于不同板卡,第一应用模块与第二应用模块通过第一应用模块所在板卡、第二应用模块所在板卡进行通信时,第一应用模块向第二应用模块发送的消息中携带第二应用模块所在板卡的标识、第二应用模块的通信方法、自身所在板卡的标识以及自身的通信方法,在消息发送过程中,第一应用模块将该消息发送至第一应用模块所在板卡,第一应用模块所在板卡根据该消息中携带的第二应用模块所在板卡的标识将该消息通过板间消息转发至第二应用模块所在板卡,第二应用模块所在板卡接收到该消息之后,由于第二应用模块所在板卡上包括多个应用模块,因此,第二应用模块所在板卡需要根据该消息中携带的第二应用模块的通信方法将该消息转发至第二应用模块,而第二应用模块接收到该消息之后,需要使用该消息中携带的第一应用模块所在板卡的标识、第一应用模块的通信方法向第一应用模块回复响应消息,第二应用模块回复的响应消息的转发过程与第一应用模块发送消息的过程类似,下面结合图7对第一应用模块和第二应用模块的通信过程进行详细说明。
[0075]如图7所示,以位于业务板卡appsvr_i上的应用模块app_il与位于业务板卡appSVr_ j上的应用模块app_ j I的通信过程为例,通信过程的具体步骤,包括:
[0076]步骤702,应用模块app_il获取到应用模块app_jl的通信方法之后,向应用模块app_j I发送消息svr_send,该消息需要经过业务板卡appsvr_i转发,因此,该消息在该步骤中为板内消息,该消息中包括:消息的内容、应用模块app_ j I所在业务板卡的标识j、应用模块app_ j I的通信方法、应用模块app_i I所在业务板卡的标识i以及应用模块app_i I的通信方法;
[0077]步骤704,业务板卡3口口8¥1'_;[根据消息中携带的应用模块3口口_」1所在业务板卡的标识j,将应用模块app_iI发送的消息转发至业务板卡appsvr_j,该消息在该步骤中在业务板卡间传递,因此,该消息的形式为板间消息(Inter-Board Communicat1n,IBC)形式;
[0078]步骤706,业务板卡appsvr_j将业务板卡appsvr_i发送的消息转发至应用模块app_j I,具体来说,由于业务板卡appsvr_j上存在多个应用模块,因此,业务板卡appsvr_j在转发消息时,为了确定将消息转发哪一个确定的应用模块,业务板卡要根据消息中携带的应用模块appjl的通信方法,将消息转发至应用模块appjl,该消息中包括:消息的内容、应用模块app_i I所在业务板卡的标识i以及应用模块app_i I的通信方法;
[0079]步骤708,应用模块appjl收到应用模块app_il发送的消息之后,使用消息中携带的应用模块3卯_11所在业务板卡的标识i以及应用模块app_i I的通信方法,向应用模块app_i I回复响应消息svr_send,该响应消息需要经过业务板卡appsvr_ j转发,因此,该响应消息在该步骤中为板内消息,该响应消息中包括:消息的内容、应用模块app_i I所在业务板卡的标识1、应用模块app_i I的通信方法、应用模块app_ j I所在业务板卡的标识j以及应用模块app_ j I的通信方法;
[0080]步骤710,业务板卡3口口8¥1'_」根据响应消息中携带的应用模块3口口_;[1所在业务板卡的标识i,将应用模块app_ j I回复的响应消息转发至业务板卡appsvr_i,该响应消息在该步骤中在业务板卡间传递,因此,该响应消息的形式为板间消息IBC形式;
[0081 ] 步骤712,业务板卡appsvr」将业务板卡appsvr_j&送的响应消息转发至应用模块app_i I,具体来说,由于业务板卡appsvr_i上存在多个应用模块,因此,业务板卡appsvr_i在转发消息时,为了确定将消息转发哪一个确定的应用模块,业务板卡apps vr_i需要根据消息中携带的应用模块app_i I的通信方法,将消息转发至应用模块app_iI,该响应消息中包括:消息的内容、应用模块app_ j I所在业务板卡的标识j以及应用模块app_ j I的通信方法。
[0082]需要说明的是,位于主控制板卡上的第一应用模块和第二应用模块的通信过程与图6中示出的过程类似,位于主控制板卡上的第一应用模块与位于业务板卡上的第二应用模块的通信方法与图7中示出的过程类似,不再一一举例说明。
[0083]具体实施时,为了保证业务板卡的应用模块管理系统和主控制板卡的应用模块管理系统中应用模块的通信方法的准确性和时效性,应用模块卸载时,发送取消注册请求消息至业务板卡的应用模块管理系统,以使业务板卡的应用模块管理系统删除该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系,并由业务板卡的应用模块管理系统将取消注册请求消息转发至主控制板卡的应用模块管理系统,以使主控制板卡的应用模块管理系统删除该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系,具体来说:
[0084]每一应用模块被卸载时,应用模块发送取消注册请求消息至该应用模块所在业务板卡的应用模块管理系统,取消注册请求消息中包括:应用模块的标识,业务板卡的应用模块管理系统相应的删除该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系,并将包含应用模块的标识的取消注册请求消息转发至主控制板卡的应用模块管理系统,主控制板卡的应用模块管理系统删除该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系,以实时更新应用模块的通信方法,避免将已卸载的应用模块的通信方法提供给其它应用模块。
[0085]作为较为具体的实施例,如图8所示,业务板卡appsvr_j上的应用模块app_jl被卸载时的流程,包括:
[0086]步骤802,应用模块app_jl被卸载时,应用模块app_jl向业务板卡appsvr_j的应用模块管理系统发送取消注册请求消息,该取消注册请求消息中包括:应用模块app_j I的名称name j I,较为优选地,该取消注册请求消息中还包括:应用模块app_ j I的通信方法funcjI ;
[0087]步骤804,业务板卡appsvr_j的应用模块管理系统删除应用模块app_jl所在板卡的标识、应用模块appjl的标识与通信方法的对应关系,并将包含应用模块appjl的名称namejl的取消注册请求消息转发至主控制板卡appsvr_m的应用模块管理系统,以使主控制板卡appsvr_m的应用模块管理系统删除应用模块app_ j I所在板卡的标识、应用模块app_ j I的标识与通信方法的对应关系。
[0088]在一种可能的实施方式中,本发明实施例提供的方法中,第一应用模块根据获取到的第二应用模块的通信方法与第二应用模块进行通信之后,该方法还包括:当第一应用模块预设时间内未收到第二应用模块的响应消息时,第一应用模块向目标板卡的应用模块管理系统发送查询请求消息,请求目标板卡的应用模块管理系统重新查询第二应用模块的通?目方法。
[0089]在一种可能的实施方式中,本发明实施例提供的方法中,目标板卡为第一应用模块所在业务板卡,或者第一应用模块所在主控制板卡。
[0090]在一种可能的实施方式中,本发明实施例提供的方法中,当目标板卡为第一应用模块所在主控制板卡时,目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,包括:第一应用模块所在主控制板卡的应用模块管理系统从自身中查询第二应用模块的通信方法,其中,主控制板卡的应用模块管理系统在任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。
[0091 ]在一种可能的实施方式中,本发明实施例提供的方法中,当目标板卡为第一应用模块所在业务板卡时,目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,包括:第一应用模块所在业务板卡的应用模块管理系统从主控制板卡的应用模块管理系统中查询第二应用模块的通信方法,其中,主控制板卡的应用模块管理系统在任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系O
[0092]在一种可能的实施方式中,本发明实施例提供的方法中,当目标板卡为第一应用模块所在业务板卡时,目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,包括:第一应用模块所在业务板卡的应用模块管理系统从自身中或者从主控制板卡的应用模块管理系统中查询第二应用模块的通信方法,其中,第一应用模块所在业务板卡的应用模块管理系统在本板卡上任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系,主控制板卡的应用模块管理系统在任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。
[0093]在目标板卡侧,本发明实施例提供的一种应用模块间的通信方法,如图9所示,该方法包括:
[0094]步骤902,目标板卡的应用模块管理系统接收第一应用模块发送的用于查询第二应用模块通信方法的查询请求消息,查询请求消息中包括:第二应用模块的标识以及第二应用模块所在板卡的标识;
[0095]步骤904,目标板卡的应用模块管理系统基于查询请求消息从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,根据查询结果生成查询请求响应消息,并将生成的查询请求响应消息发送至第一应用模块。
[0096]本发明实施例提供的方法中,由于目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,因此,只要第二应用模块已经初始化,不管第二应用模块是随系统启动初始化,还是动态初始化,目标板卡的应用模块管理系统都能够从应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询得到第二应用模块的通信方法,并将第二应用模块的通信方法发送至第一应用模块,以使第一应用模块与第二应用模块进行通信,与现有进程之间的通信方法有一定的局限性,不适合动态初始化的应用模块之间的通信相比,本实施例实现了动态初始化的应用模块间的通信,也即为动态初始化的应用模块间的通信提供了方法。
[0097]在一种可能的实施方式中,本发明实施例提供的方法中,目标板卡为第一应用模块所在业务板卡,或者第一应用模块所在主控制板卡。
[0098]在一种可能的实施方式中,本发明实施例提供的方法中,当目标板卡为第一应用模块所在主控制板卡时,目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,包括:第一应用模块所在主控制板卡的应用模块管理系统从自身中查询第二应用模块的通信方法,其中,主控制板卡的应用模块管理系统在任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。
[0099]在一种可能的实施方式中,本发明实施例提供的方法中,当目标板卡为第一应用模块所在主控制板卡时,该方法还包括:主控制板卡的应用模块管理系统在任一应用模块卸载时删除该应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系。其中,任一应用模块可以是业务板卡上的应用模块,也可以是主控制板卡上的应用模块。
[0100]在一种可能的实施方式中,本发明实施例提供的方法中,当目标板卡为第一应用模块所在业务板卡时,目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,包括:第一应用模块所在业务板卡的应用模块管理系统从主控制板卡的应用模块管理系统查询第二应用模块的通信方法,其中,主控制板卡的应用模块管理系统在任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。[0101 ]在一种可能的实施方式中,本发明实施例提供的方法中,当目标板卡为第一应用模块所在业务板卡时,该方法还包括:第一应用模块所在业务板卡的应用模块管理系统在本板卡上任一应用模块卸载时,发送包含该应用模块的标识的卸载请求消息至主控制板卡的应用模块管理系统,以使主控制板卡的应用模块管理系统删除该应用模块所在板卡的标识(也即发送卸载请求消息的业务板卡的标识)、该应用模块的标识与通信方法的对应关系O
[0102]在一种可能的实施方式中,本发明实施例提供的方法中,当目标板卡为第一应用模块所在业务板卡时,目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,包括:第一应用模块所在业务板卡的应用模块管理系统从自身中或者从主控制板卡的应用模块管理系统中查询第二应用模块的通信方法,其中,第一应用模块所在业务板卡的应用模块管理系统在本板卡上任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系,主控制板卡的应用模块管理系统在任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。
[0103]在一种可能的实施方式中,本发明实施例提供的方法中,第一应用模块所在业务板卡的应用模块管理系统从自身中或者从主控制板卡的应用模块管理系统中查询第二应用模块的通信方法,包括:第一应用模块所在业务板卡的应用模块管理系统查询自身中是否存储有第二应用模块的通信方法,若查询失败,则将查询请求消息转发至主控制板卡的应用模块管理系统,以请求在主控制板卡的应用模块管理系统中查询第二应用模块的通信方法
[0104]在一种可能的实施方式中,本发明实施例提供的方法中,在第一应用模块所在业务板卡的应用模块管理系统将查询请求消息转发至主控制板卡的应用模块管理系统之后,该方法还包括:第一应用模块所在业务板卡的应用模块管理系统接收主控制板卡的应用模块管理系统发送的查询请求响应消息;第一应用模块所在业务板卡的应用模块管理系统从查询请求响应消息中获取第二应用模块的通信方法,并存储第二应用模块所在板卡的标识、第二应用模块的标识与通信方法的对应关系。
[0105]本发明实施例提供的方法中,第一应用模块所在业务板卡的应用模块管理系统接收主控制板卡发送的查询请求响应消息之后,从查询请求响应消息中获取第二应用模块的通信方法,并存储第二应用模块所在板卡的标识、第二应用模块的标识与通信方法的对应关系,以在本板卡上其它应用模块查询第二应用模块的通信方法时,不需要将查询请求消息转发至主控制板卡,就可以直接查询第二应用模块的通信方法,提高查询效率。
[0106]在一种可能的实施方式中,本发明实施例提供的方法中,第一应用模块所在业务板卡的应用模块管理系统查询自身中是否存储有第二应用模块的通信方法,包括:当第一应用模块所在业务板卡的应用模块管理系统确定自身中存储有第二应用模块所在板卡的标识与第二应用模块的标识的对应关系时,第一应用模块所在业务板卡的应用模块管理系统在自身中查询第二应用模块的通信方法。
[0107]在一种可能的实施方式中,本发明实施例提供的方法中,第一应用模块所在业务板卡的应用模块管理系统存储第二应用模块所在板卡的标识、第二应用模块的标识与通信方法的对应关系之后,该方法还包括:第一应用模块所在业务板卡的应用模块管理系统确定存储第二应用模块的通信方法达到预设时间,删除第二应用模块所在板卡的标识、第二应用模块的标识与通信方法的对应关系。
[0108]本发明实施例提供的方法中,由于第二应用模块不是第一应用模块所在业务板卡上的应用模块,第二应用模块初始化时,第一应用模块所在业务板卡的应用模块管理系统不存储第二应用模块所在板卡的标识、第二应用模块的标识与通信方法的对应关系,第二应用模块卸载时,第一应用模块所在业务板卡的应用模块管理系统也不能够及时获知,第一应用模块所在业务板卡的应用模块管理系统无法及时更新第二应用模块的通信方法,因此,第一应用模块所在业务板卡的应用模块管理系统存储第二应用模块的通信方法达到预设时间之后,删除第二应用模块所在板卡的标识、第二应用模块的标识与通信方法的对应关系,避免因长时间未更新第二应用模块的通信方法,而在其它应用模块查询时提供错误的第二应用模块的通信方法。
[0109]具体实施时,业务板卡的应用模块管理系统存储第二应用模块所在板卡的标识、第二应用模块的标识与通信方法的对应关系之后,启动定时器或计数器,并通过定时器的计时结果或计数器的计数值确定存储的第二应用模块的通信方法是否达到预设时间,预设时间可以自由设定,当然,较为优选地,为了确保查询得到的第二应用模块的通信方法的准确性,该预设时间可以设定为较短的时间,例如:预设时间为5分钟。
[0110]在一种可能的实施方式中,本发明实施例提供的方法中,第一应用模块所在业务板卡的应用模块管理系统查询自身中是否存储有第二应用模块的通信方法,包括:当第一应用模块所在业务板卡的应用模块管理系统确定第二应用模块所在板卡的标识与自身所在板卡的标识相同时,第一应用模块所在业务板卡的应用模块管理系统在自身中查询第二应用模块的通信方法。
[0111]在一种可能的实施方式中,本发明实施例提供的方法中,该方法还包括:第一应用模块所在业务板卡的应用模块管理系统向主控制板卡的应用模块管理系统发送注册消息,并在接收到主控制板卡的应用模块管理系统发送的注册确认消息之后,与主控制板卡的应用模块管理系统同步自身中存储的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系。
[0112]在一种可能的实施方式中,本发明实施例提供的方法中,当目标板卡为第一应用模块所在业务板卡时,该方法还包括:第一应用模块所在业务板卡的应用模块管理系统在本板卡上任一应用模块卸载时,删除存储的该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系,并发送包含该应用模块的标识的卸载请求消息至主控制板卡的应用模块管理系统,以使主控制板卡的应用模块管理系统删除该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。
[0113]在主控制板卡侧,本发明实施例提供的一种应用模块间的通信方法,如图10所示,该方法包括:
[0114]步骤1002,主控制板卡的应用模块管理系统接收第一应用模块所在业务板卡的应用模块管理系统发送的用于查询第二应用模块通信方法的查询请求消息,查询请求消息中包括:第二应用模块的标识以及第二应用模块所在板卡的标识;
[0115]步骤1004,主控制板卡的应用模块管理系统根据第二应用模块的标识以及第二应用模块所在板卡的标识,在自身中查询第二应用模块的通信方法,并根据查询结果生成查询请求响应消息,将查询请求响应消息发送至第一应用模块所在业务板卡的应用模块管理系统;其中,主控制板卡的应用模块管理系统在任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。
[0116]本发明实施例提供的方法中,主控制板卡的应用模块管理系统在任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系,因此,在主控制板卡的应用模块管理系统接收到第一应用模块所在业务板卡发送的用于查询第二应用模块通信方法的查询请求消息时,只要第二应用模块已经初始化,不管第二应用模块是随系统启动初始化,还是动态初始化,主控制板卡的应用模块管理系统都能够从自身中查询得到第二应用模块的通信方法,并将第二应用模块的通信方法通过业务板卡的应用模块管理系统发送至第一应用模块,以使第一应用模块与第二应用模块进行通信,与现有进程之间的通信方法有一定的局限性,不适合动态初始化的应用模块之间的通信相比,本实施例实现了动态初始化的应用模块间的通信,也即为动态初始化的应用模块间的通信提供了方法。
[0117]具体实施时,本发明提供的应用模块间的通信方法中,还可以包括备用控制板卡,备用控制板卡上的应用模块管理系统实时与主控制板卡的应用模块管理系统同步或者周期性与主控制板卡的应用模块管理系统同步,备用控制板卡中的应用模块管理系统存储所有已注册的业务板卡上的已注册的应用模块的通信方法。
[0118]值得说明的是,在主控制板卡的应用模块管理系统中存储应用模块的通信方法时,需要存储应用模块所在板卡的标识、应用模块的标识以及通信方法的对应关系,以区分位于不同板卡上同一应用模块标识的多个应用模块。
[0119]在一种可能的实施方式中,本发明实施例提供的方法中,该方法还包括:主控制板卡的应用模块管理系统接收到第一应用模块所在业务板卡的应用模块管理系统发送的注册消息时,发送注册确认消息至第一应用模块所在业务板卡的应用模块管理系统,并与第一应用模块所在业务板卡的应用模块管理系统,同步第一应用模块所在业务板卡的应用模块管理系统中存储的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系。
[0120]具体实施时,主控制板卡的应用模块管理系统在任一业务板卡的应用模块管理系统注册时,均与该业务板卡的应用模块管理系统,同步该业务板卡的应用模块管理系统中存储的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系。
[0121]在一种可能的实施方式中,本发明实施例提供的方法中,该方法还包括:主控制板卡的应用模块管理系统在任一应用模块卸载时删除该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系;以及主控制板卡的应用模块管理系统接收到任一业务板卡故障的消息时,根据该业务板卡的标识在自身中删除所有该业务板卡的标识、应用模块的标识与通信方法的对应关系。
[0122]具体实施时,如图11所示,主控制板卡appSVr_m的应用模块管理系统收到业务板卡j故障通知,则删除关于业务板卡j的所有注册信息,也即删除所有业务板卡j、应用模块的标识与通信方法的对应关系,其中,业务板卡j的故障包括:业务板卡j被拔出卡槽、业务板卡j通讯失败等等,而且在多板卡机框通信设备系统中,通常会有硬件设施检测某个插槽是否有插卡,以及业务板卡的拔插事件,或者由软件检测长期没有消息回应的业务板卡,例如:设备管理监测到事件,通知接口管理,接口管理再分发事件到需要的模块或子系统。
[0123]本发明实施例提供的一种应用模块间的通信系统,如图12所示,该系统包括:主控制板卡1202和至少一个业务板卡(如图中示出的第I个业务板卡1204..?第η个业务板卡1205);其中,主控制板卡和/或业务板卡上设置有多个应用模块(如图中示出的应用模块1、应用模块2..?应用模块n);多个应用模块中的第一应用模块向目标板卡的应用模块管理系统发送用于查询第二应用模块通信方法的查询请求消息,查询请求消息中包括:第二应用模块的标识以及第二应用模块所在板卡的标识;目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,根据查询结果生成查询请求响应消息,并将生成的查询请求响应消息发送至第一应用模块;第一应用模块从接收到的查询请求响应消息中获取第二应用模块的通信方法,并根据获取到的第二应用模块的通信方法与第二应用模块进行通信;其中,目标板卡为第一应用模块所在业务板卡,或者第一应用模块所在主控制板卡。
[0124]本发明实施例提供的系统中,目标板卡的应用模块管理系统接收到第一应用模块发送的用于查询第二应用模块通信方法的查询请求消息时,目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,并根据查询结果生成查询请求响应消息发送至第一应用模块,以使第一应用模块从查询请求响应消息中获取第二应用模块的通信方法,并根据获取到的第二应用模块的通信方法与第二应用模块进行通信,由于目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,因此,只要第二应用模块已经初始化,不管第二应用模块是随系统启动初始化,还是动态初始化,目标板卡的应用模块管理系统都能够从应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询得到第二应用模块的通信方法,并将第二应用模块的通信方法发送至第一应用模块,以使第一应用模块与第二应用模块进行通信,与现有进程之间的通信方法有一定的局限性,不适合动态初始化的应用模块之间的通信相比,本实施例实现了动态初始化的应用模块间的通信,也即为动态初始化的应用模块间的通信提供了方法。
[0125]在一种可能的实施方式中,本发明实施例提供的方法中,当目标板卡为第一应用模块所在主控制板卡时,目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,包括:第一应用模块所在主控制板卡的应用模块管理系统从自身中查询第二应用模块的通信方法,其中,主控制板卡的应用模块管理系统在任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。
[0126]在一种可能的实施方式中,本发明实施例提供的方法中,当目标板卡为第一应用模块所在业务板卡时,目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,包括:第一应用模块所在业务板卡的应用模块管理系统从主控制板卡的应用模块管理系统查询第二应用模块的通信方法,其中,主控制板卡的应用模块管理系统在任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。
[0127]在一种可能的实施方式中,本发明实施例提供的方法中,当目标板卡为第一应用模块所在业务板卡时,目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,包括:第一应用模块所在业务板卡的应用模块管理系统从自身中或者从主控制板卡的应用模块管理系统中查询第二应用模块的通信方法,其中,第一应用模块所在业务板卡的应用模块管理系统在本板卡上任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系,主控制板卡的应用模块管理系统在任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。
[0128]在一种可能的实施方式中,本发明实施例提供的方法中,第一应用模块所在业务板卡的应用模块管理系统从自身中或者从主控制板卡的应用模块管理系统中查询第二应用模块的通信方法,包括:第一应用模块所在业务板卡的应用模块管理系统查询自身中是否存储有第二应用模块的通信方法,若查询失败,则将查询请求消息转发至主控制板卡的应用模块管理系统,以请求在主控制板卡的应用模块管理系统中查询第二应用模块的通信方法。
[0129]本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
[0130]本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0131]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0132]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0133]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【主权项】
1.一种应用模块间的通信方法,其特征在于,该方法包括: 第一应用模块向目标板卡的应用模块管理系统发送查询请求消息,请求所述目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,所述查询请求消息中包括:所述第二应用模块的标识以及所述第二应用模块所在板卡的标识; 所述第一应用模块接收所述目标板卡的应用模块管理系统基于所述查询请求消息返回的查询请求响应消息,从所述查询请求响应消息中获取所述第二应用模块的通信方法,并根据获取到的所述第二应用模块的通信方法与所述第二应用模块进行通信。2.根据权利要求1所述的方法,其特征在于,所述第一应用模块根据获取到的所述第二应用模块的通信方法与所述第二应用模块进行通信,包括: 所述第一应用模块与所述第二应用模块位于同一板卡,所述第一应用模块与所述第二应用模块进行通信时,所述第一应用模块向所述第二应用模块发送的消息中携带自身所在板卡的标识以及自身的通信方法; 所述第一应用模块与所述第二应用模块位于不同板卡,所述第一应用模块与所述第二应用模块通过所述第一应用模块所在板卡、所述第二应用模块所在板卡进行通信时,所述第一应用模块向所述第二应用模块发送的消息中携带所述第二应用模块所在板卡的标识、所述第二应用模块的通信方法、自身所在板卡的标识以及自身的通信方法。3.根据权利要求2所述的方法,其特征在于,所述第一应用模块根据获取到的所述第二应用模块的通信方法与所述第二应用模块进行通信之后,该方法还包括: 当所述第一应用模块预设时间内未收到所述第二应用模块的响应消息时,所述第一应用模块向所述目标板卡的应用模块管理系统发送查询请求消息,请求所述目标板卡的应用模块管理系统重新查询所述第二应用模块的通信方法。4.根据权利要求1-3中任一项所述的方法,其特征在于,所述目标板卡为所述第一应用模块所在业务板卡,或者所述第一应用模块所在主控制板卡。5.一种应用模块间的通信方法,其特征在于,该方法包括: 目标板卡的应用模块管理系统接收第一应用模块发送的用于查询第二应用模块通信方法的查询请求消息,所述查询请求消息中包括:所述第二应用模块的标识以及所述第二应用模块所在板卡的标识; 所述目标板卡的应用模块管理系统基于所述查询请求消息从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,根据查询结果生成查询请求响应消息,并将生成的查询请求响应消息发送至所述第一应用模块。6.根据权利要求5所述的方法,其特征在于,所述目标板卡为所述第一应用模块所在业务板卡,或者所述第一应用模块所在主控制板卡。7.根据权利要求6所述的方法,其特征在于,当所述目标板卡为所述第一应用模块所在业务板卡时,所述目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,包括: 所述第一应用模块所在业务板卡的应用模块管理系统从自身中或者从主控制板卡的应用模块管理系统中查询第二应用模块的通信方法,其中,所述第一应用模块所在业务板卡的应用模块管理系统在本板卡上任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系,所述主控制板卡的应用模块管理系统在任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。8.根据权利要求7所述的方法,其特征在于,所述第一应用模块所在业务板卡的应用模块管理系统从自身中或者从主控制板卡的应用模块管理系统中查询第二应用模块的通信方法,包括: 所述第一应用模块所在业务板卡的应用模块管理系统查询自身中是否存储有所述第二应用模块的通信方法,若查询失败,则将所述查询请求消息转发至所述主控制板卡的应用模块管理系统,以请求在所述主控制板卡的应用模块管理系统中查询所述第二应用模块的通信方法。9.根据权利要求8所述的方法,其特征在于,在所述第一应用模块所在业务板卡的应用模块管理系统将所述查询请求消息转发至所述主控制板卡的应用模块管理系统之后,该方法还包括: 所述第一应用模块所在业务板卡的应用模块管理系统接收所述主控制板卡的应用模块管理系统发送的查询请求响应消息; 所述第一应用模块所在业务板卡的应用模块管理系统从所述查询请求响应消息中获取所述第二应用模块的通信方法,并存储所述第二应用模块所在板卡的标识、所述第二应用模块的标识与通信方法的对应关系。10.根据权利要求9所述的方法,其特征在于,所述第一应用模块所在业务板卡的应用模块管理系统查询自身中是否存储有所述第二应用模块的通信方法,包括: 当所述第一应用模块所在业务板卡的应用模块管理系统确定自身中存储有所述第二应用模块所在板卡的标识与所述第二应用模块的标识的对应关系时,所述第一应用模块所在业务板卡的应用模块管理系统在自身中查询所述第二应用模块的通信方法。11.根据权利要求9所述的方法,其特征在于,所述第一应用模块所在业务板卡的应用模块管理系统存储所述第二应用模块所在板卡的标识、所述第二应用模块的标识与通信方法的对应关系之后,该方法还包括: 所述第一应用模块所在业务板卡的应用模块管理系统确定存储所述第二应用模块的通信方法达到预设时间,删除所述第二应用模块所在板卡的标识、所述第二应用模块的标识与通信方法的对应关系。12.根据权利要求8所述的方法,其特征在于,所述第一应用模块所在业务板卡的应用模块管理系统查询自身中是否存储有所述第二应用模块的通信方法,包括: 当所述第一应用模块所在业务板卡的应用模块管理系统确定所述第二应用模块所在板卡的标识与自身所在板卡的标识相同时,所述第一应用模块所在业务板卡的应用模块管理系统在自身中查询所述第二应用模块的通信方法。13.根据权利要求7-12中任一项所述的方法,其特征在于,当所述目标板卡为所述第一应用模块所在业务板卡时,该方法还包括: 所述第一应用模块所在业务板卡的应用模块管理系统在本板卡上任一应用模块卸载时,删除存储的该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系,并发送包含该应用模块所在板卡的标识、该应用模块的标识的卸载请求消息至所述主控制板卡的应用模块管理系统,以使所述主控制板卡的应用模块管理系统删除该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。14.一种应用模块间的通信方法,其特征在于,该方法包括: 主控制板卡的应用模块管理系统接收第一应用模块所在业务板卡的应用模块管理系统发送的用于查询第二应用模块通信方法的查询请求消息,所述查询请求消息中包括:所述第二应用模块的标识以及所述第二应用模块所在板卡的标识; 所述主控制板卡的应用模块管理系统根据所述第二应用模块的标识以及所述第二应用模块所在板卡的标识,在自身中查询所述第二应用模块的通信方法,并根据查询结果生成查询请求响应消息,将所述查询请求响应消息发送至所述第一应用模块所在业务板卡的应用模块管理系统; 其中,所述主控制板卡的应用模块管理系统在任一应用模块初始化时存储该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系。15.根据权利要求14所述的方法,其特征在于,该方法还包括: 所述主控制板卡的应用模块管理系统在任一应用模块卸载时删除该应用模块所在板卡的标识、该应用模块的标识与通信方法的对应关系;以及 所述主控制板卡的应用模块管理系统接收到任一业务板卡故障的消息时,根据该业务板卡的标识在自身中删除所有该业务板卡的标识、应用模块的标识与通信方法的对应关系O16.—种应用模块间的通信系统,其特征在于,该系统包括:主控制板卡和至少一个业务板卡;其中,所述主控制板卡和/或所述业务板卡上设置有多个应用模块; 所述多个应用模块中的第一应用模块向目标板卡的应用模块管理系统发送用于查询第二应用模块通信方法的查询请求消息,所述查询请求消息中包括:所述第二应用模块的标识以及所述第二应用模块所在板卡的标识; 所述目标板卡的应用模块管理系统从应用模块初始化时注册的应用模块所在板卡的标识、应用模块的标识与通信方法的对应关系中查询第二应用模块的通信方法,根据查询结果生成查询请求响应消息,并将生成的查询请求响应消息发送至所述第一应用模块; 所述第一应用模块从接收到的查询请求响应消息中获取所述第二应用模块的通信方法,并根据获取到的所述第二应用模块的通信方法与所述第二应用模块进行通信; 其中,所述目标板卡为所述第一应用模块所在业务板卡,或者所述第一应用模块所在主控制板卡。
【文档编号】G06F9/54GK105955830SQ201610282636
【公开日】2016年9月21日
【申请日】2016年4月29日
【发明人】何保安
【申请人】瑞斯康达科技发展股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1