基于Backbone.js,REST技术的瘦服务端架构介绍

基于Backbone.js,REST技术的瘦服务端架构介绍

先从Backbone说起,第一次接触Backbone时,并没体会到它的好处。

当领悟他它的设计精神后,有种耳目一新的感觉,类似初次使用Jquery时的感受。

 

Backbone.js是一套Javascript MVC,与Jquery结合,用于构建Web端的应用。通常我们所说的MVC框架多数是指服务器端的,而Backbone.js是浏览器端的MVC框架。

 

REST是一种广泛应用的架构,包括资源,资源标识,对资源的操作。
通常通过HTTP URL标识资源,通过HTTP原生方法POST,PUT,GET,DELETE 对资源操作。

 

瘦服务端架构TSA(Thin Server Architecture),可以简单理解为面向API的架构。如下图所示:



从上图我们可以看到,在瘦服务端架构TSA中,服务端与客户端分开,同过API 通信。

客户端可能有手机程序,桌面程序,和浏览器。所有客户端共用一套API,站在API的角度,浏览器被是为多种客户端的一种。

应用这种架构开发网站时,所有的模板处理和页面跳转都在浏览器端通过Javascript完成,也就是纯Javascript的网站,可用于实现所说的单页面网站应用single-page application (SPA)。

 

应用这种架构的好处是:

  • 客户端共用一套API,整个架构整洁优雅。容易维护。
  • 前后的的开发工作可以分开。开发API的人员不用懂Javascript.
  • AJAX的网站可提高网站用户体验度。

不利之处是:

  • 浏览器端对Javascript 开发技术要求高。
  • AJAX的网站,不利于SEO, 虽然根据Google的建议,可以实现GooleAjax页面的收录,对于对SEO依赖很大的网站,目前不建议使用。

对于像微博,团购之类客户端多样,对SEO依赖不大,对用户体验的极致关注的应用,瘦服务端架构是最好的选择。

随着用户客户端的多元化,IphoneAndroid应用占用率的提高,对网站易用性的关注,瘦服务端架构将得到广泛应用。

 

 

猜你喜欢

转载自hongqing.iteye.com/blog/1169836
今日推荐