所謂延遲補償,即在前端執行某項數據變動業務以後,不等後端返回執行結果,前端先行模擬執行,以儘快呈現結果給用戶。若是服務端返回執行成功,則前端不須要進行任何變動渲染。若是服務端返回執行失敗,則前端根據後端返回信息進行修正渲染。html
延遲補償得以實現的基礎,是先後端數據協做機制。具體來講,本來整個數據變動流程是:前端method調用->後端method執行->後端執行模型操做->後端pub刷新->前端sub刷新->前端reactive渲染刷新,可是,meteor應用能夠對後端method提供前端版本,並在前端版本的method中進行數據操做以進行延遲補償。一般,這些操做與後端操做是一致的。前端在進行method調用後,不等後端反饋調用結果,馬上對前端數據副本進行模擬數據操做,以數據儘快將變化反應到前端渲染上。而當後端反饋method調用結果以後,若是數據變動與前端模擬一致,則前端不須要再進行任何渲染刷新。若是返回結果與前端模擬不一樣,則前端再根據正確的數據進行一次修正渲染。前端