37、客户端RPC架构深入剖析

客户端RPC架构深入剖析

1. 模拟服务器推送:阻塞服务器线程

在浏览器环境中,由于安全和缺乏标准等原因,真正的服务器推送功能是不可用的,即服务器无法在浏览器未请求的情况下主动向其发送数据。为了弥补这一功能缺失,有多种模拟服务器推送的方案,其中一种是阻塞服务器线程。

1.1 原理概述

RPC(远程过程调用)通常是客户端浏览器向服务器请求数据,服务器处理请求并返回结果。在阻塞服务器线程的方式中,会对这一过程做一个小改动:服务器会暂停处理请求,直到有数据可供处理。这就好比一家客户服务不佳的公司,你会一直处于等待状态,直到有人来与你沟通。

1.2 轮询与阻塞服务器线程的对比

对比项 轮询 阻塞服务器线程
主导方 浏览器每20秒主动调用服务器 服务器主导,将请求搁置直到需要处理
连接状态 非持续连接 几乎持续连接

1.3 示例应用:基于Web的聊天客户端

以基于Web的聊天客户端为例,下面分别介绍客户端和服务器端的实现。

1.3.1 客户端实现

在客户端实现阻塞服务器线程时,操作较为简单。每次收到服务器的响应后,需要发起一个新的

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值