Home > Article > Backend Development > 如何把B/S硬掰成C/S?需要哪些技术?是否有现成的框架?
这么做的目的主要有以下两个:
1.节省流量。
让浏览器和服务器之间传输尽可能少的数据。
2.节省服务器资源。
能在浏览器进行的运算尽量放到浏览器。
听说国内的建站成本和国外相比高很多。我大致看了一下,和国外相比好像确实高很多,而且最让人吃惊的是收费空间居然有限流量的。我在用国外空间的时候只发现免费的空间是有限流量的,收费的从来没见过限流量的。
我感觉应该解决的技术问题有以下几个:
1.服务器推送
HTML5可以完美支持服务器推送,所以我的想法是勾引用户安装支持HTML5的浏览器。这篇文章介绍了很多实现服务器推送的方法:
http://www.cnblogs.com/moxiaoyu/archive/2012/03/06/comet_java_ajax.html
2.组播
这个绝对是神器,对带宽的节省可以做到极致。而且好像确实是可以实现的,百度搜“ 组播 WEB”可以搜到一些。但是不知道是不是需要安装插件,如果需要安装插件的话,那效果就大打折扣了。
3.接收确认
好像可以通过连续的序列来确认是否有未接收到的消息。类似TCP传输协议。这样可以避免通过向服务器发送消息来确认消息已经接收。不知道HTML5提供的服务器推送是否可以提供不需要消耗服务器资源的接收确认功能。
这只是我想到的问题,希望你们能帮我想出更多的问题。
最后是框架。如此奇葩的工程必定会耗费大量的人力,但是如果有框架那就轻松多了。
在富客户端的环境中,B/S 和 C/S 的唯一区别在于前者没有用户界面的开销