Meteor:延迟补偿
2015-09-03 23:14
190 查看
所谓延迟补偿,即在前端执行某项数据变更业务之后,不等后端返回执行结果,前端先行模拟执行,以尽快呈现结果给用户。如果服务端返回执行成功,则前端不需要进行任何变更渲染。如果服务端返回执行失败,则前端根据后端返回信息进行修正渲染。
延迟补偿得以实现的基础,是前后端数据协作机制。具体来说,原本整个数据变更流程是:前端method调用->后端method执行->后端执行模型操作->后端pub刷新->前端sub刷新->前端reactive渲染刷新,但是,meteor应用可以对后端method提供前端版本,并在前端版本的method中进行数据操作以进行延迟补偿。通常,这些操作与后端操作是一致的。前端在进行method调用后,不等后端反馈调用结果,立刻对前端数据副本进行模拟数据操作,以数据尽快将变化反应到前端渲染上。而当后端反馈method调用结果之后,如果数据变更与前端模拟一致,则前端不需要再进行任何渲染刷新。如果返回结果与前端模拟不同,则前端再根据正确的数据进行一次修正渲染。
延迟补偿得以实现的基础,是前后端数据协作机制。具体来说,原本整个数据变更流程是:前端method调用->后端method执行->后端执行模型操作->后端pub刷新->前端sub刷新->前端reactive渲染刷新,但是,meteor应用可以对后端method提供前端版本,并在前端版本的method中进行数据操作以进行延迟补偿。通常,这些操作与后端操作是一致的。前端在进行method调用后,不等后端反馈调用结果,立刻对前端数据副本进行模拟数据操作,以数据尽快将变化反应到前端渲染上。而当后端反馈method调用结果之后,如果数据变更与前端模拟一致,则前端不需要再进行任何渲染刷新。如果返回结果与前端模拟不同,则前端再根据正确的数据进行一次修正渲染。
相关文章推荐
- 怎么改变ADS1.2的字体大小
- 练练手--求串联电阻的阻值
- nodejs 浏览器弹窗下载图片 data:image/jpeg;base64示例
- Java泛型
- eclipse3.2安装 + 汉化 + 配置SWT Designer6.2.0
- 欧几里德算法
- redis运维常用命令
- 关于testlink重启后出现“1045 - Access denied for user 'my_db '@'localhost' (using password: YES)”的问题解决办法
- 【推荐】Navicat for MySQL:数据库管理工具
- 宁波Uber优步司机奖励政策(8月24日到8月30日)
- Combination Sum II
- 精品软件 推荐 电子书转换器 EPUB to PDF Converter
- Binary Search Tree Iterator —— Leetcode
- 精品软件 推荐 电子书转换器 EPUB to PDF Converter
- HDU5000-Clone-AsiaRegionalAnshanOnline2014(01背包问题)
- 2015.09.03 Java设计模式
- openwrt编译error: ext4_allocate_best_fit_partial: failed to allocate 13 blocks, out of space?
- HDU1027(Ignatius and the Princess II)
- 天津市人民优步Uber司机奖励政策(8.31-9.6)
- JavaEE学习之类加载器