[发明专利]一种基于AllJoyn框架处理远程调用的方法及系统在审
申请号: | 201611109592.6 | 申请日: | 2016-12-06 |
公开(公告)号: | CN106656811A | 公开(公告)日: | 2017-05-10 |
发明(设计)人: | 梁元恩 | 申请(专利权)人: | 上海斐讯数据通信技术有限公司 |
主分类号: | H04L12/741 | 分类号: | H04L12/741;H04L12/747;H04L29/08 |
代理公司: | 上海世贸专利代理有限责任公司31128 | 代理人: | 王佳妮 |
地址: | 201616 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 alljoyn 框架 处理 远程 调用 方法 系统 | ||
技术领域
本发明涉及通信技术领域,尤其涉及一种基于AllJoyn框架处理远程调用的方法及系统。
背景技术
为了充分实现物联网的愿景,设备和应用程序需要一种通用的语言进行交互。AllJoyn框架即作为通用语言,以允许来自不同公司的设备,在不同的操作系统,进行灵活通信。
AllJoyn框架是一个合作的开源软件框架,主要用于近距离无线传输,通过WiFi或蓝牙技术,定位和点对点文件传输。程序员可以很方便的编写出搜索附近设备的应用程序,并且无论对方的品牌、类别、系统都可以在不需要云环境的情况下连接。
参考图1,现有基于AllJoyn框架处理远程调用方法的流程示意图。在AllJoyn框架中服务提供端(Provider APP)和服务消费端(Consumer APP)均包括应用(APP)和AllJoyn核心库(AJ Core Library);服务提供端有服务提供端路由,服务消费端有服务消费端路由。
现有基于AllJoyn框架处理远程调用方法的流程为:
1)服务提供端和服务消费端分别与自己的路由进程建立连接;
2)服务提供端注册bus对象,绑定会话(session)端口;AllJoyn服务公告和发现,即在bus上面公告自己提供的服务;和服务消费端建立会话;
3)服务消费端获取代理bus对象,发送方法调用(method call)消息给服务消费端对应的路由进程;
4)服务消费端路由进程再将方法调用消息发送给服务提供端路由进程;
5)服务提供端路由进程将方法调用消息发送给服务提供端;
6)服务提供端调用响应的方法调用函数获取响应,从方法调用消息过来的路径将方法返回(method return)消息发送回去。发送method return消息
现有基于AllJoyn框架处理远程调用过程中,每次调用方法调用时,都需要服务提供端和服务消费端两端的路由参与,需要完成路由转发的过程;由于路由之间消息多次发送,消耗比较大,速度响应比较慢。
发明内容
针对现有在使用AllJoyn框架时,发现在大数据量调用方法调用时,响应时间和执行效率都不理想的技术问题,本发明目的在于提供一种基于AllJoyn框架处理远程调用的方法及系统,提高调用效率,优化AllJoyn框架的方法调用的执行效率和响应时间。
为实现上述目的,本发明提供了一种基于AllJoyn框架处理远程调用的方法,所述方法包括:1)在服务消费端建立路由缓存表,所述服务消费端在第一次调用方法调用时,保存所述方法调用消息的目的地址至所述路由缓存表; 2)所述服务消费端再次调用所述方法调用时,在所述路由缓存表中查询所述方法调用的目的地址,根据所述目的地址直接发送方法调用消息给所述方法调用的服务提供端。
在一实施例中,所述方法进一步包括:当所述服务消费端离开会话时,释放所述路由缓存表中已经保存的路由缓存信息所占用的内存。
在一实施例中,所述方法调用消息的目的地址在所述路由缓存表中以链表的形式存储。所述链表中每个路由缓存项包括:目的地址、接口、方法调用的调用名。通过所述接口和所述方法调用的调用名来获得所述目的地址。
为实现上述目的,本发明还提供了一种基于AllJoyn框架处理远程调用的系统,包括:服务消费端和服务提供端,所述服务消费端中建有路由缓存表;所述服务消费端,在第一次调用方法调用时,保存所述方法调用消息的目的地址至所述路由缓存表,再次调用所述方法调用时,在所述路由缓存表中查询所述方法调用的目的地址,根据所述目的地址直接发送方法调用消息给所述方法调用的服务提供端。
在一实施例中,所述服务消费端进一步在离开会话时,释放所述路由缓存表中已经保存的路由缓存信息所占用的内存。
在一实施例中,所述方法调用消息的目的地址在所述路由缓存表中以链表的形式存储。所述链表中每个路由缓存项包括:目的地址、接口、方法调用的调用名。通过所述接口和所述方法调用的调用名来获得所述目的地址。
本发明的优点在于:本发明通过空间换时间的方式,优化了AllJoyn框架的方法调用的执行效率和响应时间;通过路由缓存将会使调用速度提高,优化频繁的调用操作,减少了消息交互,提升处理速度,提高调用效率。省掉服务消费端和服务提供端两端的路由的参与和服务消费端发送给与其连接的路由、两路由之间、路由与其连接的服务提供端之间的消息交互。当这个方法调用流程被调用无数次之后,调用效率会极大提高。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海斐讯数据通信技术有限公司,未经上海斐讯数据通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611109592.6/2.html,转载请声明来源钻瓜专利网。