资 源 简 介
PADPHP是基于php的一个开发框架,是我们项目开发过程中逐步总结出来的一套开发框架。
PADPHP是发展初期,得到了一些朋友的帮助,使得框架逐渐完善,形成现在的版本。当然,现在希望更多的朋友参与进来,一起完善这个框架。
框架提供了很少的对象和函数,但足以解决90%的需求,性能和开发敏捷性始终是我们最关注的。
框架阶段发展图:
* 1阶段 -- 一个简单的sql处理器和管理数据库连接
* 2阶段 -- 加入缓存管理,数据表模型,数据库读写分离,支持多台机器读
* 3阶段 -- 支持orm,mvc等,但思路不清楚,导致orm效率较低
* 4阶段 -- 对phpmoo全部代码进行重构,思路清楚,效率较高
* 5阶段(未来) --打算对关键部分用c扩展实现,进一步提升运行效率
PADPHP一些基本特性:
* 极高的性能,因为框架没有花哨的东西,特别注重性能,性能高于zend等框架。框架定位于应付大流量。
* Orm基于领域模型思想,也就是数据库表的单条数据对应一个对象。
* Mvc 足够灵活,提供了大多数基本的widget(也叫helper),支持用户自定义widget,支持路由解析和反解析,支持action转向,更灵活的 render。使用原生php作为模板,有更好的性能,但在模板级保护了orm数据不能修改。模板支持layout机制。
* 对缓存考虑得很多,框架认为的缓存实际上是数据库的中间层,支持单条数据缓存,查询结果缓存。缓存控制的核心思想是版本号控制。开启缓存保证90%对数据库的0查询,避免数据库瓶颈。一个application的可以分布在多台机器上,版本号缓存存储端统一使用一个就可以保证缓存的一致性,版本号缓存存储端使用memcache的话负担很小。
* Sql查询更简单,提供了一系列Sql的函数,关联对象的查询不需要用户关心 Join。
* 基于领域模型,支持数据延迟加载,不需要用户在sql中指明需要的字段,小字段和大字段会分开加载。
* Orm 的对象映射配置支持基于约定,配置工作很简单明了。支持belong_to,has_one,many_to_many,has_many,关系的映射定义基于belong_to,has_one,many_to_many和has_many只是一个简单的声明。
* Orm支持工作单元,所有