手机端和pc端怎么实现实时同步?类似于微信支付网页的订单 举报 理由 举报 取消 如微信支付完pc端网页的订单后,网页可以实时的改变订单状态,请问是用什么实现的呢? 2017年12月30日 2 条回复 1442 次浏览 Java,Web,支付
回复 ( 2 )
网页上实时同步到数据,大概也是轮询或者websocket之类。
常用的同步方式有两种:拉取、推送
拉取:服务器提供获取数据API,客户端每隔一段时间就调用一次API,取得数据。
推送:服务器监听数据状态,一旦相关数据状态发生改变,就向相应的客户端推送数据。
所谓同步,就是客户端和服务器同步。(p to p 应用例外,以为它根本没有中心服务器。(´・_・`))
---
并没有看过微信支付源码,但是我猜测如下:
微信提交支付数据:post
web 定时循环:get
---
其实web端很多时候是拉取的方式进行数据同步的,但是App就不一样啦。
App 定时循环拉取数据,是非常不可取的。定时循环浪费资源(费电)不说,一旦应用程序进入休眠状态,循环必然被终止。所以,App 同步数据常用 推送。
iOS App 推送由 Apple 公司服务器统一调度,延时、丢包问题统统不用考虑,很稳定。