[发明专利]实现多应用间通信的方法及系统在审
申请号: | 201110438890.0 | 申请日: | 2011-12-23 |
公开(公告)号: | CN103176853A | 公开(公告)日: | 2013-06-26 |
发明(设计)人: | 游晶;彭勇;黄奎;谢昕虬 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 广州华进联合专利商标代理有限公司 44224 | 代理人: | 何平;曾旻辉 |
地址: | 518044 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 实现 应用 通信 方法 系统 | ||
【技术领域】
本发明涉及计算机技术领域,特别涉及一种实现多应用间通信的方法及系统。
【背景技术】
简单的应用程序通常只需直观的完成某个特定功能,随着程序复杂度的增长,可以将程序划分为实现各种功能的程序以便合作开发,且增强复用性。程序运行时,所有程序在同一个进程空间中,各程序之间的通信是通过直接调用其它程序中的函数实现的。
从编程的难易程度和性能上,这样具有一定的优势,然而随着时间的增长,程序间的调用关系会变得越来越复杂,修改的风险也会加大,排错和调试的难度也会加大。将所有程序运行在单个进程里,会限制程序的扩展性、灵活性和安全性,只要任何一个程序崩溃都会导致整个进程崩溃。尤其是开放平台,因其要求承载大量第三方应用和服务,且第三方应用间的调用关系更加复杂,因此需保证应用间通信的灵活性和安全性。
【发明内容】
基于此,有必要提供一种能提高多应用通信灵活性和安全性的实现多应用间通信的方法
一种实现多应用间通信的方法,包括以下步骤:
微内核获取第一应用向第二应用发起的请求包,其中,所述第一应用和第二应用预先注册到所述微内核;
所述微内核将所述请求包转发给所述第二应用;
所述微内核接收所述第二应用返回的响应包,并将所述响应包转发给所述第一应用。
优选的,还包括步骤:预先设定所述第一应用的访问权限;
所述微内核获取第一应用向第二应用发起的请求包的步骤之后,还包括步骤:
所述微内核检测所述第一应用的访问权限,当所述第一应用存在所述访问权限时,所述微内核将所述请求包转发给所述第二应用。
优选的,所述响应包中包括调用结果;
在所述第一应用向第二应用发起请求包的步骤,同时还包括步骤:所述第一应用根据所述请求包生成会话标识,将所述会话标识分别存入到所述请求包和本地;
在所述第二应用返回响应包的步骤,同时还包括步骤:将所述请求包中的会话标识存入所述响应包中;
在所述微内核接收所述第二应用返回的响应包,并将所述响应包转发给所述第一应用的步骤之后,还包括步骤:所述第一应用将所述返回的响应包中的会话标识与所述本地存储的会话标识进行匹配,若匹配成功,则激活同步调用线程读取响应包并获取调用结果或执行异步调用直接获取调用结果。
优选的,所述微内核获取所述第一应用向所述第二应用发起的请求包的步骤具体包括:
所述第一应用调用远程过程调用应用,并将向所述第二应用发起的请求打包成请求包;
所述微内核获取所述远程过程调用应用传递的所述请求包。
优选的,还包括步骤:
在所述微内核中注册事件信息与应用之间的对应关系;
获取所述第一应用触发的事件信息,并将所述事件信息传递给所述微内核;
所述微内核根据所述事件信息从所述事件信息与应用的对应关系中查找到相应的应用,将所述事件信息通知到相应的应用。
此外,还有必要提供一种能提高多应用通信灵活性和安全性的实现多应用间通信的系统。
一种实现多应用间通信的系统,包括微内核,所述微内核包括:
第一获取模块,用于获取所述第一应用向所述第二应用发起的请求包,其中,所述第一应用和第二应用预先注册到所述微内核;
转发模块,用于将所述请求包转发给所述第二应用;
所述第一获取模块还用于接收所述第二应用返回的响应包;
所述转发模块还用于将所述响应包转发给所述第一应用。
优选的,所述微内核还包括:
预设模块,用于当将所述第一应用注册到微内核后,设定所述第一应用的访问权限;
检测模块,用于所述第一应用的访问权限;
所述转发模块还用于当所述第一应用存在所述访问权限时,将所述请求包转发给所述第二应用。
优选的,所述响应包中包括调用结果;所述第一应用包括:
生成模块,用于根据所述请求包生成会话标识;
存储模块,用于将所述会话标识分别存入到所述请求包和本地;
匹配模块,用于接收返回的包含所述请求包中会话标识的响应包,将所述返回的响应包中的会话标识与所述本地存储的会话标识进行匹配;
第二获取模块,用于当匹配成功,激活同步调用线程读取响应包并获取调用结果或执行异步调用直接获取调用结果;
所述第二应用将所述请求包中的会话标识存入所述响应包中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110438890.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:薄膜晶体管、阵列基板和显示装置
- 下一篇:一种自动检测机