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

项目名:swoolefy:基于swoole的API应用服务框架

swoolefy是一个基于swoole扩展实现的轻量级高性能的常驻内存型的API和Web应用服务框架。它高度封装了http,websocket,udp服务器,以及基于tcp实现可扩展的rpc服务,支持composer包方式安装部署项目。框架抽象Event事件处理类,支持同步异步调...

访问官网 →

【Github】项目名:swoolefy:基于swoole的API应用服务框架

项目简介

swoolefy是一个基于swoole扩展实现的轻量级高性能的常驻内存型的API和Web应用服务框架。它高度封装了http,websocket,udp服务器,以及基于tcp实现可扩展的rpc服务,支持composer包方式安装部署项目。基于实用,swoolefy抽象Event事件处理类,实现与底层的回调的解耦,支持同步|异步调用,内置view、log、session、mysql、redis、memcached、mongodb等常用组件等。这个框架适合学习swoole,底层屏蔽了swoole与传统php – fpm的一些差异,让大部分的phper轻松入手。

功能特性

  • 轻量级框架,实现路由与调度、MVC三层(可配置多层)。
  • 支持composer的PSR – 4规范和自定义注册命名空间。
  • 支持多协议,包括http,websocket,tcp,udp和基于tcp的rpc,可自定义协议数据格式。
  • 抽象Event事件处理与底层事件监听解耦,屏蔽不同协议间应用差异,代码共用。
  • 实现超全局变量、IOC、静态延迟绑定等多种功能。
  • 具备简单易用的异步任务管理、定时器管理等多种管理功能。
  • 有灵活多层的配置,配置参数可实现底层复杂功能。
  • 应用对象深度复制,减少IO消耗。
  • 封装常用组件,其他组件可按约定封装。
  • 实现异步半阻塞与全异步非阻塞,EventHander与底层解耦。
  • 基于inotify实现自动监控swoole服务文件变动,worker自动reload及智能邮件通知。
  • 命令行形式高度封装启动|停止控制脚本。

开发部署

如果是自己安装的php环境(需在linux环境下),建议先创建一个伪用户www,然后在某一web目录利用composer方式安装部署项目。也可使用bingcool/php2swoole容器启动php开发环境,包括启动容器、进入容器后利用composer方式安装部署项目等操作。

监控程序

启动文件自动监控程序可监控php文件变动使swoole的worker自动重启,但在容器环境中由于挂载问题此监控程序无效,每次修改代码需重启http服务。不同服务(如http、websocket、rpc、udp等)有各自的启动、停止操作及默认端口,可在相应配置文件中更改端口等设置。

项目总结

swoolefy是一个功能丰富的基于swoole的API应用服务框架,在多协议支持、事件处理、组件封装、开发部署等多方面有独特的设计和功能。欢迎大家在评论区留言,分享对这个项目的看法或者使用过程中遇到的问题。

项目地址

GitHub链接直达