RestAPI的进化之路,后端MVVM模式或许来临,通过观察者模式,后端收集前端的GET类请求,主动推送数据变更到前端
最近几年,前端MVVM模式彻底变革了前端的开发模式,那这股火焰会烧到后端嘛?
我想答案应该是肯定的,后端通过改进RestAPI,所有调用GET类型或者其他方式获取数据的HTTP请求(或者其他协议),后端都应该收集此请求的调用者的请求IP:Port等信息,这个后端可以通过观察者模式实现,而前端的其他UPDATE/PUT/PATCH/DELETE类型请求(可能是其他IP调用者),经过后端时,触发后端观察者模式的依赖更新。
因为先前后端已经收集了不少前端的GET类型请求,此时通过依赖更新,将修改变更实时推送至依赖的前端,前端的数据也实时更新(当然是不是实时推送后端可以设置几种模式哈,每种数据都可以设置,1.实时、2.n+ms推送、3.定点推送,4.灰度推送,5.手动推送(可能需要一个推送运维平台,点击一下按钮推送))。
想一想,如果这个功能实现了,那是什么效果呢?那彻底解放了前端很多工作,我们不用定时的去刷新HTTP请求,获取数据,因为数据变更了,后端会将数据推送给前端,我们只需要通过GET请求,设置好这个值,然后,这个值会因为后端的MVVM模式,在受到变化时,自动更新,推送到前端。
而前端本来也是前端的MVVM模式,数据也自动就变了,其他的我们什么都不用管了。那这个要节省多少人力成本嘛?太多了,后端只需要设置一套这种MVVM模式的架构,然后把数据库配置上,后端的架构自动为每张表生产这种MVVM的API,其他的什么都不用管了,也就是,只要有这个架构,那在不需要其他业务的情况下,我们不需要后端了。
这种模式,再加上微服务,在加上类似Cassandra之类的数据库,或许是未来的一种趋势吧。数据库是自动横向扩容的,微服务架构是弹性扩容的,而来自网关的API,是主动推送变更的,其他的后端似乎不需要忙什么了,架构已经解决了这一切。
而这一切,将迎来前端的超级爆发,前端将承载大量的复杂业务,更高的性能,更加跨端的超融合。也许这就是架构的演进吧。