- 专家问诊,提供专业建议
- 急速响应,体验省心
- 根据需求灵活定制解决方案
前后端分离开发实践:淘宝篇
标签:- 2017-7-24 作者:贺颂翔
随着互联网的发展,人们不再满足过去的前后端定义的区分,为了适应最新的需求,淘宝进行了它的前后端分离开发并从中获得了许多受益。下面小编为大家收集整理了一下前后端分离开发实践:淘宝篇,希望对您在前后端分离开发中可能遇到的问题进行讲解,希望您能够喜欢,并对您的工作有所帮助。
前后端分离开发实践一、什么是前后端分离?
SPA式的前后端分离,是从物理层做区分(认为只要是客户端的就是前端,服务器端的就是后端),这种分法已经无法满足我们前后端分离的需求,我们认为从职责上划分才能满足目前我们的使用场景:
前端:负责View和Controller层。
后端:只负责Model层,业务处理/数据等。
前后端分离开发实践二、如何前后端分离?
1、产品设计确定后,前后端人员共同制定开发接口,为方便接口的制定、显示、测试,使用nodejs+mongodb开发了接口平台。
2、从前端角度考虑系统架构图如下:
前后端分离开发实践三、案例分析--淘宝
上图是我理解的淘宝基于Node的前后端分离分层,以及Node的职责范围。简单解释下:
最上端是服务端,就是我们常说的后端。后端对于我们来说,就是一个接口的集合,服务端提供各种各样的接口供我们使用。因为有Node层,也不用局限是什么形式的服务。对于后端开发来说,他们只用关心业务代码的接口实现。
服务端下面是Node应用。
Node应用中有一层Model Proxy与服务端进行通讯。这一层主要目前是抹平我们对不同接口的调用方式,封装一些view层需要的Model。
Node层还能轻松实现原来vmcommon,tms(引用淘宝内容管理系统)等需求。
Node层要使用什么框架由开发者自己决定。不过推荐使用express+xTemplate的组合,xTemplate能做到前后端公用。
怎么用Node大家自己决定,但是令人兴奋的是,我们终于可以使用Node轻松实现我们想要的输出方式:JSON/JSO**/RESTful/HTML/BigPipe/Comet/Socket/同步、异步,想怎么整就怎么整,完全根据你的场景决定。
浏览器层在我们这个架构中没有变化,也不希望因为引入Node改变你以前在浏览器中开发的认知。
引入Node,只是把本该就前端控制的部分交由前端掌控。
以上就是小编向大家介绍的关于前后端分离开发实践的全部内容了,希望大家在看完之后能够有所帮助。如果大家想要观看更多关于微信开发前后端分离的小技巧的相关内容,可以到猪八戒网服务购的行业资讯进行查看。
软件开发暂无最新文章查看全部推荐文章>
推荐人才
免责声明:
网站文章均由网站用户自行通过本网站系统平台投稿编辑整理发布,仅供学习与参考, 不代表本网站赞同其观点和对其真实性负责。如有侵犯您的版权,请联系我们,我们将及时删除。