[发明专利]一种进程间通讯的方法、及装置有效
申请号: | 201310690566.7 | 申请日: | 2013-12-16 |
公开(公告)号: | CN104133728A | 公开(公告)日: | 2014-11-05 |
发明(设计)人: | 徐翠屏 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 杨伦 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 进程 通讯 方法 装置 | ||
技术领域
本发明涉及计算机技术领域,特别涉及一种进程间通讯的方法、及装置。
背景技术
网络服务开发过程中经常会碰到进程间通讯问题。进程间通讯又分为机器内的进程通讯和跨机器的进程通讯。对于机器内的进程通讯一般采用:管道、共享内存、消息队列、Unix Socket(一种操作系统的套接字)以及IPC(Inter-Process Communication,进程间通信)等技术。对于跨机器的进程通讯一般采用TCP(Transmission Control Protocol,传输控制协议)/UDP(User Datagram Protocol,用户数据包协议)Socket(套接字)方式。
网络服务开发如果同时需要在机器内和跨机器作进程间通讯,就需要针对具体场景选择合适的IPC机制,并且对于机器内和跨机器进程间通讯分别封装和开发提供给上层应用使用。开发人员需要很了解机器内和跨机器进程间通讯机制和细节。这样应用开发效率比较低,也容易出错。
发明内容
本发明实施例提供了一种进程间通讯的方法、及装置,用于提高开发效率,减少出错。
一种进程间通讯的方法,包括:
根据待发送数据的目标节点寻找并确定对应的目标通道;将所述待发送数据写入确定的所述目标通道对应的共享存储空间内;
若所述目标节点为本地节点,则确定的所述目标通道为本地通道,写入所述共享空间的待发送数据由所述目标节点的本地通道接收;
若所述目标节点为远端节点,则确定的所述目标通道为远端代理通道,采用远端代理通道从所述共享空间接收所述待发送数据,并通过本地代理节点向对端代理节点发送所述待发送数据。
一种装置,用于进程间通讯,包括:
通道确定单元,用于根据待发送数据的目标节点寻找并确定对应的目标通道;
数据写入单元,用于将所述待发送数据写入所述通道确定单元确定的所述目标通道对应的共享存储空间内;
本地通道单元,用于若所述目标节点为本地节点,则确定的所述目标通道为本地通道,写入所述共享空间的待发送数据由所述目标节点的本地通道接收;
发送单元,用于若所述目标节点为远端节点,则确定的所述目标通道为远端代理通道,采用远端代理通道从所述共享空间接收所述待发送数据,并通过本地代理节点向对端代理节点发送所述待发送数据。
从以上技术方案可以看出,本发明实施例具有以下优点:采用通道管理的方案,通过代理节点实现跨机通讯,不需要关心通讯的进程是运行于同一主机还是不同主机,因此开发人员不需要了解机器内核跨机器间通信的机制和细节,因此可以提高开发效率,并减少出错。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例方法流程示意图;
图2为本发明实施例系统架构示意图;
图3为本发明实施例方法流程示意图;
图4为本发明实施例方法流程示意图;
图5为本发明实施例方法流程示意图;
图6为本发明实施例方法流程示意图;
图7为本发明实施例方法流程示意图;
图8为本发明实施例装置结构示意图;
图9为本发明实施例装置结构示意图;
图10为本发明实施例装置结构示意图;
图11为本发明实施例装置结构示意图;
图12为本发明实施例装置结构示意图;
图13为本发明实施例装置结构示意图;
图14为本发明实施例装置结构示意图;
图15为本发明实施例终端结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例提供了一种进程间通讯的方法,如图1所示,包括:
101:根据待发送数据的目标节点寻找并确定对应的目标通道;将上述待发送数据写入确定的上述目标通道对应的共享存储空间内;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310690566.7/2.html,转载请声明来源钻瓜专利网。