链氪巴士
  1. 首页
  2. 站点导航
  3. 文章
  4. 快讯
  5. 软件
  6. 书刊
  7. 关于

one-极简高性能且支持多环境的PHP框架

One是一个极简的高性能PHP框架,支持[swoole|php - fpm]环境。具有快速响应、简单易用、组件灵活耦合等特性。路由方面支持多种协议和功能,ORM支持多种数据库关系处理,缓存可灵活配置,事件能全面捕获操作,数据库连接有多种模式,SQL模板助力执行性能,模型支持分库分...

访问官网 →

【Github】项目名:one – 极简高性能且支持多环境的PHP框架

一、项目简介

One是一个极简的高性能PHP框架,支持[swoole|php – fpm]环境。它具有快速(在php – fpm下1毫秒内响应请求)、简单(让开发者专注于业务而非框架使用)、灵活(组件松耦合,使用方法一致)等特性。框架无其他依赖,所有组件(如路由和对象关系映射ORM)的代码总量不超过500k,支持原生SQL与模型关系使用、跨数据库类型的关系处理、在多种环境下使用session等,并且具有高效率、易维护的特点。

二、核心技术

  1. 路由(Router)

    支持贪婪匹配和优先级,可用于ws/tcp/http等任何协议。性能良好,添加数以万计的路由不会降低解析性能,还支持路由分组、中间件等功能。

  2. 对象关系映射(ORM)

    支持数据库如mysql、clickHouse。关系处理涵盖一对一、一对多、多对一、多态等多种关系,可跨数据库类型关联。模型中无需指定主键,框架会缓存数据库结构自动匹配主键并过滤非表结构字段。

  3. 缓存(Cache)

    能自动刷新数据,支持配置各种缓存粒度。可设置无过期时间的缓存、指定过期时间的缓存,能按标签获取和刷新缓存。

  4. 事件(Event)

    可捕获所有操作,包括使用原生SQL操作数据库的操作。

  5. 数据库连接

    在fpm下为单列,在swoole模式下所有数据库操作自动切换到连接池,支持同步、异步、阻塞、断开和重新连接。

  6. SQL模板

    自动生成模板id,有助于理解项目中的SQL类型、调用数量比例,为数据优化提供数据支持,还提供语句重用以提高SQL执行性能。

  7. 模型(Model)

    支持动态分库分表和大规模数据远程过程调用(RPC),能自动生成远程方法映射,支持链式调用、RPC中间件、认证、加密解密、缓存等。

  8. 日志(Log)

    记录完整的文件名和行号以便快速定位代码位置,还包含请求id便于查看整个请求的登录信息和服务关系。

三、项目总结

One框架在PHP开发中提供了高性能、灵活且易于使用的解决方案。无论是在不同的协议处理、数据库操作还是缓存管理等方面都有独特的设计。欢迎大家留言分享对这个框架的看法或者在使用过程中的经验等。

项目地址

GitHub链接直达