Facebook FBML模式下优化研究
来源:互联网 发布:不喜欢穿内裤体验知乎 编辑:程序博客网 时间:2024/04/30 09:56
Facebook的F8平台允许两种开发模式:FBML和IFrame。在FBML下,facebook提供了强大的fbml标签,为开发人员省去了很多开发细节,对于提高开发效率很有帮助。
但是,FBML模式下也有其不太好的地方,就是限制太多,比如对JavaS
cript的限制,只允许使用FBJS,还有就是对API调用的依赖过重,导致服务器的负担太重。
举个例子。比如社会化网络中最重要的好友关系的取得。虽然F8平台提供了相当完善和全面的API可供调用,但是对于一个用户量庞大的应用来说,单API调用给服务器带来的负担就相当的严重了。获得好友列表的API是friends.get,当然还有其他一些,通过服务器来调取API可以返回XML或者Json格式的结果。如此设想一下,一个日活跃在百万以上的应用,如此多的用户都依靠服务器来与facebook平台通讯,调用facebook的API来取得数据的话,对于服务器的效率和负担就可想而知了。
综上所述,在FBML模式下,如何将客户端(用户端)的计算机充分利用,来减轻应用服务器的负担,是优化研究的方向之一。
对于一般的FBML应用,客户端存在的可用资源基本上有两种Flash和JavaScript。facebook有第三方的FlashAPI库,将大量调用facebook平台数据的工作交给flash来做不失为一个好的优化方法。但是,flash也有其一定的局限。毕竟是客户端,像应用的加密KEY等敏感信息交由前端来处理是有一定的风险的。但是,很多的基于平台的通讯如果没有这种应用信息,又无法调用,所以很不方便。所以剩下的就只有JavaScript。
说道JavaScript又不能不提IFrame,在IFrame模式下,facebook提供了一套强大的 JavaScript Client Library其所能提供的功能和API完全相同,而且JavaScript Client Library是facebook平台提供的工具,其安全性当然没有担心的必要。这样从JavaScript Client Library下手,将逻辑放到客户端,减少知道最后杜绝应用服务器和平台的通讯,以达到减轻应用服务器压力的目的。
IFrame模式下的JavaScript Client Library在FBML模式下是无法应用的。所以需要一个比较巧妙的方法来做个变通。这里用到的工具是<fb:iframe/>标签,将像flash这样的客户端程序文件内嵌进<fb:iframe>所引用的页面中,就可以方便的将JavaScript Client Library提供的功能在FBML中使用了。
这一篇主要从方向上来研究优化的方案。优化的原理就是将应用服务器、客户端、平台的环形关系改为应用服务器与平台在两端,客户端在中间的线性关系,尽量减少应用服务器甚至是杜绝应用服务器频繁对平台进行请求。
下一篇将就IFrame下的JavaScript Client Library一些使用的功能实现做进一步的讲解。
举个例子。比如社会化网络中最重要的好友关系的取得。虽然F8平台提供了相当完善和全面的API可供调用,但是对于一个用户量庞大的应用来说,单API调用给服务器带来的负担就相当的严重了。获得好友列表的API是friends.get,当然还有其他一些,通过服务器来调取API可以返回XML或者Json格式的结果。如此设想一下,一个日活跃在百万以上的应用,如此多的用户都依靠服务器来与facebook平台通讯,调用facebook的API来取得数据的话,对于服务器的效率和负担就可想而知了。
综上所述,在FBML模式下,如何将客户端(用户端)的计算机充分利用,来减轻应用服务器的负担,是优化研究的方向之一。
对于一般的FBML应用,客户端存在的可用资源基本上有两种Flash和JavaScript。facebook有第三方的FlashAPI库,将大量调用facebook平台数据的工作交给flash来做不失为一个好的优化方法。但是,flash也有其一定的局限。毕竟是客户端,像应用的加密KEY等敏感信息交由前端来处理是有一定的风险的。但是,很多的基于平台的通讯如果没有这种应用信息,又无法调用,所以很不方便。所以剩下的就只有JavaScript。
说道JavaScript又不能不提IFrame,在IFrame模式下,facebook提供了一套强大的 JavaScript Client Library其所能提供的功能和API完全相同,而且JavaScript Client Library是facebook平台提供的工具,其安全性当然没有担心的必要。这样从JavaScript Client Library下手,将逻辑放到客户端,减少知道最后杜绝应用服务器和平台的通讯,以达到减轻应用服务器压力的目的。
IFrame模式下的JavaScript Client Library在FBML模式下是无法应用的。所以需要一个比较巧妙的方法来做个变通。这里用到的工具是<fb:iframe/>标签,将像flash这样的客户端程序文件内嵌进<fb:iframe>所引用的页面中,就可以方便的将JavaScript Client Library提供的功能在FBML中使用了。
这一篇主要从方向上来研究优化的方案。优化的原理就是将应用服务器、客户端、平台的环形关系改为应用服务器与平台在两端,客户端在中间的线性关系,尽量减少应用服务器甚至是杜绝应用服务器频繁对平台进行请求。
下一篇将就IFrame下的JavaScript Client Library一些使用的功能实现做进一步的讲解。
- Facebook FBML模式下优化研究
- facebook中使用 fbml
- FBML与IFRAME的区别,Facebook
- 使用java开发facebook网站应用程序 , facebook,facebookrestclient,页面,fbml,应用程序,调用,用户,密钥,应用,登陆
- Ours Facebook研究报告---第三章.FaceBook成功模式分析
- Facebook Advertising Research (Facebook广告研究) [incomplete]
- Android性能优化案例研究(下)
- Android性能优化案例研究(下)
- Android性能优化案例研究(下)
- Android性能优化案例研究(下)
- Facebook优化分享后记
- Facebook优化分享后记
- Facebook优化分享后记
- Facebook优化分享后记
- Ours Facebook研究报告---开篇
- facebook post注册。封号。研究
- FBML Essentials [ILLUSTRATED]
- 关于win32 下DEBUG模式的研究
- Python装饰器
- 如何把安装过程中的数据传到反安装过程中
- java删除文件夹
- 从前
- SRM 452 DIV2 Problems 1000
- Facebook FBML模式下优化研究
- 对于你
- 二进制补码运算公式
- APPLET 和 WEB 事件的交互. 文章出处:DIY部落(http://www.diybl.com/course/1_web/webjs/200877/131922.html)
- 第一篇 csdn 的文章
- ASP.NET中用户输入文本的HTML解析办法
- js中innerHTML与innerTex、outerHTMLt的用法与区别
- eclipse Job
- 与Steve Vai斗琴