【Github】项目名:one – 极简高性能且支持多环境的PHP框架
一、项目简介
One是一个极简的高性能PHP框架,支持[swoole|php – fpm]环境。它具有快速(在php – fpm下1毫秒内响应请求)、简单(让开发者专注于业务而非框架使用)、灵活(组件松耦合,使用方法一致)等特性。框架无其他依赖,所有组件(如路由和对象关系映射ORM)的代码总量不超过500k,支持原生SQL与模型关系使用、跨数据库类型的关系处理、在多种环境下使用session等,并且具有高效率、易维护的特点。
二、核心技术
-
路由(Router)
支持贪婪匹配和优先级,可用于ws/tcp/http等任何协议。性能良好,添加数以万计的路由不会降低解析性能,还支持路由分组、中间件等功能。
-
对象关系映射(ORM)
支持数据库如mysql、clickHouse。关系处理涵盖一对一、一对多、多对一、多态等多种关系,可跨数据库类型关联。模型中无需指定主键,框架会缓存数据库结构自动匹配主键并过滤非表结构字段。
-
缓存(Cache)
能自动刷新数据,支持配置各种缓存粒度。可设置无过期时间的缓存、指定过期时间的缓存,能按标签获取和刷新缓存。
-
事件(Event)
可捕获所有操作,包括使用原生SQL操作数据库的操作。
-
数据库连接
在fpm下为单列,在swoole模式下所有数据库操作自动切换到连接池,支持同步、异步、阻塞、断开和重新连接。
-
SQL模板
自动生成模板id,有助于理解项目中的SQL类型、调用数量比例,为数据优化提供数据支持,还提供语句重用以提高SQL执行性能。
-
模型(Model)
支持动态分库分表和大规模数据远程过程调用(RPC),能自动生成远程方法映射,支持链式调用、RPC中间件、认证、加密解密、缓存等。
-
日志(Log)
记录完整的文件名和行号以便快速定位代码位置,还包含请求id便于查看整个请求的登录信息和服务关系。
三、项目总结
One框架在PHP开发中提供了高性能、灵活且易于使用的解决方案。无论是在不同的协议处理、数据库操作还是缓存管理等方面都有独特的设计。欢迎大家留言分享对这个框架的看法或者在使用过程中的经验等。
项目地址
数据统计
数据评估
本站链氪巴士提供的one-极简高性能且支持多环境的PHP框架都来源于网络,不保证外部链接的准确性和完整性,同时,对于该外部链接的指向,不由链氪巴士实际控制,在2024年12月6日 上午12:00收录时,该网页上的内容,都属于合规合法,后期网页的内容如出现违规,可以直接联系网站管理员进行删除,链氪巴士不承担任何责任。