基于 Swoole 的 PHP 协程开发框架 EasySwoole Distributed

Apache-2.0
PHP 查看源码»
跨平台
2019-06-14
幻之羽翼

ESD 是一个免费开源的,快速、简单的基于 Swoole4.3 最新特性的 PHP 协程开发框架。由 SwooleDistributed 与 EasySwoole 作者打造。ESD 可用于构建高性能的 Web 系统、API、中间件、基础服务等等。

功能特性预览:

  • 协程框架:基于 Swoole 4.3的原生协程框架,自带常驻内存以及 Swoole 其它功能的封装。

  • 多种混合协议通讯:HTTP 控制器与自定义路由 TCP、UDP、WEB_SOCKET 控制器

  • 组件化:组件分为核心组件和应用组件,所有应用组件都是非必须的,开发者可以自定义,按需使用。

  • 连接池:框架自带 Mysql/Redis/ampq 高效连接池,且实现所有连接断线重连。开发者不用关心连接,相应组件已经实现。

  • 切面编程:框架容器管理的所有对象,都可以使用 AOP。使用AOP 可以使用在不改变实例内部的情况下,对实例对象的行为进行控制。

  • 分布式与微服务:提供分布式与微服务的插件组织

  • 注解系统:框架提供大量可使用的注解,比如注解路由,注解事务,注解缓存,注解验证等。 框架均提供注解与非注解的使用方式。

  • Tracing 链路追踪:通过加载Tracing插件可以实现服务链路性能的监控,支持微服务

  • 灵活的注解功能

  • 全局的依赖注入容器

  • 基于 PSR-7 的 HTTP 消息实现

  • 事件管理器

  • 缓存

  • 协程、异步任务投递

  • 自定义用户进程

  • 协程和同步阻塞客户端无缝自动切换

  • 热更新自动 Reload

  • 强大的日志系统

组件化

ESD从设计之初就实现了组件化模式,达到模块解耦和代码复用的效果。

目前可用插件

Docker运行环境(由anythink提供)

➜ docker run -it --rm -p 8080:8080 -v $PWD:/data registry.cn-beijing.aliyuncs.com/anythink/esd:latest
 _____ ____  ____    ____              _   _
| ____/ ___||  _ \  |  _ \ _   _ _ __ | |_(_)_ __ ___   ___
|  _| \___ \| | | | | |_) | | | | '_ \| __| | '_ ` _ \ / _ \
| |___ ___) | |_| | |  _ <| |_| | | | | |_| | | | | | |  __/
|_____|____/|____/  |_| \_\\__,_|_| |_|\__|_|_| |_| |_|\___|
ESD framework Runtime Environment
version 1.5 author by anythink
root@f41132062911:/data# 

docker run -it --rm -p 8080:8080 -v $PWD:/data registry.cn-beijing.aliyuncs.com/anythink/esd:latest

请在 ESD 根目录运行容器,否则修改$PWD为代码根路径(windows需要用%cd%替换$PWD),如果修改了端口请把8080 修改为自己使用的端口. 镜像启动后的目录即挂载到主机的代码目录,注意 Mac 系统无法使用 inotify 热加载功能。 容器启动后按照安装步骤,运行框架。

性能

4核8G SSD盘 腾讯云高IO型I2服务器压测,框架压测包含路由

worker_num = 4

swoole ab压测输出hello 平均 5.9QPS万

ESD框架 ab压测输出hello 平均 3.6QPS万

SD框架 ab压测输出hello 平均 1.3QPS万

压测数据来自:A-Smile

的码云指数为
超过 的项目
加载中

评论(0)

暂无评论

暂无资讯

暂无问答

EasySwoole+ElasticSearch打造高性能小视频服务系统

打造大数据场景下的高并发、高性能的小视频搜索服务系统 下载地址: 百度云 EasySwoole+ElasticSearch打造高性能小视频服务系统 EasySwoole底层是基于swoole开发的常驻内存型的分布式PHP框架,...

2018/11/20 19:13
586
0
EasySwoole+ElasticSearch打造高性能小视频服务系统

地址下载、 EasySwoole+ElasticSearch打造高性能小视频服务系统 EasySwoole框架 重点介绍EasySwoole的核心知识点,方便大家 快速掌握EasySwoole框架 ab性能测试 详细介绍性能测试工具ab,让大...

2018/12/27 02:18
110
0
swoole上传文件大小限制

这两天用easyswoole框架来做上传文件功能。用nginx做反向代理,上传3m文件时nginx提示502错误。查询nginx的error错误日志,发现是sendfile() failed。认真思考了一下,应该是文件上传限制大小...

2018/12/09 12:02
126
0
easyswoole安装

1.安装centos6.5 2.安装lnmp1.5 3. 安装gcc4.8 wget http://people.centos.org/tru/devtools-2/devtools-2.repo mv devtools-2.repo /etc/yum.repos.d yum install devtoolset-2-gcc devtoo...

2018/12/27 10:42
27
0
EasySwoole+ElasticSearch打造高性能小视频服务系统

课程点击下载 EasySwoole+ElasticSearch打造高性能小视频服务系统 EasySwoole底层是基于swoole开发的常驻内存型的分布式PHP框架,专为API而生,是swoole专业型上层PHP框架,让开发者以最低的...

2018/11/06 13:42
49
0
EasySwoole+ElasticSearch打造高性能小视频服务系统

地址下载 EasySwoole+ElasticSearch打造高性能小视频服务系统 EasySwoole底层是基于swoole开发的常驻内存型的分布式PHP框架,专为API而生,是swoole专业型上层PHP框架,让开发者以最低的学习...

2018/11/12 18:45
71
0
EasySwoole+ElasticSearch打造高性能小视频服务系统

EasySwoole+ElasticSearch打造高性能小视频服务系统 EasySwoole底层是基于swoole开发的常驻内存型的分布式PHP框架,专为API而生,是swoole专业型上层PHP框架,让开发者以最低的学习成本和精力...

2018/12/01 23:03
0
0
EasySwoole+ElasticSearch打造高性能小视频服务系统

资料地址 点击下载 EasySwoole+ElasticSearch打造高性能小视频服务系统 EasySwoole底层是基于swoole开发的常驻内存型的分布式PHP框架,专为API而生,是swoole专业型上层PHP框架,让开发者以最...

2018/12/04 22:19
43
0
EasySwoole-Mysqli 扩展使用说明

mysqli 介绍 基于 EasySwoole-Mysqli 扩展开发,增加一些兼容thinkphp的使用方法。 安装教程 composer require anyhome/swoole-mysqli 新增配置项说明 数据库表前缀 'prefix' => 'db_', 是否严...

01/23 13:09
193
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部