热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

QueryPHPV1alpha.3完善权限,支持Swoole4和RoadRunner

百度智能云云生态狂欢季热门云产品1折起经过3个月的开发,QueryPHPv1.0.0-alpha.3版本可以发布了,这也是alpha最后一个版本。

百度智能云 云生态狂欢季 热门云产品1折起>>>  hot3.png

经过 3 个月的开发,QueryPHP v1.0.0-alpha.3 版本可以发布了,这也是 alpha 最后一个版本。

关于 QueryPHP

QueryPHP 是一款现代化的高性能 PHP 7 常驻框架,以工程师用户体验为历史使命,让每一个 PHP 应用都有一个好框架。

百分之百单元测试覆盖直面 Bug 一剑封喉,基于 Zephir 实现框架常驻,依托 Swoole 生态实现业务常驻,此刻未来逐步渐进。 我们的愿景是 USE LEEVEL WITH SWOOLE DO BETTER, 让您的业务撑起更多的用户服务。

特性

框架理念 (值得托付的使命感,让每一个 PHP 应用都有一个好框架。)

组件系统 (框架底层由独立的高内聚低耦合组件构成,可以轻松无侵入接入现有系统。)

路由系统 (框架提供 MVC 自动路由并能够智能解析 Restful 请求和基于 OpenApi 3.0 规范的 swagger-php 注解路由,文档路由一步搞定。)

整体解决方案 (框架提供了从缓存、Session、IOC 容器、模板引擎、Ddd ORM 等大量开箱即用的功能,提供了基于 Symfony Console 命令行工具集。)

框架常驻 (Leevel 可选扩展接管底层核心)

业务常驻 (基于 Swoole 4 开发,我们的愿景是少量代码或者无修改,让你的业务撑起更多的用户服务。)

百分之百单元测试覆盖(单元测试一直是国产 PHP 开源项目的痛)

拜师国外现代化框架 (从 Laravel、Symfony 吸收大量特性,也包含其它的框架.)

PHP 7 严格模式 (每一个 PHP 脚本都是 strict_types = 1 )

PHP 7 类型提示 (尽可能为每一个方法提供确定的参数类型和返回值类型)

依赖注入 (完整实现,关键 mvc、命令行脚本、事件监听器全部接入 IOC )

领域驱动设计 (在妖怪的 QeePHP 基础上保持创新,提供了 UnitOfWork[事务工作单元]、Repository[仓储]、Specification[查询规约],Entity getter setter[领域实体或叫模型] )

more...

更新日志

距离上一个版本有 3 个月了,这个我们的 hunzhiwange/framework 已有 183 条跟新日志,hunzhiwange/queryphp 已有 82 条日志,这个版本主要完善 IViewUI 开发的通用权限系统,支持常用常驻方案 Swoole 4 和 RoadRunner,以及文档如何写的问题。

https://github.com/hunzhiwange/framework/releases https://github.com/hunzhiwange/queryphp/releases

完善权限系统

这个更新主要是完善上一个权限系统,基于资源的权限系统,整个权限系统已经全部接入完毕。

可以基于这个开发后台产品,例如我们用于生产的小工具:

框架底层的核心 API 已基本稳定,一直在做一些代码层面的优化。

初步支持 Swoole 4 和 RoadRunner 常驻方案

除了对用户体验的特别注重之外,QueryPHP 自身的性能考虑尽可能的提升。目前基本加入 Swoole 4,还需要完善,计划在 beta 2 版本开始工作。例外还支持 RoadRunner 的常驻方案,目前感觉比较满意这个,基于 PHP CLI 坑少。 下一步需要支持 php-pm 这个常驻方法,观察一哈。

Swoole Http server

php leevel http:server # php leevel http:server -d
php leevel http:reload
php leevel http:stop
php leevel http:status

Swoole Websocket server

hp leevel websocket:server # php leevel websocket:server -d
php leevel websocket:reload
php leevel websocket:stop
php leevel websocket:status

RoadRunner

RoadRunner 是一个开源的高性能 PHP 应用服务器、负载均衡器和流程管理器。它支持作为一个服务运行,能够在每个项目的基础上扩展其功能。

/data/server/roadrunner-1.3.5-darwin-amd64/rr serve -d -v # -d = debug
/data/server/roadrunner-1.3.5-darwin-amd64/rr http:reset
/data/server/roadrunner-1.3.5-darwin-amd64/rr http:workers -i

更多详情见

https://github.com/hunzhiwange/queryphp/blob/master/README-zh-CN.md

文档支持

基于单元测试即文档的理念,开发了一个专门基于单元测试加注解的方式来自动化用户文档。

cd /data/codes/queryphp
php leevel make:doc tests /data/codes/queryphp/vendor/hunzhiwange/framework/tests /data/codes/queryphp.com/docs/docs

根据目前的效果来说,非常不错,这样加速 QueryPHP 文档编写工作,beta.1 版本开始编写主要文档。

** @since 2018.06.06** @version 1.0** @api(* title="变量",* path="template/var",* description="变量是最基本的用法,这里模板引擎做了大量的工作支持更好。",* )*/
class CompilerVarTest extends TestCase
{use Compiler;/*** &#64;api(* title&#61;"最简单一个普通变量",* description&#61;"",* note&#61;"模板标签的 “{” 和 “$” 之间不能有任何的空格&#xff0c;否则标签无效。",* )*/public function testBaseUse(){$parser &#61; $this->createParser();// 普通变量$source &#61; <<<&#39;eot&#39;
{$name}
eot;$compiled &#61; <<<&#39;eot&#39;

eot;$this->assertSame($compiled, $parser->doCompile($source, null, true));}/*** &#64;api(* title&#61;"JS 风格变量",* description&#61;"",* note&#61;"注意&#xff1a;“{{“ 与内容之间可以有空格,也可以没有&#xff0c;结果一样。",* )*/public function testJsStyle(){$parser &#61; $this->createParser();// JS 风格变量$source &#61; <<<&#39;eot&#39;
{{ value }}
eot;$compiled &#61; <<<&#39;eot&#39;

eot;$this->assertSame($compiled, $parser->doCompile($source, null, true));}/*** &#64;api(* title&#61;"输出一个数组",* description&#61;"",* note&#61;"",* )*/public function testArraySupport(){$parser &#61; $this->createParser();// 数组支持$source &#61; <<<&#39;eot&#39;
我的梦想是写好”{$value[&#39;name&#39;]}“&#xff0c;我相信”{$value[&#39;description&#39;]}“。
eot;$compiled &#61; <<<&#39;eot&#39;
我的梦想是写好”“&#xff0c;我相信”“。
eot;$this->assertSame($compiled, $parser->doCompile($source, null, true));}...
}

开发计划

  • PHP 5 时代 - 代码功能堆砌阶段 2010.08.03 - 2014.10.11 &#xff08;原名 The DoYouHaoBaby PHP Framework &#xff09;
  • PHP 7 时代 - 基础功能重构完善 2016.11 - 2018.01
  • PHP 7 时代 - 百分之百单元测试覆盖&#xff0c;代码准确性和可维护性&#xff0c;即工程化阶段 2018.01 - 2019.03
  • PHP 7 时代 - 准生产级别 1.0 正式版&#xff0c;文档完善以及常用常驻方案支持完善 Swoole 4, RoadRunner, php-pm 以及自研扩展框架 Leevel 2019-03 - 2019.12
  • PHP 7 时代 - 面向生产级别的框架&#xff0c;1.1 LTS&#xff0c;2019.12 - 2020.06

感谢关注

2010-present Xiangmin Liu



推荐阅读
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • Spring框架的核心组件与架构解析 ... [详细]
  • Spring框架入门指南:专为新手打造的详细学习笔记
    Spring框架是Java Web开发中广泛应用的轻量级应用框架,以其卓越的功能和出色的性能赢得了广大开发者的青睐。本文为初学者提供了详尽的学习指南,涵盖基础概念、核心组件及实际应用案例,帮助新手快速掌握Spring框架的核心技术与实践技巧。 ... [详细]
  • 深入解析Struts、Spring与Hibernate三大框架的面试要点与技巧 ... [详细]
  • 如何撰写适应变化的高效代码:策略与实践
    编写高质量且适应变化的代码是每位程序员的追求。优质代码的关键在于其可维护性和可扩展性。本文将从面向对象编程的角度出发,探讨实现这一目标的具体策略与实践方法,帮助开发者提升代码效率和灵活性。 ... [详细]
  • 在Java分层设计模式中,典型的三层架构(3-tier application)将业务应用细分为表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。这种分层结构不仅有助于提高代码的可维护性和可扩展性,还能有效分离关注点,使各层职责更加明确。通过合理的设计和实现,三层架构能够显著提升系统的整体性能和稳定性。 ... [详细]
  • 本文推荐了六款高效的Java Web应用开发工具,并详细介绍了它们的实用功能。其中,分布式敏捷开发系统架构“zheng”项目,基于Spring、Spring MVC和MyBatis技术栈,提供了完整的分布式敏捷开发解决方案,支持快速构建高性能的企业级应用。此外,该工具还集成了多种中间件和服务,进一步提升了开发效率和系统的可维护性。 ... [详细]
  • REST API 时代落幕,GraphQL 持续引领未来
    尽管REST API已广泛使用多年,但在深入了解GraphQL及其解决的核心问题后,我深感其将引领未来的API设计趋势。GraphQL不仅提高了数据查询的效率,还增强了灵活性和性能,有望成为API开发的新标准。 ... [详细]
  • 秒建一个后台管理系统?用这5个开源免费的Java项目就够了
    秒建一个后台管理系统?用这5个开源免费的Java项目就够了 ... [详细]
  • 在探讨Hibernate框架的高级特性时,缓存机制和懒加载策略是提升数据操作效率的关键要素。缓存策略能够显著减少数据库访问次数,从而提高应用性能,特别是在处理频繁访问的数据时。Hibernate提供了多层次的缓存支持,包括一级缓存和二级缓存,以满足不同场景下的需求。懒加载策略则通过按需加载关联对象,进一步优化了资源利用和响应时间。本文将深入分析这些机制的实现原理及其最佳实践。 ... [详细]
  • 本文详细介绍了如何在Java Web服务器上部署音视频服务,并提供了完整的验证流程。以AnyChat为例,这是一款跨平台的音视频解决方案,广泛应用于需要实时音视频交互的项目中。通过具体的部署步骤和测试方法,确保了音视频服务的稳定性和可靠性。 ... [详细]
  • 本文作为探讨PHP依赖注入容器系列文章的开篇,将首先通过具体示例详细阐述依赖注入的基本概念及其重要性,为后续深入解析容器的实现奠定基础。 ... [详细]
  • Ceph API微服务实现RBD块设备的高效创建与安全删除
    本文旨在实现Ceph块存储中RBD块设备的高效创建与安全删除功能。开发环境为CentOS 7,使用 IntelliJ IDEA 进行开发。首先介绍了 librbd 的基本概念及其在 Ceph 中的作用,随后详细描述了项目 Gradle 配置的优化过程,确保了开发环境的稳定性和兼容性。通过这一系列步骤,我们成功实现了 RBD 块设备的快速创建与安全删除,提升了系统的整体性能和可靠性。 ... [详细]
  • 掌握PHP框架开发与应用的核心知识点:构建高效PHP框架所需的技术与能力综述
    掌握PHP框架开发与应用的核心知识点对于构建高效PHP框架至关重要。本文综述了开发PHP框架所需的关键技术和能力,包括但不限于对PHP语言的深入理解、设计模式的应用、数据库操作、安全性措施以及性能优化等方面。对于初学者而言,熟悉主流框架如Laravel、Symfony等的实际应用场景,有助于更好地理解和掌握自定义框架开发的精髓。 ... [详细]
  • 本文深入探讨了ASP.NET Web API与RESTful架构的设计与实现。ASP.NET Web API 是一个强大的框架,能够简化HTTP服务的开发,使其能够广泛支持各种客户端设备。通过详细分析其核心原理和最佳实践,本文为开发者提供了构建高效、可扩展且易于维护的Web服务的指导。此外,还讨论了如何利用RESTful原则优化API设计,确保系统的灵活性和互操作性。 ... [详细]
author-avatar
fadsfwebb
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有