[发明专利]基于ACE的通信框架和方法、及功能模块间的通信方法有效
申请号: | 201210529682.6 | 申请日: | 2012-12-10 |
公开(公告)号: | CN103034545A | 公开(公告)日: | 2013-04-10 |
发明(设计)人: | 罗辉 | 申请(专利权)人: | 上海斐讯数据通信技术有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/44 |
代理公司: | 深圳市瑞方达知识产权事务所(普通合伙) 44314 | 代理人: | 纪媛媛;张约宗 |
地址: | 201616 上海市松*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 ace 通信 框架 方法 功能模块 | ||
技术领域
本发明涉及数据通信,尤其涉及一种基于ACE的通信方法和框架、及功能模块间的通信方法。
背景技术
在模块化的程序设计方法中,通常将一个较大的程序按功能分成若干个功能模块,每个功能模块是一个代码集,通过编写和调试可将多个功能模块组合构成程序段,即函数。在同一个程序内,每个功能模块不可能孤立运行,必须相互配合,因此功能模块间需要进行数据交互和相互调用。然而,不同的功能模块可能由不同的人员编写,人员间的程序编写水平和风格不同,易于造成功能模块间的通信故障率增加,从而导致程序无法执行其功能,以及还将导致调试、测试、维护的难度增大。当程序内的功能模块越多时,这些问题将更为严重。
进一步地,当需要进行数据交互的功能模块位于不同的程序内时,在实现应用程序之间数据交互的程序间通信过程中,如果应用程序装载在同一台终端中,它们之间只需一定的通道就能实现数据交互;然而,如果应用程序装载在不同的终端中,则要复杂得多。首先,程序之间要通过网络之间的协议才能实现;其次,不同的终端中可能装载不同的操作系统,例如,有的终端采用Windows操作系统,有的则采用UNIX/Linux操作系统,由此,在实施上述应用程序的功能过程中,其进程间的通信需要跨操作系统才能实现。
目前,业界通常采用JAVA和ACE(ADAPTIVE Communication Environment)两种方法来实现跨操作系统的进程间通信。其中,JAVA由于在处理二进制和大容量方面存在效率问题,因此在网管和应用服务器领域内,如果需要跨操作系统,通常采用ACE。虽然采用ACE可以解决跨操作系统通信的问题,但是因各进程可能位于不同的终端或操作系统中,其代码的撰写风格和工具不统一,使得进程间的通信容易出现故障,而出现故障后调试和解决的难度较大。
另外,还有一种方法是采用中间服务器,例如MTC服务器(Machine TypeCommunications Server),通过该中间服务器来转发需要交互的数据,而程序之间彼此并不知晓该数据是如何传送的,彼此之间也不直接传送数据。这种方法虽然可以避开操作系统,但是其对中间服务器的存储空间和处理速度要求较高,且处理方法更为复杂。
发明内容
本发明要解决的技术问题在于针对现有技术中功能模块间通信容易出现故障的缺陷,提供一种基于ACE的通信方法和框架、以及功能模块间的通信方法。
本发明解决其技术问题所采用的技术方案是:提供了一种基于ACE的通信框架,由底层向上依次包括:操作系统层、ACE层、平台层、以及应用层;其中,
所述应用层包括功能模块的集合;
所述平台层包括守护进程和子进程;其中,所述守护进程用于解析所述功能模块所在进程的配置文件;所述子进程用于基于所述功能模块所在进程的配置文件进行配置以启动所述子进程,并解析所述功能模块自身的配置文件,以基于所述功能模块自身的配置文件来激活所述功能模块,从而通过所述平台层来统一管理所述功能模块间的通信。
在依据本发明实施例的基于ACE的通信框架中,
所述功能模块所在进程的配置文件包括IP和端口;
所述子进程在进行所述配置时采用所述IP和所述端口作为通信端口。
在依据本发明实施例的基于ACE的通信框架中,
所述功能模块自身的配置文件包括所述功能模块的ID和对应的动态库;
所述子进程用于将所述动态库加载至它的进程空间来激活所述功能模块。
本发明还提供了一种基于ACE的通信方法,包括步骤:
S110、守护进程解析功能模块所在进程的配置文件;
S120、子进程基于所述功能模块所在进程的配置文件进行配置以启动所述子进程;
S130、子进程解析所述功能模块自身的配置文件,以基于所述功能模块自身的配置文件来激活所述功能模块,从而通过所述平台层来统一管理所述功能模块间的通信。
在依据本发明实施例的基于ACE的通信方法中,
当所述功能模块所在进程的配置文件包括IP和端口时,所述步骤S120中,所述子进程在进行所述配置时采用所述IP和所述端口作为通信端口。
在依据本发明实施例的基于ACE的通信方法中,当所述功能模块自身的配置文件包括所述功能模块的ID和对应的动态库时,所述步骤S130中,所述子进程将所述动态库加载至它的进程空间来激活所述功能模块。
本发明还提供了一种功能模块间的通信方法,包括步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海斐讯数据通信技术有限公司,未经上海斐讯数据通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210529682.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:汽车报警喇叭
- 下一篇:基于射频识别技术的动态显示系统的显示控制器