所谓延迟补偿,即在前端执行某项数据变动业务以后,不等后端返回执行结果,前端先行模拟执行,以尽快呈现结果给用户。若是服务端返回执行成功,则前端不须要进行任何变动渲染。若是服务端返回执行失败,则前端根据后端返回信息进行修正渲染。html
延迟补偿得以实现的基础,是先后端数据协做机制。具体来讲,本来整个数据变动流程是:前端method调用->后端method执行->后端执行模型操做->后端pub刷新->前端sub刷新->前端reactive渲染刷新,可是,meteor应用能够对后端method提供前端版本,并在前端版本的method中进行数据操做以进行延迟补偿。一般,这些操做与后端操做是一致的。前端在进行method调用后,不等后端反馈调用结果,马上对前端数据副本进行模拟数据操做,以数据尽快将变化反应到前端渲染上。而当后端反馈method调用结果以后,若是数据变动与前端模拟一致,则前端不须要再进行任何渲染刷新。若是返回结果与前端模拟不一样,则前端再根据正确的数据进行一次修正渲染。前端