30、即时通讯应用的RPC事件实现

基于RPC的即时通讯事件实现

即时通讯应用的RPC事件实现

1. 即时通讯应用基础

在即时通讯应用中,当用户输入消息并按下回车键后,视图会调用 MessengerServiceClientImpl onSendMessage 方法。由于 Contact Message 对象实现了 IsSerializable 接口,它们可以直接通过 sendMessage 调用传递给服务器。以下是一个简单的回调示例:

public void onSuccess(Object obj){
}

这个回调用于报告错误,并且作为向服务器发送消息调用的回调。

2. 添加RPC事件

2.1 即时通讯的协议需求

即时通讯需要基于事件的协议。对于桌面应用来说,基于 TCP/IP 套接字实现可能比较容易,但 Ajax 应用依赖于 HTTP,而 HTTP 不支持事件广播。HTTP 仅支持对客户端发起的请求发送响应,服务器在没有请求的情况下无法发送数据。

2.2 不同应用的协议差异

并非所有的 RPC 实现都需要 RPC 事件,只有特定的应用才需要。以电子邮件客户端为例,它在桌面和网页上都很常见,通常不使用基于事件的协议。电子邮件客户端通过定期检查从服务器批量检索电子邮件数据,并将邮件显示给用户。用户习惯了批量检索邮件,甚至在应用中会有绕过等待并发起检查的按钮。

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值