Buddy Intelligent Framework
Buddy框架是智能应用开发框架,主要是用于开发服务端程序,提供了常用的PHP框架开发特性,引入了智能WEB算法的实现方案,制定了一套规则,帮您能够更快的完成开发任务。
作者从项目的整个生命周期考虑,考虑到了前期的数据积累,数据统计,及后续的数据挖掘和涉及到的后端的推荐功能的实现,从一项目的开始就考虑这些,就实现了这些功能。
为什么会叫Buddy?
Buddy项目源于我是买家项目,这个项目是一个买家分享社区,xiniyang为之努力了3年,在一次一次的迭代过程中,从最早的使用thinkphp框架,到接下来的自己的一步一步的积累,通过近2年的积累才有Buddy的现在的发布。在开发我是买家的过程中,用了很多的新的技术和nosql,也将智能web算法用到了项目中,在每天下班回家后,都努力的往智能方面发展,豆瓣的成功,主要的技术壁垒在于后端的强大的算法的支持,所以Buddy也将大部分的涉及到的智能算法也打算进行实现,并将它发布出来,一个人的开发时间的付出,在一个项目上能够得到实现是很兴奋的事情,但是仅仅是在一个项目中实现,往往不能将它的价值最大化,最终还是决定将这个框架开源出来,希望大家也能够多多提提意见。
Buddy就是你身边的朋友,在你繁重的开发过程中,能够让你体会到顺手的冲动。Buddy就像一个靠谱的朋友在身边一样,遇到问题总是能够一起解决,说到这里又想起了光哥,在百度的这些日子里面,一直有他的帮助,在这里再次谢过!
主要特性有:
常规功能:
精简的核心,每次执行加载的文件少,执行的步骤少实现高效
定义执行模式,通过配置执行模式来决定系统执行过程中的文件加载,实现高效
MVC支持,通过 APP,ACTION 类来实现基本的MVC的模式支持
URL REWRITE, 通过配置URL的格式,可自定义URL,实现URL的优化
统一错误码定义,通过定义系统及逻辑的错误码来制定统一的执行反馈,便于调试
多语言支持,通过内置的判断浏览器语言来实现多语言的支持
Trace支持,通过生成唯一的cookie串来对用户的行为作出记录,用于后续的数据分析
统一接口,对于所有服务器端的操作,通过定义的接口访问,保持返回信息的一致性
MYSQL数据访问类,使用MYSQL和MYSQLI 2种扩展访问数据库的机制,提升了MYSQL的操作性能
CACHE操作类,封装了MEMCACHE/MEMCACHED的缓存访问操作类
搜索CORESEEK访问类,封装了CORESEEK的搜索访问类,实现实时的数据搜索
RSS输出类,提供了RSS2.0的数据输出支持
模板解析类,使用了THINKPHP的模板解析类,很好很强大
时间功能类,封装了对涉及到的时间相关功能进行操作方法的类
统一验证类,对于客户端发过来的数据在进入接口处理前进行验证
XML解析类,封装了一些解析XML的方法,使得可以方便的获取其他网站的XML数据
LOG类,提供了强大的LOG记录,方便对LOG进行解析
字符串处理类,提供了常用的对字符串处理的方法
分页类,提供了简单的分页功能类
COOKIE操作类,对于COOKIE操作的数据进行加密处理
验证码类,提供强大的验证码生成
购物车类,提供常见的购物车相关的操作类
云功能特性:
图片又拍云存储,使用了又拍的图片云存储,使得自己可以不用考虑图片的CDN及存储问题,实现图片的高速加载 详细请访问
提供了NOSQL的支持,提供了MONGODB,REDIS的访问类,进行NOSQL的部署
第三方API的访问功能,提供了新浪微博,淘宝,人人,腾讯等各大API的数据获取方法
LBS封装,对于用户当前的地理位置信息进行封装,方便用户能够获取用户的当前位置信息
其他特性:
队列操作类,封装了队列数据操作类,实现操作的异步执行
访问限制类,封装了用户的访问行为,防止用户采集及非法操作
危险词过滤类,实现对于输入的危险关键字的过滤功能
邮件发送类,提供了SMTP的邮件发送的支持
智能特性:
分词操作类,提供了SCWS/SAE分词接口的多种方式提供分词功能
推荐引擎类,提供了对用户的数据进行计算并推荐用户喜好的内容的功能。
Buddy智能框架,您身边的好朋友,帮你在最短的时间内,做出你想要的东西来!
Buddy智能框架,作为一个开源项目,项目托管在Github,之前是放在code.google.com上的,可是感觉哪里的范围没github好就进行了迁移了。
Buddy智能框架,项目clone地址:
https://github.com/xinqiyang/buddy
项目的各具体的功能实现,请参看我是买家项目。
样例和详细的文章后续补上。